4

Я использую частную настройку группы пользователей, то есть домашний каталог пользователя foo принадлежит foo:foo , а не foo:users .

Чтобы это работало, мне нужно установить umask на 002 глобально.

После быстрого grep -RIi umask /etc/* и т.д. /*, казалось , на мгновение , что изменение записи UMASK в /etc/login.defs должен сделать трюк. Это тоже так - но только для консольных входов.

Если я войду на свой рабочий стол и открою там терминал, я все равно смогу увидеть umask 022 по умолчанию. То же самое касается файлов, созданных из приложений, запущенных через меню. По-видимому, диспетчер отображения (или любой другой компонент, отвечающий за компонент X11) делает некоторые настройки, отличные от настроек входа в консоль, и, черт побери, могу ли я сказать, какой это. (Я попытался изменить настройку в /etc/init.d/rc , и нет, это не помогло.)

Как / где я могу установить umask глобально (и для всех пользователей), чтобы окружение рабочего стола X11 также получало памятку?

(Система Linux Mint / Ubuntu, на случай, если что-то изменится ...)

1 ответ1

5

Вы можете установить umask глобально, введя утверждение

 umask 022

(например) в /etc /profile или /etc /bashrc.

Кроме того, поскольку вы работаете в системе Debian, вы можете использовать PAM. Чтобы включить это, сначала отредактируйте файл /etc/pam.d/common-session и добавьте строку:

 session optional pam_umask.so

затем отредактируйте файл /etc/login.defs и добавьте (или измените, что угодно) строку

 UMASK           002

Эти параметры вступают в силу после следующей перезагрузки, но будьте осторожны: оба метода приводят к конфигурации, которая всегда может быть заменена по выбору пользователя, например, в их ~/.bashrc.

Если вы действительно хотите сделать невозможным изменение umask, вы можете использовать конфигурацию диска в /etc /fstab. Как вы знаете, доступные параметры и синтаксис зависят от типа файловой системы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .