What is the difference between gksudo and gksu? Az imént, egy fórumbejegyzésben leírtak kapcsán indított keresésre, erre az oldalra irányított a nagy testvér: http://askubuntu.com/questions/21033/what-is-the-difference-between-gksudo-and-gksu Szerény linuxos ismereteim tárháza azzal kezdődik, hogy grafikus programot gksu-val indítunk. Azzal is sokszor találkoztam a fórumon, hogy a gksudo-t is helytelenítették, mondván, a gksu a helyes alak. Na de miért létezik akkor a helytelen alak? És tényleg helytelen, vagy csak másra való? A belinkelt oldalon ilyen (helyes, vagy helytelen) megállapítások olvashatók: ... gksudo is symlinked to gksu. But this doesn't mean they do the same things ...gksu is a frontend to su and gksudo is a frontend to sudo. In Ubuntu (!), there is no difference. Furthermore, on the difference between sudo and gksudo: A 13 számú hozzászólást részletesebben is leírom. ...I had been using gksu, but since then I have made sure always to use gksudo. To summarise, try this. Create three files in some folder: touch abc touch abc.tmp touch abctmp Run the following six commands. The first five give the same (expected) result (i.e. just abc.tmp) whereas the sixth includes an extra file (abctmp) that it shouldn't. find . -regextype posix-egrep -regex '.*\.tmp' -print sudo find . -regextype posix-egrep -regex '.*\.tmp' -print gksudo -- find . -regextype posix-egrep -regex '.*\.tmp' -print gksudo --su-mode -- find . -regextype posix-egrep -regex '.*\.tmp' -print gksu --sudo-mode -- find . -regextype posix-egrep -regex '.*\.tmp' -print gksu -- find . -regextype posix-egrep -regex '.*\.tmp' -print Imagine the problems when you replace -print with -delete in the find command (which is exactly what happened to me, causing some system files to be deleted). So, please use gksudo instead of gksu. Akkor most mi az igazság? Bár van egy olyan érzésem, hogy a grafikus programokat ettől még indíthatjuk gksu-val, de azért jó lenne biztosan tudni, hogy melyik mit csinál, mire való!

Régebben olvastam, hogy a gksu* -t nem fejlesztik már egy ideje. Ezért nem ajánlott egy rendszeren se használni. Valamimt hogy a mintesek sudo-val oldották meg ezt. Fejből nemtom, meg kéne megint keresni, de most a biztonságosnak tartott módszer valahogy úgy műxik, hogy regisztrálni kell megfelelően minden grafikus progit, amit sudo-val akarsz használni. Meg is vanhttp://www.webupd8.org/2015/03/how-to-run-gedit-and-nautilus-as-root.html?m=1

    bartasziliHát ez csodás! Most nem tudok erre részletesen reagálni, de arra kíváncsi vagyok, (anélkül, hogy bárkit is meg akarnék bántani, vagy szégyeníteni!), hogy hányan tudnak erről azok közül, akik rendszeresen tanácsokat adnak másoknak? Mert itt a fórumon betonba öntött alapkő az, hogy grafikus programot nem sudo-val, hanem gksu-val indítunk. Számtalanszor olvastam ezt a tanácsot. Nem keresgélem, hogy kik voltak, (már csak azért sem, mert lehet, hogy én is köztük lennék) de az Ubuntu dokumentáció is több helyen hivatkozik rá. http://sugo.ubuntu.hu/community-doc/hardy/main/basic/faq.html#rendszergazdai-jogosults-gok-ubuntuban http://sugo.ubuntu.hu/community-doc/jaunty/main/community/documentation.html Jó hogy ilyen jól terjed az információ az informatika világában. OFF Erről az jut eszembe, hogy amikor megvettem az első számítógépemet, egy C64-et, és olvasgatni kezdtem a tankönyveket, az elsőből megtudtam, hogy a lemezen lévő állományt kétféle módon lehet megnyitni: olvasásra, és írásra. A másodikból megtudtam, hogy egy harmadik módon is meg lehet nyitni: hozzáfűzésre (append). A harmadik könyvből kiderült, hogy egy negyedik módon is meg lehet nyitni. Ennek a nevét már nem tudom, de ezzel a móddal egy helytelenül lezárt állományt tudunk megnyitni.

    bartasziliGrafikus alkalmazás root jogokkal történő megnyitásához, Mint-en is a gksu-t (kdsu-t) használjuk. Az más kérdés, hogy Mint-en a fájlkezelőt a "pkexec" is megnyitja root jogokkal. (Ubuntun, úgy tudom nem.) De egyéb grafikus alkalmazást, a pkexec nem nyit meg.

      lala2"De egyéb grafikus alkalmazást, a pkexec nem nyit meg." És ha megcsinálod hozzá a policyt, akkor meg igen.

        a mesterAz oldalon lévő linkekben nem találtam megoldást, de rákerestem ! (pkexec with policy) Addig eljutottam, hogy ha így indítom a root jogosultságot igénylő grafikus alkalmazást.: pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xxx (x = program neve) Akkor megnyitja. (A jelszó beírása után.)

        A gksu alapvetően a su binárist használta, amihez a root jelszava kell. Mivel Ubuntun a sudo van használatban helyette, ezért a rootnak (alapból) nincs jelszava és (amíg nem adunk neki, addig) nem használható a su a jogosultsági szint emeléséhez (nem lehet hitelesíteni). A gksudo a sudo-t használja, és az tudja magát hitelesíteni vele a saját jelszavával aki bent van a sudo csoportban. Illetve ma már a gksu is alapértelmezetten a sudo használatára van beállítva (legalábbis Ubuntun), ami bármikor megváltoztatható a gksu-properties parancs által megnyitott kis ablak segítségével. Vagyis összefoglalva, alapértelmezett beállításokkal a gksu és a gksudo tökre ugyanazt csinálja, amint feltelepítetted (mivel ma már nem képezi az alaptelepítés részét).

          KendekNa igen, de itt is olvastam a fórumon valahol, meg az angolon is, hogy sudo geditezett a muki, aztán nem indult el a rendszer legközelebb. Erre jönnek emberek a gksudo paranccsal, ami ok. Később meg olvasom, hogy az már ciki, mert évek óta senki sem fejleszti. Viszont működik, nem? Szerintem úgy kellene a rendszert kiadni, hogy sudoval biztonságosan mennyen grafikusan is, nekem meg nem is kell tudni róla mi zajlik a háttérben.

            KendekNem tudom, hogy elolvastad-e a bevezetőt, vagy csak a hozzászólásokra reagáltál, de engem nem sikerült meggyőznöd. A belinkelt hozzászólás azzal zárul, hogy használjuk a gksudo-t a gksu helyett. Ezért is indítottam ezt a vitát. Te pedig azt írod "a gksu és a gksudo tökre ugyanazt csinálja." Nem tudom kipróbáltad-e a leírtakat. Én igen. Megvallom, a RegEx nem az, amit valaha is önnállóan használni fogok. Ennyit tudok róla: "Mindig babonás félelemmel néztem a RegEx mintáira" és még ezt is ollóztam! :) Létrehoztam egy mappát, és benne ezt a két fájlt: abc.tmp és abctmp A gksudo -- find . -regextype posix-egrep -regex '.*\.tmp' -delete törli az abc.tmp fájlt. ¨¨¨A gksu -- find . -regextype posix-egrep -regex '.*\.tmp' -delete pedig mindkettőt. De lehetne az is, hogy az első egyet töröl, a második ötezret. Az persze lehet, hogy a gedit, a nautilus, vagy a thunar indítása mindkettővel ugyanazt az eredményt adja. De a lényeg az, hogy most az derült ki, hogy a kiátkozott gksudo nem is annyira rossz, sőt van olyan helyzet, amikor kicsit még jobb is, mint a gksu. Ami letöröl ötezer nem törlésre szánt fájlt. Vagy te meg tudod magyarázni az abctmp törlését a második esetben?

              anaconda. = bármilyen karakter * = 0 vagy többször \. = . (Kéne legyen, de itt nem az) tmp = tmp Próbáld így: .*[.]tmp Vagy .*[\.]tmp Egrep másképp veszi ezek szerint a\. -t

                bartasziliNem próbálom, mert mint írtam én is babonás félelemmel nézek a RegEx mintáira. És nem az adott RegEx problémát akarom megoldani. Itt az a lényeg, hogy a kétféle módon indított parancs hatása nem egyforma.

                  anacondaDebug módban az jön ki, hogy a gksu és a gksudo eltérő módon kezeli a \ jelet, ami összefüggésben lehet a ' jel kezelésével is. Pl.: gksu -d echo 'a \ a' és gksudo -d echo 'a \ a' Ugye a zárójel miatt meg kellene maradnia a \ jelnek, lásd sima echo 'a \ a' parancs és az echo a\a Nekem ez egy bugnak tűnik, de ha ezt figyelembe vesszük, akkor már ki lehet helyesen is adni a gksu-s parancsot is: gksu -- find . -regextype posix-egrep -regex '.*\\.tmp' -delete De mindez nem azt jelenti, hogy ne lenne teljesen jól használható a gksu is a gksudo ellenében, főleg grafikus alkalmazásoknál, amelyeknél általában nem adunk extra argumentumokat. Az említett példában értelmezésbeli/argumentumátadásbeli probléma van, de azon kívül, hogy nem teljesen ugyanazt az argumentumot adja át a gksu és a gksudo, más különbség nincs (lásd -d kapcsoló). És ha már bugnál tartunk, éppenséggel a gksudo sincs a helyzet magaslatán. Pl. az echo 'a\\a' és a sudo echo 'a\\a' parancsoknak a kimenete a következő: a\\a míg a gksudo echo 'a\\a' már ezt adja vissza: a\\\a

                    bartasziliA gksu(do) lényegét is jól megmutatja a -d kapcsoló, pl: xauth: /tmp/libgksu-wu6lFp/.Xauthority Ennyi, elvileg nem kell, hogy más különbség legyen. Az, hogy van, már inkább bugnak tekinthető. Lásd a következő parancsok kimenetét: sudo -H printenv gksu printenv gksudo printenv

                    KendekÉn hiszek neked, mert nagyon szép sormintákat tudsz rajzolni. :-)

                    Ennyivel később: 6 év