К основному контенту

Две команды, чтобы Xorg-приложения работали под sudo

Пришла новая Fedora 30! А с ней некоторые графические приложения перестали запускаться под sudo. Где-то поломался GEdit, где-то не запускается установщик VMWare Remote Console (безобразный продукт), где-то фейлится рандомная фигня, которая раньше работала на 29й федоре. Почему они работали ранее вообще — интересный вопрос, ведь по-умолчанию приложениям из-под sudo, работающим на X11/Xorg, запрещён доступ к вашему графическому рабочему столу. Более технично — у root-юзера нет прав на доступ к Xorg серверу. С Wayland как-то попроще, но на вейланде сейчас один только GNOME-shell и его файловый менеджер Nautilus.

Ошибки выводятся разные, но они все говорят об интерфейсе:

# Это вылезло из установщика VMWare Remote Console
User interface initialization failed.

# Вообще, у меня большая часть приложений на основе electron
# или nw.js и их в принципе нельзя запускать под рутом,
# поэтому вот вам ошибка, возвращаемая Xeyes 👀
No protocol specified
Error: Can't open display: :0

Варнинг: прежде чем что-то выполнять под sudo, десять раз подумайте, что может натворить прога, удалив системные файлы и записав конфиги в не те директории, и что могут наделать хацкеры с вашим декстопом, пока пьёте чай. Потом всё равно выполните под судо.

Решается проблема элементарно — на время отключается контроль доступа к Xorg. Делается через команду xhost.

xhost +
# здесь идёт, сопсна, ваша команда, использующая Xorg
xhost -

Та-да-а-а!

Комментарии

Популярные сообщения из этого блога

Что делать, если Error mounting: can't read superblock

Вот такая радость меня встретила сегодня утром — дополнительный жёсткий диск в ноутбуке перестал работать. Часть прог не работает, другие не могут найти рабочие проекты. При монтировании диска через тот же Наутилус пишет: Error mounting system-managed device dev/sdb3: can't read superblock on /dev/sdb3 (udisks-error-quark, 0)

Установить Midnight Commander на Fedora, CentOS и RHEL — файловый менеджер в терминале

Волей-неволей в жизни девопса иногда приходится работать без графического интерфейса. Или же нужно сделать что-то в своей файловой системе без иксов. Midninght Commander — это файловый менеджер с терминальным интерфейсом, который схож визуально с Total Commander с его разделением на два окна. Миднайт командер также поддерживает управлению мышью, да и в общем идеален для тех, кто привык к графическим интерфейсам и боится vim -а (как я). Если ввести dnf search midnight commander , то ничего не найдётся. Всё потому, что в пакетных менеджерах называется он просто mc , а в описании полного названия нет: Устанавливается он довольно просто. Для Fedora: sudo dnf install -y mc Для RHEL/CentOS: sudo yum install -y mc И всё, можно пользоваться: mc

Как быстро поставить Discord на Fedora

Итак: Скачиваем вот этот файл . Запускаем его через Наутилус (стандартный просмотрщик файлов) — откроется стандартный установщик приложений. Устанавливаем, запускаем. Всё :) Используется Flatpak — современный стандарт манифестов и пакетов ПО, альтернатива dnf и apt-get для всех платформ. В Федоре встроенная поддержка флэтпэка и всё работает из коробки.