Sudo och gksudo
Postat: 13 sep 2008, 19:28
Jag har funderat ett tag på sudo och gksudo och nu idag har jag tagit mig för att läsa på lite för att lägga upp det på min blogg som är som en stor post-it lapp för mig... Jag tar först upp vad sudo och gksudo är för nåt och sen när de är bra att använda. Efter det tar jag upp lite problem som kan uppstå och lite exempel.
Jag vill inte att det här ska bli ett krig mellan sudo och gksudo utan har ni nån fakta så visa upp den men undvik att säga att den ena eller den andra är onödig för det leder ingen stans. Jag hade egentligen inte tänkt lägga upp det här utan bara ha det för mig själv men sen tänkte jag att många undrar angående dessa kommandon så då visar jag upp det här med risken för diverse påhopp som tyvärr brukar hagla runt sådana här trådar
Läs igenom hela inlägget är ni snäll innan ni kommenterar, jag vet att det är långt...
Sudo är ett terminal program designat för att tillåta systemadministratören att ge begränsade root rättigheter till användare och logga root aktiviteterna.
Grundfilosofin är att ge så få privilegier som möjligt men ändå göra det möjligt för användarna att utföra sitt jobb.
När man skriver sudo kommando i en terminal så ombeds man att skriva in lösenordet i terminalen. Det syns inte att man skriver in det utan man får skriva det och sen trycka på Enter utan att se stjärnor för respektive tecken.
För att användaren ska kunna installera eller avinstallera program eller ta bort/lägga till/ändra filer i mappar som är viktiga för systemet så måste användaren utföra kommandot med sudo kommando så man kan skriva in sitt användarlösen för att få de rättigheterna som krävs för att utföra den uppgiften. Detta är en säkerhetsåtgärd för att minska risken att man själv tar bort/ändrar viktiga filer och för att minska risken att nån annan är inne och ändrar viktiga saker.
Sen finns också gksudo som gör samma sak som sudo med den skillnaden att när man skriver gksudo så poppar det upp ett fönster där man skriver in lösenordet till skillnad från om man använder sudo då man måste mata in lösenordet i terminalen. Som regel använder man gksudo för att utföra alla uppgifter som kräver att fönster öppnas alltså ett grafiskt gränssnitt för sudo (graphical frontend to sudo) Detta program körs automatiskt till exempel när du startar Pakethanteraren Synaptik eller andra program som kräver administrativa rättigheter.
Gksudo är framföralt praktisk att använda när man startar program som Nautilus eller gedit med admin.rättigheter. Då startar man programmet genom att trycka Alt + F2 och skriver in gksudo nautilus eller gedit. Hade man i det läget istället skrivit sudo nautilus så hade man inte haft nån möjlighet att skriva in sitt lösenord eftersom sudo kräver en terminal för att skriva in det.
gksudo är också den enda möjligheten som ger en alternativet att skriva in sitt lösen för att få admin.rättigheter om man startar ett program via en ikon eller en tangentbordsgenväg.
Det finns även en till anledning till att använda sudo respektive gksudo dock går det väldigt vilda diskuterad om det är så viktig, ni får väll bedöma det själva.
Jag har testat det som jag skriver nedan med det resultat att jag fick installera om firefox för att få tillbaka mina bokmärken och det tema jag hade på den tidigare. Det gick inte att komma åt bokmärkena via Ordna bokmärken och importera och säkerhetskopiera inte heller genom att synkronisera mot Foxmark där jag har mina bokmärken. Vet inte varför men det sket sig bigtime och firefox såg inte bra ut alls... Jag kan inte garantera att det var på grund av det jag höll på med eller om det bara var en slump. Men med mina bleka kunskaper om GNU/Linux så fick jag lov att ominstallera Firefox för att få till det. Det är möjligt att en mer erfaren användare hade löst det på ett smidigare sätt
OBS! Man ska aldrig starta/köra Firefox med roträttigheter. Jag gjorde det bara som ett test.
När man startar ett grafiskt program med sudo så använder den ibland användarens konfigurationsfiler i stället för root konfigurationsfiler. Man kan tydligt se detta genom att starta firefox med sudo då ser man att teman och allt sån hänger kvar medan startar man med gksudo så är det originaltemat den som kommer med installationen som används eftersom gksudo inte använder användarens konfigurationsfil utan roots konfiguration som det ska vara. Ni kan se skillnaden på Firefox med Sudo och gksudo så slipper ni gör det här själv... Kanske att det hade gått bra för er fast varför chansa...
I värsta tänkbara scenario så skulle man kunna öppna ett grafiskt program med sudo som då ev. använder användarens configurationsfiler och ändrar rättigheterna och ägare på ~/.ICEauthority till root så att när användaren sen ska logga in så går det inte. Man måste då ändra så att ägaren av ~/.ICEauthority blir den användare som inte kan logga in och den användaren ska ha läs och skriv rättigheter. Dennes grupp och andra användare ska inte ha några rättigheter alls till filen alternativt kan man ta bort filen helt då återskapas den som den ska vara när användaren loggar in nästa gång (gör backup för säkerhetsskull innan ni tar bort den). Man kan göra det genom att startar datorn i Recovery mode "felsäkert läge" och sen när det efter ett tag kommer en meny så väljer man Drop to root shell promt eller så väljer man att göra det via Live CD.
Här är ett ett exempel där det förmodligen har hänt (2008) det händer dock inte alls ofta nu mer:
Kan inte logga in
Tidigare var det oftast de som försökte starta grafiska kde program från gnome med sudo som fick det problemet men det verkar vara löst nu.
(2006)
KDE och GNOME problem
(2003)
http://www.linuxquestions.org/questions ... ip-325611/
Jag har tagit mycket information från denna sida:
http://www.psychocats.net/ubuntu/graphicalsudo
Lite härifrån:
http://bbs.archlinux.org/viewtopic.php?id=47414
och lite härifrån:
http://ubuntuforums.org/archive/index.php/t-119408.html
Samt från sådant som jag har läst lite här och var
Jag vill inte att det här ska bli ett krig mellan sudo och gksudo utan har ni nån fakta så visa upp den men undvik att säga att den ena eller den andra är onödig för det leder ingen stans. Jag hade egentligen inte tänkt lägga upp det här utan bara ha det för mig själv men sen tänkte jag att många undrar angående dessa kommandon så då visar jag upp det här med risken för diverse påhopp som tyvärr brukar hagla runt sådana här trådar

Läs igenom hela inlägget är ni snäll innan ni kommenterar, jag vet att det är långt...
Sudo är ett terminal program designat för att tillåta systemadministratören att ge begränsade root rättigheter till användare och logga root aktiviteterna.
Grundfilosofin är att ge så få privilegier som möjligt men ändå göra det möjligt för användarna att utföra sitt jobb.
När man skriver sudo kommando i en terminal så ombeds man att skriva in lösenordet i terminalen. Det syns inte att man skriver in det utan man får skriva det och sen trycka på Enter utan att se stjärnor för respektive tecken.
För att användaren ska kunna installera eller avinstallera program eller ta bort/lägga till/ändra filer i mappar som är viktiga för systemet så måste användaren utföra kommandot med sudo kommando så man kan skriva in sitt användarlösen för att få de rättigheterna som krävs för att utföra den uppgiften. Detta är en säkerhetsåtgärd för att minska risken att man själv tar bort/ändrar viktiga filer och för att minska risken att nån annan är inne och ändrar viktiga saker.
Sen finns också gksudo som gör samma sak som sudo med den skillnaden att när man skriver gksudo så poppar det upp ett fönster där man skriver in lösenordet till skillnad från om man använder sudo då man måste mata in lösenordet i terminalen. Som regel använder man gksudo för att utföra alla uppgifter som kräver att fönster öppnas alltså ett grafiskt gränssnitt för sudo (graphical frontend to sudo) Detta program körs automatiskt till exempel när du startar Pakethanteraren Synaptik eller andra program som kräver administrativa rättigheter.
Gksudo är framföralt praktisk att använda när man startar program som Nautilus eller gedit med admin.rättigheter. Då startar man programmet genom att trycka Alt + F2 och skriver in gksudo nautilus eller gedit. Hade man i det läget istället skrivit sudo nautilus så hade man inte haft nån möjlighet att skriva in sitt lösenord eftersom sudo kräver en terminal för att skriva in det.
gksudo är också den enda möjligheten som ger en alternativet att skriva in sitt lösen för att få admin.rättigheter om man startar ett program via en ikon eller en tangentbordsgenväg.
Det finns även en till anledning till att använda sudo respektive gksudo dock går det väldigt vilda diskuterad om det är så viktig, ni får väll bedöma det själva.
Jag har testat det som jag skriver nedan med det resultat att jag fick installera om firefox för att få tillbaka mina bokmärken och det tema jag hade på den tidigare. Det gick inte att komma åt bokmärkena via Ordna bokmärken och importera och säkerhetskopiera inte heller genom att synkronisera mot Foxmark där jag har mina bokmärken. Vet inte varför men det sket sig bigtime och firefox såg inte bra ut alls... Jag kan inte garantera att det var på grund av det jag höll på med eller om det bara var en slump. Men med mina bleka kunskaper om GNU/Linux så fick jag lov att ominstallera Firefox för att få till det. Det är möjligt att en mer erfaren användare hade löst det på ett smidigare sätt

När man startar ett grafiskt program med sudo så använder den ibland användarens konfigurationsfiler i stället för root konfigurationsfiler. Man kan tydligt se detta genom att starta firefox med sudo då ser man att teman och allt sån hänger kvar medan startar man med gksudo så är det originaltemat den som kommer med installationen som används eftersom gksudo inte använder användarens konfigurationsfil utan roots konfiguration som det ska vara. Ni kan se skillnaden på Firefox med Sudo och gksudo så slipper ni gör det här själv... Kanske att det hade gått bra för er fast varför chansa...
I värsta tänkbara scenario så skulle man kunna öppna ett grafiskt program med sudo som då ev. använder användarens configurationsfiler och ändrar rättigheterna och ägare på ~/.ICEauthority till root så att när användaren sen ska logga in så går det inte. Man måste då ändra så att ägaren av ~/.ICEauthority blir den användare som inte kan logga in och den användaren ska ha läs och skriv rättigheter. Dennes grupp och andra användare ska inte ha några rättigheter alls till filen alternativt kan man ta bort filen helt då återskapas den som den ska vara när användaren loggar in nästa gång (gör backup för säkerhetsskull innan ni tar bort den). Man kan göra det genom att startar datorn i Recovery mode "felsäkert läge" och sen när det efter ett tag kommer en meny så väljer man Drop to root shell promt eller så väljer man att göra det via Live CD.
Här är ett ett exempel där det förmodligen har hänt (2008) det händer dock inte alls ofta nu mer:
Kan inte logga in
Tidigare var det oftast de som försökte starta grafiska kde program från gnome med sudo som fick det problemet men det verkar vara löst nu.
(2006)
KDE och GNOME problem
(2003)
http://www.linuxquestions.org/questions ... ip-325611/
Jag har tagit mycket information från denna sida:
http://www.psychocats.net/ubuntu/graphicalsudo
Lite härifrån:
http://bbs.archlinux.org/viewtopic.php?id=47414
och lite härifrån:
http://ubuntuforums.org/archive/index.php/t-119408.html
Samt från sådant som jag har läst lite här och var
