Чтобы получить доступ к буферу обмена X11, необходимо, чтобы для переменной DISPLAY
было установлено правильное значение, и были доступны magi c cook ie (то есть токен аутентификации).
Обычно, если вы используете sudo
или su
для запуска как root, переменные среды очищаются по соображениям безопасности, поэтому вы, вероятно, пропускаете переменную среды DISPLAY
. Вы можете либо явно установить переменную окружения DISPLAY
при смене оболочек (например, export DISPLAY=:0.0
), либо использовать некоторый сценарий для выгрузки и перезагрузки определенной переменной среды в файл и из файла, либо вы можете пропустить флаг -l
для su
или используйте флаг -E
для sudo
.
Обратите внимание, что эти последние два параметра плохие для безопасности, но в целом не стоит разрешать root доступ к тому же сеансу X11, что и непривилегированный пользователь, так что то, что вы хотите сделать, не очень хорошо для безопасности в первую очередь. Если вы единственный пользователь в системе, это может быть нормально, в зависимости от вашего уровня комфорта и модели угроз.