Запуск графічних додатків із sudo
часом може призвести до подібних проблем.
Пояснення
sudo
запускає програму з привілеями суперпользователя (наприклад, запускається як root), але програма як і раніше бачить поточний домашній каталог як ваш домашній каталог.
Отже, коли програмне забезпечення записує свої конфігураційні файли, воно в кінцевому підсумку створює файли у вашій домашній директорії, які належать користувачу root . У вас з'являються файли, які ви самі не можете редагувати чи видаляти, а програмне забезпечення працює, оскільки ви також не зможете його змінювати, що призводить до появи нових проблем.
Яке найкраще рішення?
Існує альтернатива: gksudo
.
Цей варіант sudo створить змінні середовища, наприклад домашній каталог, таким чином, щоб зробити графічні програми як root набагато безпечнішими і не заплутати програми у створенні файлів, що належать root, у вашому домашньому каталозі.
Чому це впливає на графічні програми?
Це не впливає лише на графічні програми, а також не на всі графічні програми. Це впливає на програми, які зберігають конфігурацію в домашньому каталозі поточного користувача. Це просто частіше зустрічається серед графічних додатків.
Іноді додатки зможуть виявити, чи вони запущені з sudo, і відповідно скорегувати свою поведінку, але це не є звичайним для графічних додатків, які, як правило, не запускаються із sudo.
Як виправити проблему?
Вам потрібно буде знайти файли та каталоги, що належать корінню, у вашому домашньому каталозі та видалити їх. Краще видалити їх, ніж змінити право власності, на мою думку, так як вони призначені не для вашого користувача, а для кореневого користувача, тому, якщо просто змінити право власності, можуть виникнути несподівані ефекти. Ви можете, звичайно, створити резервну копію, якщо згодом вирішите, що в них є щось, що вам потрібно.
Щоб знайти root-файли у вашому домашньому каталозі:
find ~ -user root
Якщо у вас все ще виникають проблеми з деякими програмами (запустіть як ваш користувач), спробуйте перезавантажити, щоб очистити /tmp
і все, що все ще працює. Інколи деякі програми можуть пошкодити існуючі конфігураційні файли, і вам потрібно видалити всю їх конфігурацію з домашнього каталогу, але, сподіваємось, для багатьох це не буде.
sudo
з графічними програмами.