В спецификации базового каталога XDG, что делать, если $HOME не установлен или пуст

Предварительная версия Skype вышла. Демонстрация экрана и видеосвязь работают отлично. Ссылка на пакет Skype.

0
13.12.2019, 01:07
1 ответ

Переменная среды HOMEустанавливается всеми формами входа пользователя, интерактивными и -неинтерактивными, в соответствии с Единой спецификацией Unix . Он также часто устанавливается для -пользовательских служб, хотя SUS не требует этого, поскольку такие службы выполняются вне сеансов входа в систему, а SUS указывает только требование для входа пользователя в систему.. Он почти всегда не установлен для общесистемных -служебных процессов.

Спецификация базового каталога XDG ничего не говорит о том, что делать, когда переменная среды HOMEотсутствует. Так что на самом деле то, что делать, зависит от мнения и от того, что имеет смысл для конкретного инструмента.

Один может делать то, что делают некоторые программы при отсутствии HOMEпеременной среды, и вернуться к поиску поля домашнего каталога в записи для эффективного UID текущего процесса в базе данных системной учетной записи.. (Некоторые инструменты из моего набора инструментов nosh делают это, в том числе те, которые пытаются найти что-то в $HOME/.config/; как и программы в ответе, указанные в дальнейшем чтении.)

Но в равной степени можно сделать то, что делает команда cd, и просто потерпеть неудачу с сообщением об ошибке.

Или можно сказать, что в такой ситуации только системные -общие каталоги считываются и обрабатываются для соответствующих файлов для программы.

Однако по умолчанию не следует записывать в системные каталоги. Существует разница между на -пользовательский материал и системный -широкий материал.

Дополнительная литература

2
28.01.2020, 02:38

Теги

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