scripts

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
m_tullgren
Inlägg: 106
Blev medlem: 05 jul 2008, 08:33
OS: Ubuntu
Ort: Gävle

scripts

Inlägg av m_tullgren »

Hej,

Har gjort ett par skript. Kan bara starta de i den katalogen som de ligger i
ex om skriptet ligger i "/" så kan jag inte starta det i /home/~
Finns där något sätt att göra så man kan starta de varsomhelst?

Fråga nr 2; Kan man göra så att man startar ett skript utan ./
Användarvisningsbild
ajja
Inlägg: 682
Blev medlem: 15 dec 2007, 23:43
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Motala
Kontakt:

Re: scripts

Inlägg av ajja »

Du kan alltid skriva den absoluta sökvägen till filen (som du naturligtvis gjort körbar)
Ex /home/kalle/skript_filen

Ett annat sätt är att lägga in filen i din PATH med ett lämpligt namn.
Ex. lägga filen i katalogen /usr/bin

./ talar om för bash att det är filen som ligger i den katalog som du befinner dig i som ska köras, om du endast skriver fil_namnet så letar bash i PATH och om den då inte finns där så blir det fel.
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: scripts

Inlägg av dmz »

Döp filen till random (utan filändelse) och kopiera till /bin så kan du köra det var som helst.
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: scripts

Inlägg av Konservburk »

dmz skrev:Döp filen till random (utan filändelse) och kopiera till /bin så kan du köra det var som helst.
Det är bättre att kopiera till /usr/local/bin (det anses vara lite fult att lägga in egna saker direkt i /bin).
m_tullgren
Inlägg: 106
Blev medlem: 05 jul 2008, 08:33
OS: Ubuntu
Ort: Gävle

Re: scripts

Inlägg av m_tullgren »

Lägga i bin katalogen verkar var en vettig lösning :D
Ett litet problem är att jag inte har rättigheter att läsa filen och kör jag sudo så hittar den inte den alls
Tack för snabb hjälp.
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: scripts

Inlägg av dmz »

m_tullgren skrev:Lägga i bin katalogen verkar var en vettig lösning :D
Ett litet problem är att jag inte har rättigheter att läsa filen och kör jag sudo så hittar den inte den alls
Tack för snabb hjälp.
sudo chmod 777 /sökväg/till/script för fulla rättigheter.

@ Konservburk: Vad är "fult" med det, finns det någon omedelbar nackdel?
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: scripts

Inlägg av Konservburk »

dmz skrev:@ Konservburk: Vad är "fult" med det, finns det någon omedelbar nackdel?
Det är väl mest att automatiska uppdateringar och liknande håller fingrarna helt borta från /usr/local, dvs man kan vara säker på att ens skript inte försvinner spårlöst därifrån en vacker dag. Det är dessutom ett smidigt sätt att hålla ordning på vad man själv egentligen har lagt till.

Om du är mer intresserad så kan du läsa vad FHS har att säga om saken:

http://www.pathname.com/fhs/pub/fhs-2.3.html
djkmmo
Inlägg: 1904
Blev medlem: 20 jun 2008, 18:09
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: Malmö

Re: scripts

Inlägg av djkmmo »

Vill du ha det kvar även efter ominstallation med omformatering av rotfilsystemet så går det även att skapa en mapp som heter bin i din hemkatalog. Den läggs automagiskt till som först i sökvägen vid programkörning. En förutsättning för att vara säker på att den alltid finns kvar är naturligtvis att /home ligger på en egen partition.
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: scripts

Inlägg av dmz »

djkmmo skrev:Vill du ha det kvar även efter ominstallation med omformatering av rotfilsystemet så går det även att skapa en mapp som heter bin i din hemkatalog. Den läggs automagiskt till som först i sökvägen vid programkörning. En förutsättning för att vara säker på att den alltid finns kvar är naturligtvis att /home ligger på en egen partition.
Sedärja, det hade jag ingen aning om.
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
djkmmo
Inlägg: 1904
Blev medlem: 20 jun 2008, 18:09
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: Malmö

Re: scripts

Inlägg av djkmmo »

dmz skrev:
djkmmo skrev:Vill du ha det kvar även efter ominstallation med omformatering av rotfilsystemet så går det även att skapa en mapp som heter bin i din hemkatalog. Den läggs automagiskt till som först i sökvägen vid programkörning. En förutsättning för att vara säker på att den alltid finns kvar är naturligtvis att /home ligger på en egen partition.
Sedärja, det hade jag ingen aning om.

Kod: Markera allt

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
ligger i .profile som standard. Om du inte har det i Mandriva så är det bara att lägga till i .profile, .bash_profile eller vad det nu heter i Mandriva. Men det finns säkert med som standard.
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: scripts

Inlägg av dmz »

djkmmo skrev:
dmz skrev:
djkmmo skrev:Vill du ha det kvar även efter ominstallation med omformatering av rotfilsystemet så går det även att skapa en mapp som heter bin i din hemkatalog. Den läggs automagiskt till som först i sökvägen vid programkörning. En förutsättning för att vara säker på att den alltid finns kvar är naturligtvis att /home ligger på en egen partition.
Sedärja, det hade jag ingen aning om.

Kod: Markera allt

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
ligger i .profile som standard. Om du inte har det i Mandriva så är det bara att lägga till i .profile, .bash_profile eller vad det nu heter i Mandriva. Men det finns säkert med som standard.
Ah, okay. Humm, Mandriva? :o
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
Användarvisningsbild
ajja
Inlägg: 682
Blev medlem: 15 dec 2007, 23:43
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Motala
Kontakt:

Re: scripts

Inlägg av ajja »

dmz

Inlägg: 344
Blev medlem: 29 jul 2008, 19:42
OS: Mandriva
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: scripts

Inlägg av dmz »

ajja skrev:dmz

Inlägg: 344
Blev medlem: 29 jul 2008, 19:42
OS: Mandriva
Ehm.. what?


dmz

Posts: 346
Joined: 29 Jul 2008, 19:42
OS: Annat GNU/Linux
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
David Andersson
Inlägg: 1269
Blev medlem: 15 dec 2007, 03:20
OS: Xubuntu

Re: scripts

Inlägg av David Andersson »

dmz skrev:sudo chmod 777 /sökväg/till/script för fulla rättigheter.
Det där är farligt. Ett kommando med rättigheter "-rwxrwxrwx" i en PATH-katalog. Vem som helst kan ändra i scriptet och vem som helst annan kan köra det, med ändringarna i. Låt bara ägeren kunna ändra och låt alla andra bara kunna köra "-rwxr-xr-x":

sudo chmod 755 /sökväg/till/script

alternativt

sudo chmod a+x /sökväg/till/script
djkmmo
Inlägg: 1904
Blev medlem: 20 jun 2008, 18:09
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: Malmö

Re: scripts

Inlägg av djkmmo »

dmz skrev:
ajja skrev:dmz

Inlägg: 344
Blev medlem: 29 jul 2008, 19:42
OS: Mandriva
Ehm.. what?


dmz

Posts: 346
Joined: 29 Jul 2008, 19:42
OS: Annat GNU/Linux
För mig står det också Mandriva på dig... Det är ngn bland admin som vill smutskasta dig >:D.
Användarvisningsbild
BadOmen
Inlägg: 1172
Blev medlem: 18 aug 2006, 10:45
OS: Kubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Umeå

Re: scripts

Inlägg av BadOmen »

Om du vill ha ett GUI svar i stället för terminal... så kan du göra så här:
1. ALT + F2 och skirv gksudo nautilus
2. Tryck på menyn Visa och se så att det är förkryssat att dolda filer visas.
3. Gå till mappen där filen din finns.
4. Högerklicka på den och välj egenslaper
5. välj fliken rättigheter.

Där under rättigheter ser du att du kan göra dina inställningar för vilka som ska få läsa skriva till filen och du kan också kryssa för att den ska vara körbar eller inte :)
djkmmo
Inlägg: 1904
Blev medlem: 20 jun 2008, 18:09
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: Malmö

Re: scripts

Inlägg av djkmmo »

BadOmen skrev:Om du vill ha ett GUI svar i stället för terminal... så kan du göra så här:
1. ALT + F2 och skirv gksudo nautilus
2. Tryck på menyn Visa och se så att det är förkryssat att dolda filer visas.
3. Gå till mappen där filen din finns.
4. Högerklicka på den och välj egenslaper
5. välj fliken rättigheter.

Där under rättigheter ser du att du kan göra dina inställningar för vilka som ska få läsa skriva till filen och du kan också kryssa för att den ska vara körbar eller inte :)
Om man har en /bin/-katalog i sin hemmapp behövs inte gksudo eller sudo. Då är det bara att öppna filhanteraren och högerklicka på ifrågavarande script i bin-katalogen för att ändra rättigheter. I sitt home har man fulla rättigheter.

Dessutom har det andra säkerhetsfördelar att lägga de egna scripten i ~/bin/. Om man gör ett script som potentiellt är farligt så går det inte att köra rakt av med sudo, eftersom att ~/bin tas bort ur path:en när man kör sudo. Istället måste man ge hela sökvägen. Kanske inte en jättestark säkerhetsfunktion, men man kanske tänker sig för en extra gång.
Användarvisningsbild
BadOmen
Inlägg: 1172
Blev medlem: 18 aug 2006, 10:45
OS: Kubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Umeå

Re: scripts

Inlägg av BadOmen »

djkmmo skrev:
BadOmen skrev:Om du vill ha ett GUI svar i stället för terminal... så kan du göra så här:
1. ALT + F2 och skirv gksudo nautilus
2. Tryck på menyn Visa och se så att det är förkryssat att dolda filer visas.
3. Gå till mappen där filen din finns.
4. Högerklicka på den och välj egenslaper
5. välj fliken rättigheter.

Där under rättigheter ser du att du kan göra dina inställningar för vilka som ska få läsa skriva till filen och du kan också kryssa för att den ska vara körbar eller inte :)
Om man har en /bin/-katalog i sin hemmapp behövs inte gksudo eller sudo. Då är det bara att öppna filhanteraren och högerklicka på ifrågavarande script i bin-katalogen för att ändra rättigheter. I sitt home har man fulla rättigheter.

Dessutom har det andra säkerhetsfördelar att lägga de egna scripten i ~/bin/. Om man gör ett script som potentiellt är farligt så går det inte att köra rakt av med sudo, eftersom att ~/bin tas bort ur path:en när man kör sudo. Istället måste man ge hela sökvägen. Kanske inte en jättestark säkerhetsfunktion, men man kanske tänker sig för en extra gång.
Det var nytt för mig för jag har bara av farten alltid använd gksudo för att öppna nautilus för att ändra rättigheter. Man måste dock använda det kommandot för att ge bara root rätigheter i home mappen. Kanske inte så ofta man vill det men iaf :)
Att ha en bin mapp i home var riktigt smart! Man lär sig nåt nytt hela tiden =)
Skriv svar

Återgå till "Terminalforum"