Как сделать цвет рабочего стола по xfconf-запросу в ubuntu18.04, пожалуйста?

Вы можете использовать переадресацию агента: не забудьте включить ForwardAgent yes в конфигурацию на стороне клиента ( ~ / .ssh / config ) или используйте параметр командной строки -A . (Эта функция может быть отключена на стороне сервера ( AllowAgentForwarding в sshd_config ), но это полезно только для ограниченных учетных записей, которые не могут запускать произвольные команды оболочки.) Таким образом, все ключи с вашего локального компьютера доступны в удаленном сеансе. Обратите внимание, что включение пересылки агента на стороне клиента имеет последствия для безопасности: это дает администратору удаленного компьютера доступ к вашим ключам (например, если вы находитесь в A и имеете ключ для B и ключ для C, а также разрешаете пересылку агента. в вашем подключении к B, это позволяет B получить доступ к вашим ключам и, следовательно, войти в C).

Если вы хотите, чтобы агент из вашего X-сеанса на офисном компьютере был доступен в сеансах SSH из дома, вам необходимо установить переменную среды SSH_AUTH_SOCK так, чтобы она указывала на тот же файл, что и в X сессия. Это достаточно просто сделать вручную:

export SSH_AUTH_SOCK=/tmp/ssh-XXXXXXXXXXXX/agent.12345

где XXXXXXXXXXXX - случайная строка, а 12345 - PID процесса агента. Вы можете легко автоматизировать это, если есть один работающий агент ( find / tmp -maxdepth 1 -user $ USER -name 'ssh - *' ), но определить, какой агент вам нужен, если их несколько, сложнее .

Вы можете извлечь значение SSH_AUTH_SOCK из запущенного процесса.Например, в Linux, если вашим оконным менеджером является Metacity (оконный менеджер Gnome по умолчанию):

env=$(grep -z '^SSH_AUTH_SOCK=' /proc/$(pidof -s metacity)/environ')
if [ -n "$env" ]; then export "$env"; fi

В качестве альтернативы вы можете настроить офисную машину на использование одного агента SSH. Если агент запускается автоматически при входе в систему, то в большинстве дистрибутивов он не запускается, если в среде уже есть переменная с именем SSH_AUTH_SOCK . Поэтому добавьте определение SSH_AUTH_SOCK в свой ~ / .profile или ~ / .pam_environment и запустите вручную ssh-agent , если он еще не запущен в .profile :

export SSH_AUTH_SOCK=~/.ssh/$HOSTNAME.agent
if [ -z "$(pgrep -U "$USER" ssh-agent)" ]; then
  ssh-agent >/dev/null
fi
0
22.02.2019, 15:08
2 ответа

Работает замена типа int на uint.

1
12.04.2020, 14:13

С:

xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/workspace0/color1

Вы получаете:

Value is an array with 4 items:

7936
16128
28416
65535

Таким образом, вы должны установить массив с -опцией
Для каждого элемента необходимо указать сначала тип, а затем значение.
Вы можете попробовать так:

xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/workspace0/color1 -a -t int -s 19018 -t int -s 37008 -t int -s 55769 -t int -s 65535
1
28.01.2020, 03:59

Теги

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