o7412369815963А как вы думаете - почему разработчики DE так не сделали? Думаю что не просто так. Я бы, как админ, такое пользователям разрешать не стал.
потому что можно все четко настроить, кому что можно, кому нельзя. разработчики все продумали.
и нет аргументов за то что он не безопасен.
CryptSpiritМожно сделать в лоб. Разбить апплет на два физических приложения:
дело в том что это изначально задумывался как апплет (то есть редактировать на скорую руку так сказать) ну а где вы видели апплеты которые пароль запрашивают при старте. Или есть способ при редактировании запросить а апплет пушай грузиться с ДЕ. Можно такое замутить. Если да то как?
Alex2ndrразработчики как раз не из под рута аплеты запускают
А как вы думаете - почему разработчики DE так не сделали? Думаю что не просто так.
init(1)-+-clock-applet(1906,user)
|-dbus-daemon(1768,user)
|-dbus-launch(1340,gdm)
|-dbus-launch(1767,user)
|-dropbox(1812,user)-+-{dropbox}(1880)
|-evolution-data-(2089,user)-+-{evolution-data}(2090)
|-evolution-excha(2092,user)---{evolution-exch}(2094)
|-gconfd-2(1771,user)
|-gnome-keyring-d(1712,user)-+-{gnome-keyring-}(1713)
|-gnome-keyring-d(1938,user)
|-gnome-screensav(1975,user)
|-gnome-settings-(1776,user)
|-gnome-terminal(2054,user)-+-bash(2497)
|-gvfs-afc-volume(1868,user)---{gvfs-afc-volum}(1871)
|-gvfs-fuse-daemo(1783,user)-+-{gvfs-fuse-daem}(1784)
|-gvfs-gdu-volume(1837,user)
|-gvfs-gphoto2-vo(1866,user)
|-gvfsd(1778,user)
|-gvfsd-burn(1934,user)
|-gvfsd-metadata(1931,user)
|-gvfsd-trash(1820,user)
|-indicator-apple(1904,user)
|-indicator-apple(1910,user)
|-indicator-appli(1948,user)
|-indicator-me-se(1936,user)
|-indicator-messa(1946,user)
|-indicator-sessi(1932,user)
|-indicator-sound(1944,user)
|-netspeed_applet(1909,user)
|-notification-ar(1908,user)
Alex2ndrКак такое можно было подумать. Разрешение нужно давать программе, а не пользователю.
Я бы, как админ, такое пользователям разрешать не стал.
o7412369815963Все верно. Разработчики используют примерно такой же прием, какой я описал постом выше.
разработчики как раз не из под рута аплеты запускают
o7412369815963Ээээ…..???? Мы говорим о Linux? Как можно дать программе разрешение делать что-то? Приведите пример. Насколько я понимаю вся система прав в unix подобных системах строится на пользователях.
Как такое можно было подумать. Разрешение нужно давать программе, а не пользователю.
Ээээ…..???? Мы говорим о Linux? Как можно дать программе разрешение делать что-то? Приведите пример.Можно мне ?
$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | ./python
Wow! I am root
$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | /usr/bin/python
Wow! I am ed
Код:
$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | ./python
Wow! I am root
$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | /usr/bin/python
Wow! I am ed
EdИ какое это имеет отношение к моему вопросу? Кроме того я ваш пример не могу воспроизвести - у меня нет ./python . Я даже не понимаю как это воспроизвести. Разве что первый от рута запустить.Ээээ…..???? Мы говорим о Linux? Как можно дать программе разрешение делать что-то? Приведите пример.Можно мне ?$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | ./python
Wow! I am root
$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | /usr/bin/python
Wow! I am ed
Alex2ndr
Как можно дать программе разрешение делать что-то? Приведите пример.
Alex2ndrСамое прямое. Я дал программе ./python разрешение делать что угодно и привел пример. Вы вроде про это спрашивали?
И какое это имеет отношение к моему вопросу?
alex@kubu-book:~$ sudo cp /usr/bin/python2.6 ./python
alex@kubu-book:~$ ll ./python
-rwxr-xr-x 1 root root 2,2M 2010-08-01 23:26 ./python
alex@kubu-book:~$ sudo chmod u+s ./python
alex@kubu-book:~$ ll ./python
-rwsr-xr-x 1 root root 2,2M 2010-08-01 23:26 ./python
alex@kubu-book:~$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | ./python
Wow! I am root
alex@kubu-book:~$ echo 'import os,pwd;print "Wow! I am %s"%pwd.getpwuid(os.geteuid())[0]' | python
Wow! I am alex
alex@kubu-book:~$