Я хочу войти в систему как другой пользователь в Gnome и не запускать только одну программу, но я не знаю пароль пользователя, я не хочу его знать и не хочу его менять, но я sudoer.
Есть ли способ сделать это?
Лучшее, что я мог подумать, это изменить пароль пользователя, но сохранить старый теневой файл. Но это кажется мне очень некрасивым и неудобным. Я также не уверен, стоит ли менять файл теней на работающем компьютере (но я полагаю, что в противном случае vipw -s
будет бесполезным).
Есть ли альтернатива?
Причина, по которой я хочу этого достичь, заключается в том, что я хотел бы что-то тестировать или настраивать программы для пользователей, которые не могут делать это самостоятельно. Да, конечно, я мог бы делать все в оболочке как root или как конкретный пользователь (и, собственно, это то, чем я занимаюсь до сих пор), но есть вещи, которые вы определенно не хотите делать в оболочке. Кто-нибудь из вас когда-нибудь пытался изменить положение панели гномов на оболочке вместо того, чтобы просто выбирать "низ"? :)
Я не думаю, что gksudo, sudo или su помогут мне. Я хочу провести всю сессию гнома.
Я не уверен - ли это лучший способ, но здесь является опцией, я только что протестировал, и продолжает работать аккуратный, хотя мне не настраивали дополнительного пользователя, таким образом, я не полностью уверен:
sudo Xorg :1
(в другом терминале)
sudo -i
su - username
x-session-manager --display :1
Затем Ctrl-Alt-F8 и Вы должны найти новую сессию. Это не могло бы быть точно то же как входящий в систему обычно, но я вполне уверен, это позволит Вам перестроить панели так, как Вам нравится.
Используйте Ctrl-Alt-F7 для возврата к исходной сессии. Если те F-ключи не работают на Вас, судите других.
СТАРШИЙ ШКОЛЬНЫЙ МЕТОД
Создать пользователя-призрака с тем же UID:
target: user1 (изменить в соответствии)
cat /etc/passwd | grep user1
user1:x:1001:1001:User1 Q Lastname:/home/user1:/bin/bash
добавить своего призрака
sudo useradd -d /home/user1 -f -1 -u 1001 -g 1001 -M -o ghost1 -s /bin/bash -p MySecret
cat /etc/passwd | grep user1
user1:x:1001:1001:User1 Q Lastname:/home/user1:/bin/bash
ghost1:x:1001:1001::/home/user1:/bin/bash
su ghost1
ПРИМЕЧАНИЕ: Вы можете удалить с помощью 'sudo userdel ghost1' , но НЕ при входе в учетную запись. Отказоустойчивый метод: удалить новую строку в файле / etc / passwd.
Стать пользователем root
sudo -i
Как root, sudo для другого пользователя
su other_user
Если Вы хотите запускать приложения X, взгляните на xhost