Походит на неисправное оборудование мне. Если это - только одна машина на LAN, это могло бы иметь плохую плату Ethernet; если бы это - все машины на LAN, я проверил бы концентратор или маршрутизатор.
Inkscape, будучи приложением GTK, использует Бойкую функцию g_get_home_dir для нахождения корневого каталога пользователя. Как зарегистрировано в ту ссылку, g_get_home_dir
не консультируется $HOME
, а скорее /etc/passwd
. Необходимо было бы исправить Inkscape для проверки $HOME
сначала (как показано в той ссылке).
Да, корневой каталог текущего пользователя должен быть что переменная среды HOME
указывает. Существует, конечно, глобальный параметр настройки системы: запись в /etc/passwd
, или в более общем плане домашнее поле в пользовательской базе данных. Приложения, как предполагается, используют ту установку только для поиска пользователя кроме текущего пользователя, или если существуют приложения защиты (например, setuid программа). Иначе $HOME
должен иметь приоритет. Если это не делает, это - ошибка в приложении.
ответ cjm показывает, что Inkscape и другие приложения Gnome являются багги в этом отношении.
/etc/passwd
определить местоположение корневого каталога его владельца (кроме того, исключений Вы перечислили)? Мне кажется, что Вы правы, но трудно думать обо всех возможных ситуациях, таким образом, источник с большей информацией или "официальные" рекомендации от чего-то как Open Group или Проект GNU, мог бы улучшить Ваш ответ.
– Eliah Kagan
02.09.2012, 23:31
HOME
переменная, как гарантируют, будет установлена во время входа в систему (но пользователь может переопределить ее).
– Gilles 'SO- stop being evil'
03.09.2012, 00:22
/tmp
или что-то. – Josh 13.06.2011, 23:57g_get_home_dir
использование nsswitch вместо простой проверки/etc/passwd
. (То же самое на персональных компьютерах, все же.) – user1686 14.06.2011, 00:53