Разница в правах доступа к файлам при создании через виртуальный терминал [tty [1-6]] против эмулятора терминала (X11 Gui) [gnome-терминал]

225
Yash Bhardwaj

Ниже приводится вывод эмулятора терминала (gnome-терминал в сеансе GUI):

yash@BlackMachine:~/Desktop/yash/testenv$ ls -la && whoami && touch a && ls -la  total 8 drwxrwxr-x 2 yash yash 4096 Oct 2 12:01 . drwxrw---- 7 yash yash 4096 Oct 2 10:48 .. yash total 8 drwxrwxr-x 2 yash yash 4096 Oct 2 12:02 . drwxrw---- 7 yash yash 4096 Oct 2 10:48 .. -rw-r--r-- 1 yash yash 0 Oct 2 12:02 a 

Пожалуйста, обратите внимание на разрешения файла

когда ту же команду он использовал на виртуальном терминале (tty [1-6])

yash@BlackMachine:~/Desktop/yash/testenv$ ls -la && whoami && touch b && ls -la  total 8 drwxrwxr-x 2 yash yash 4096 Oct 2 12:07 . drwxrw---- 7 yash yash 4096 Oct 2 10:48 .. -rw-r--r-- 1 yash yash 0 Oct 2 12:02 a yash total 8 drwxrwxr-x 2 yash yash 4096 Oct 2 12:07 . drwxrw---- 7 yash yash 4096 Oct 2 10:48 .. -rw-r--r-- 1 yash yash 0 Oct 2 12:02 a -rw-rw-r-- 1 yash yash 0 Oct 2 12:07 b 

Файл b также получает разрешение на запись для групп пользователей.

Приведенный выше вывод не скопирован из tty [1-6], но я гарантирую, что он такой же, как я показал.

Почему это происходит?

Использование Ubuntu 17.04

0
Именно «umask» процесса определяет разрешения по умолчанию. Когда вы входите в tty [1-6], это, вероятно, getty или PAM или что-то в этом роде, или сценарий запуска оболочки (глобальный или для пользователя), устанавливающий umask. Когда вы входите в систему графически, это какой-то компонент графической системы, скорее всего, `systemd --user`. См. Https://bugzilla.gnome.org/show_bug.cgi?id=780622 для соответствующего обсуждения. egmont 6 лет назад 0
egmont: спасибо за ссылку на bugzila. В ответ на ваш ответ оба типа терминалов имеют umask, но разные umask для пользователя yash vs root. root имеет одинаковые маски в обоих типах терминалов. Это проблема с gnome-Terminal и не сохраняется в xterm или uterm. Yash Bhardwaj 6 лет назад 0
Как было ясно из этого сообщения об ошибке, сам gnome-терминал не вмешивается в ваш umask. Однако он может быть запущен с помощью других средств (через dbus или systemd), чем ваш xterm. К сожалению, я не знаком с этими новыми методами запуска приложений на dbus и systemd. egmont 6 лет назад 0

0 ответов на вопрос

Похожие вопросы