Почему мой umask продолжает сбрасывать к 000?

Когда я вхожу в систему снова, мой umask 002. По крайней мере некоторое время. Затем в какой-то момент, и я не уверен, когда, это возвращается к 000. Это очень неудобно, и я теперь постоянно живу в страхе перед отбрасыванием файлов и папок со странными полномочиями через мой корневой каталог.

Возвращение к 000 может произойти после минут использования, или после дней. Спустя несколько недель после того, как я сначала установил человечность, это произошло довольно много, затем это остыло, и только за последние несколько дней эта проблема напомнила о своем существовании снова.

Я могу задержать его к 002 с $ umask 002 но это только работает на текущую оболочку (как ожидалось).

Еще некоторая информация:

  • tty в ctrl-alt-f2 имеет umask 002 даже когда мой вход в систему f7 в 000
  • /etc/profile говорит, что umask теперь обрабатывается pam_umask
  • /etc/login.defs имеет UMASK 022 и USERGROUPS_ENAB yes

Я запускаю Ubuntu 13.10 с XMonad и (oh-my-) zsh.

В случае, если это полезно, вот мой /etc/fstab

# <file system> <mount point>   <type>  <options>       <dump>  <pass>                                    
# / was on /dev/sdb8 during installation                                                                  
UUID=96f989e0-ee94-4bff-9663-3fa479a83ad4 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sdb1 during installation                                                          
UUID=7682-B8AD  /boot/efi       vfat    defaults        0       1
# swap was on /dev/sdb7 during installation                                                               
UUID=0d7d57af-9a31-481e-9da4-1032c94f57e9 none            swap    sw              0       0

Вот сокращенная версия моего crontab от crontab -l

* * * * * cd /home/miles/code/Checkin/ && ./node_modules/.bin/coffee ./client.coffee -n attercop -h secret1.com -p 8888
* * * * * cd /home/miles/code/Checkin/ && ./node_modules/.bin/coffee ./client.coffee -n attercop -h secret2.com -p 8888

client.coffee просто сценарий, который отправляет запрос HTTP.

И мой корень crontab от sudo crontab -l отчеты no crontab for root

5
задан 19 March 2014 в 06:00

1 ответ

Проблема для меня была вызвана Сублимированным текстом 3 сменных терминала вызываемого абонента, которые используются для запуска терминалов из сублимированных файлов. Когда Терминал запустил первое и единственное окно терминала гнома, затем это наследовало umask 000 от сублимата.

В надеждах, что этот ответ может быть полезен для тех, у кого нет той же проблемы как я, я повторю некоторые предложения для того, как приняться за решение этой проблемы, собранной из комментариев выше:

  • Просмотрите свои емкостно-резистивные файлы (.bashrc, .zshrc) видеть, ошибочны ли там umask вызовы.
  • При использовании удара попробовать bash -x -l -i -c 'exit' 2>&1 | grep umask найти вызов к umask из Ваших емкостно-резистивных файлов.
  • При использовании zsh попробовать zsh -x -l -i -c 'exit' 2>&1 | grep umask найти вызовы к umask из Ваших емкостно-резистивных файлов.
  • Проверьте, устанавливаете ли Вы umask значение при монтировании $HOME. Заглянуть /etc/fstab
  • Проверьте, существует ли что-нибудь странное выполнение в кроне, который мог бы изменить Ваш umask. crontab -l и sudo crontab -l.
  • Возможно, попытайтесь использовать audit найти источник таинственных изменений umask. sudo auditctl -A auditctl exit,always -S umask и загляните /var/log/kern.log
2
ответ дан 19 March 2014 в 06:00

Другие вопросы по тегам:

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