...
П.П Това kdesudo не взима ли информация от файла на sudo кадето са аднати потребители които имат sudo права и аз незнам вие кажете.
Има ли нещо неразбираемо от това, което
dejuren и
neter са написали по-горе за kdesudo, че трябва да се повтаря въпроса от началото на темата? Ако е необходимо, може да се напише още веднъж.
В Ubuntu/Kubuntu/... root акаунтът е заключен (не можеш да се логнеш с него). Затова, на първия потребител, който се създава при инсталирането на системата, се задават права за изпълнение на администраторски задачи с използване на sudo. Следващите потербители нямат това право.
Както пише в документацията и както е споменато по-горе, sudo/gksudo/kdesudo питат за *
твоята* парола (за паролата на акаунта, с който си се вписал в системата). Вторият ти акаунт няма право да използва sudo и с него не можеш да изпълняваш администраторски задачи (няма смисъл да пишеш неговата парола, а още по-малко паролата на първия акаунт). Мисля, че нещата дотук са ти ясни и няма какво повече да се обяснява.
Какво можеш да направиш, ако използваш втория акаунт и ти се налага да изпълниш задача с администраторски права?
Първият вариант е да направиш това, което е казал
dejuren - използваш "Switch user" (Menu-> Leave-> Session) и в новата сесия влизаш с потребителя, който има право да използва sudo.
Вторият вариант е да превключиш към другия потребител в терминала, като използваш "
su - <username>".
Сам си написал, че използваш втория вариант, когато изпълняваш команди за инсталиране. Обаче, ако опиташ да пуснеш графично приложение, ще получиш грешка:
GeSHi (Bash):
kubuntu1@kubuntu:~$ su -l kubuntu
Password:
kubuntu@kubuntu:~$ kdesudo dolphin
No protocol specified
No protocol specified
kdesudo: cannot connect to X server :0
Причината, според мен, е в това, че твоят user не фигурира в access control list-а на графичния сървър и няма право да се свързва с него. Ако изключиш действието на този списък, преди да превключиш към първия потребител, тогава можеш да пуснеш графично проложение (включително с администраторски права). След като си свършиш работата, включваш отново access control-а с "
xhost -":
GeSHi (Bash):
kubuntu1@kubuntu:~$ xhost +
access control disabled, clients can connect from any host
kubuntu1@kubuntu:~$ su -l kubuntu
Password:
kubuntu@kubuntu:~$ kdesudo dolphin
kdesudo(10887) KDESu::KDESuPrivate::KCookie::getXCookie: No X authentication info set for display ":0"
...
kubuntu@kubuntu:~$ exit
logout
kubuntu1@kubuntu:~$ xhost -
access control enabled, only authorized clients can connect
По същия начин, вместо dolphin, можеш да пуснеш "systemsettings" или с kcmshell4 направо да заредиш необходимия ти модул, изискващ администраторски права - "
kdesudo kcmshell4 userconfig".
Ако се налага да изпълняваш повече от една-две администраторски задачи, по-добре е да използваш първия вариант.