Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Spuštění skriptu pod právy root  (Přečteno 4922 krát)

straka.peter

  • Návštěvník
  • Příspěvků: 8
Spuštění skriptu pod právy root
« kdy: 20 Července 2014, 20:11:47 »
Zdravím, potřeboval bych spouštět skripty vždy buď po kliknutí na něj z plochy nebo z terminálu pod právy roota. SetUID bit jsem nastavil, ale program stále běží pod právy uživatele který skript spustil, respektive, nedělá co má. Ve skriptu se odkazuju na program rsync - nevím jestli to náhodou nemůže být tím,že když ze skriptu s SetUID volám jiný program - spustí se stejně pod právy uživatele, který jej spustil?

Díky.

Samms

  • Aktivní člen
  • *
  • Příspěvků: 297
Re:Spuštění skriptu pod právy root
« Odpověď #1 kdy: 20 Července 2014, 20:25:21 »
fakeroot?

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #2 kdy: 21 Července 2014, 02:43:18 »
na skript se setuid nastavit neda, nastav si ho pres sudo - dej si do etc/sudoers

Kód: [Vybrat]
jmeno_uzivatele         ALL=NOPASSWD: /cesta/ke/skriptu
potom ho budes moct poustet pomoci sudo bez zadavani hesla
« Poslední změna: 21 Července 2014, 02:51:28 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #3 kdy: 31 Července 2014, 16:50:21 »
Pulhodiny zabavy a tohle se mi rozjet nepodarilo.
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #4 kdy: 31 Července 2014, 16:54:46 »
Pulhodiny zabavy a tohle se mi rozjet nepodarilo.
v tom pripade bych se zamyslel, jestli je pro tebe linux to prave orechove, protoze stravit pulhodinu vkladanim textu copy&paste metodou do nejakeho souboru (apropos musis jeste nahradit "jmeno_uzivatele" za nejake opravdove jmeno a "/cesta/ke/skriptu" za nejakou skutecnou cestu) s negativnim vysledkem je alarmujici ..
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Petr Merlin Vaněček

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 5057
    • Lomítkáři
Re:Spuštění skriptu pod právy root
« Odpověď #5 kdy: 31 Července 2014, 16:55:57 »
Pulhodiny zabavy a tohle se mi rozjet nepodarilo.

Co konkrétně? Ten script se pak musí spouštět přes sudo - spustí se s právy roota, jen se nezeptá na heslo.
Stiskni CTRL + W ...
80% mozku tvoří kapalina ... u některých brzdová

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #6 kdy: 31 Července 2014, 17:45:49 »
No zkousel sem snad secko
Kód: [Vybrat]
sudo bash /home/grafen/.SUDOskripty/FTPskript.sh
bash /home/grafen/.SUDOskripty/FTPskript.sh
bash sudo /home/grafen/.SUDOskripty/FTPskript.sh
cd /home/grafen/.SUDOskripty/
bash FTPskript.sh
Uvnitr skriptu se sudo a ibez sudo, a ruzne variace v sudoers
Kód: [Vybrat]
grafen         ALL=NOPASSWD: /home/grafen/.SUDOskripty
grafen         ALL=(ALL )NOPASSWD: /home/grafen/.SUDOskripty
grafen         ALL=(root )NOPASSWD: /home/grafen/.SUDOskripty
root         ALL=NOPASSWD: /home/grafen/.SUDOskripty
root ALL=(ALL) NOPASSWD:/bin/bash /home/grafen/FTPskript.sh
i primo nazev skriptu napr.
Kód: [Vybrat]
grafen         ALL=NOPASSWD: /home/grafen/.SUDOskripty/FTPskript.sh

Samozrtejme si tezko zapamatovat secky kombinace co sem zkousel, vysledek bud to chtelo heslo, nebo to bezelo bez opravneni, no standartne spoustim prez "gksudo bash /home/grafen/FTPskript.sh" ale skript je sam osobe a mozna v tom je problem zakazany k zapisu, ale to mi pride zase jako dira, mit skript spousteny root volne editovatelny.

Jeste pridam pro rejpaly ze to zabralo tolik casu, po uprave restart.
« Poslední změna: 31 Července 2014, 17:50:41 od Savalas »
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #7 kdy: 31 Července 2014, 17:46:39 »
v tom pripade bych se zamyslel, jestli je pro tebe linux to prave orechove, protoze stravit pulhodinu vkladanim textu copy&paste metodou do nejakeho souboru (apropos musis jeste nahradit "jmeno_uzivatele" za nejake opravdove jmeno a "/cesta/ke/skriptu" za nejakou skutecnou cestu) s negativnim vysledkem je alarmujici ..

No strasne vtipne.
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #8 kdy: 31 Července 2014, 18:04:37 »
v tom pripade bych se zamyslel, jestli je pro tebe linux to prave orechove, protoze stravit pulhodinu vkladanim textu copy&paste metodou do nejakeho souboru (apropos musis jeste nahradit "jmeno_uzivatele" za nejake opravdove jmeno a "/cesta/ke/skriptu" za nejakou skutecnou cestu) s negativnim vysledkem je alarmujici ..

No strasne vtipne.
no tedka vazne, berme to jako lehkou ironii, ale skoro bych rekl, ze jsi se netrefil ani v jednom z pokusu :D .. dyk tam proste nemas co jsem ti napsal ..

ad.sudoers) bud si tam dej cestu primo k tomu jednomu skriptu a nebo tu cestu - pokud je to adresar - musis mit s "/" na konci .. ono je to nekde v manualu .. sice nevim kde, ale proste je to tak ..

grafen ALL=NOPASSWD: /home/grafen/.SUDOscripty/

ad.spousteni)

kdyz spoustis `sudo bash $nejakej_argument', tak musis mit v sudoers celej bash (coz je kravina) .. kdyz to spoustis bez sudo, tak je samozrejme, ze to pod rootem nepobezi

musis to proste spoustet bud `sudo /home/grafen/.SUDOskripty/FTPskript.sh' a nebo `sudo FTPskript.sh' pokud mas tu cestu s tema skriptama v $PATH .. sudo si tu cestu vezme z $0 takze ji bude mit vzdy spravne ..

« Poslední změna: 31 Července 2014, 18:07:22 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #9 kdy: 31 Července 2014, 18:18:21 »
musis mit samozrejme ale vyresena rizika, ktere to prinasi .. tzn, ze musis mit ty skripty s pravy 755 a jejich vlastnikem musi byt root .. pokud by tomu tak nebylo, tak ze tveho uctu by slo ziskat generickej pristup na roota, protoze by sis do nich jako majitel tech skriptu mohl dat co uplne co chces ..

ty navic do sudoers muzes dat i celej ten prikaz, vc. argumentu, tzn nemusis tam davat jenom ten prikaz .. napriklad (ja to tam sice nemam, ale klidne si to tam dam :P):

%users          ALL=NOPASSWD: /usr/bin/zypper -vv ref

^^ tohle dovoli u me v pocitaci vsem clenum skupiny users vykonat jen tenhle jeden prikaz s temahle argumentama .. tedy refreshnout cache s balicky (eg apt-get update u vas)
« Poslední změna: 31 Července 2014, 18:28:41 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #10 kdy: 31 Července 2014, 18:34:59 »
Sudo visudo a nic
Kód: [Vybrat]
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
grafen ALL=NOPASSWD: /home/grafen/.SUDOscripty/

Kód: [Vybrat]
grafen@grafen-MS-7758:~$ sudo /home/grafen/.SUDOskripty/FTPskript.sh
[sudo] password for grafen:
grafen@grafen-MS-7758:~$ cd /home/grafen/.SUDOskripty
grafen@grafen-MS-7758:~/.SUDOskripty$ sudo FTPskript.sh
[sudo] password for grafen:
grafen@grafen-MS-7758:~/.SUDOskripty$ sudo bash FTPskript.sh
[sudo] password for grafen:
grafen@grafen-MS-7758:~/.SUDOskripty$ ls FTPskript.sh -g
-rwxr-xr-x 1 grafen 1650 čec 31 16:30 FTPskript.sh
grafen@grafen-MS-7758:~/.SUDOskripty$ bash FTPskript.sh
[sudo] password for grafen:
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #11 kdy: 31 Července 2014, 18:47:01 »
a nemas to sudo i v tom skriptu ?

navic ono se to nepta na heslo roota, ale na heslo grafena ?

btw, neni nahodou potreba povolit v ubu roota tady na to ? ubuntu ma naprosto divnej setup a toho roota nema defaultne povolenyho
« Poslední změna: 31 Července 2014, 18:50:39 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #12 kdy: 31 Července 2014, 18:51:11 »
Sudo je i v skriptu a jak sem psal kdyz ho odtamat smazu prikazy se samozrejme neprovadi pod pravy a nejsou funkcni, pta se na grafena, jako pri kazdem sudo, sak to tam vidis.

Dalsi pokus nefunguje
Kód: [Vybrat]
%users ALL=NOPASSWD:/home/grafen/.SUDOscripty/sudo bash FTPskript.sh
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #13 kdy: 31 Července 2014, 19:01:22 »
Sudo je i v skriptu a jak sem psal kdyz ho odtamat smazu prikazy se samozrejme neprovadi pod pravy a nejsou funkcni, pta se na grafena, jako pri kazdem sudo, sak to tam vidis.

Dalsi pokus nefunguje
Kód: [Vybrat]
%users ALL=NOPASSWD:/home/grafen/.SUDOscripty/sudo bash FTPskript.sh

sudo nemas mit ve skriptu !! a navic si myslim, ze skupina users snad ani neni v ubuntu defaultni pro uzivatele .. ted uz me zacalo zajimat co je obsahem toho skriptu samotnyho ..
« Poslední změna: 31 Července 2014, 19:10:16 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #14 kdy: 31 Července 2014, 19:09:22 »
muzes prosim zadat do konsole tyhle prikazy:

# prihlasis se jako root
sudo -i

# vytvoris adresar a das do nej soubor se skriptem a nastavis prava na spousteni - vse pod rootem
mkdir -p /var/tmp/bin
echo -e '#!/bin/bash\necho $USER:$EUID\nexit 0' > /var/tmp/bin/hmmm
chmod +x /var/tmp/bin/hmmm

# ted sudoers
cp -v /etc/sudoers /etc/sudoers.1
echo -e 'grafen\t\tALL=NOPASSWD: /var/tmp/bin/hmmm' >> /etc/sudoers

# ted se odhlasis od z roota z zkusis to spustit:
exit
([ "grafen" == "$USER" ] && sudo /var/tmp/bin/hmmm) || echo omg

potom po sobe uklidis, tzn odstranis ten radek ze sudoers ..
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

jmp

  • Host
Re:Spuštění skriptu pod právy root
« Odpověď #15 kdy: 31 Července 2014, 19:11:52 »
sudoers jsem nějak pořádně nepochopil, ale v ubuntu se opravdu po sudo objevuje dotaz na heslo usera a ne roota

asi bych místo
Kód: [Vybrat]
grafen ALL=NOPASSWD: /home/grafen/.SUDOscripty/zkusil
Kód: [Vybrat]
grafen ALL=(root:root) NOPASSWD:/home/grafen/.SUDOscripty/

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #16 kdy: 31 Července 2014, 19:13:56 »
sudoers jsem nějak pořádně nepochopil, ale v ubuntu se opravdu po sudo objevuje dotaz na heslo usera a ne roota

asi bych místo
Kód: [Vybrat]
grafen ALL=NOPASSWD: /home/grafen/.SUDOscripty/zkusil
Kód: [Vybrat]
grafen ALL=(root:root) NOPASSWD:/home/grafen/.SUDOscripty/

at nejdriv prosim udela to co mu pisu .. podle me to dela furt spatne ..
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #17 kdy: 31 Července 2014, 19:38:33 »
Kód: [Vybrat]
grafen ALL=(root:root) NOPASSWD:/home/grafen/.SUDOscripty/
nejde

sudoers zalohovane mam, a kod sem vkladal prez visudo
Kód: [Vybrat]
grafen ALL=NOPASSWD: /var/tmp/bin/hmmm
muzes prosim zadat do konsole tyhle prikazy: ....
Kód: [Vybrat]
grafen@grafen-MS-7758:~$ sudo -i
[sudo] password for grafen:
root@grafen-MS-7758:~# mkdir -p /var/tmp/bin
root@grafen-MS-7758:~# echo -e '#!/bin/bash\necho $USER:$EUID\nexit 0' > /var/tmp/bin/hmmm
root@grafen-MS-7758:~# chmod +x /var/tmp/bin/hmmm
root@grafen-MS-7758:~# exit
odhlášení
grafen@grafen-MS-7758:~$ ([ "grafen" == "$USER" ] && sudo /var/tmp/bin/hmmm) || echo omg
root:0
grafen@grafen-MS-7758:~$ echo $USER:$EUID
grafen:1000

Tak jeste to otestuju.
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #18 kdy: 31 Července 2014, 19:40:54 »
Kód: [Vybrat]
grafen@grafen-MS-7758:~$ sudo -i
[sudo] password for grafen:
root@grafen-MS-7758:~# mkdir -p /var/tmp/bin
root@grafen-MS-7758:~# echo -e '#!/bin/bash\necho $USER:$EUID\nexit 0' > /var/tmp/bin/hmmm
root@grafen-MS-7758:~# chmod +x /var/tmp/bin/hmmm
root@grafen-MS-7758:~# exit
odhlášení
grafen@grafen-MS-7758:~$ ([ "grafen" == "$USER" ] && sudo /var/tmp/bin/hmmm) || echo omg
root:0
grafen@grafen-MS-7758:~$ echo $USER:$EUID
grafen:1000

Tak jeste to otestuju.

normalne naprosto vsechno funguje a akorat tady plasis :D

pokud mas ve svym skriptu dalsi sudo, tak je jasny co se tady deje .. nemusis tam vubec davat co pise jmp
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #19 kdy: 31 Července 2014, 19:45:32 »
Tak nevim proc bych mel plasit, testuju chmod  coz je prvni prikaz v ftp skriptu a v tom hmmm fara bez dotazu, jedno jeslti "sudo chmod 755 -R /srv/ftp" nebo "chmod 777 -R /srv/ftp", coz zatim neslo.

Kód: [Vybrat]
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxr-xr-x 2 ftp 4096 čec 29 19:01 ftp
grafen@grafen-MS-7758:~$ sudo /var/tmp/bin/hmmm
root:0
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxrwxrwx 2 ftp 4096 čec 29 19:01 ftp
grafen@grafen-MS-7758:~$ sudo /var/tmp/bin/hmmm
root:0
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxr-xr-x 2 ftp 4096 čec 29 19:01 ftp

I cely ftp skrip v hmmm fara, no byt v nazvu diakritika tak se nedivim, ale takhle.
« Poslední změna: 31 Července 2014, 19:47:57 od Savalas »
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

ntz_reloaded

  • Lokaj
  • Závislák
  • ***
  • Příspěvků: 3735
  • skill :: ur home erly
Re:Spuštění skriptu pod právy root
« Odpověď #20 kdy: 31 Července 2014, 19:50:38 »
Tak nevim proc bych mel plasit, testuju chmod  coz je prvni prikaz v ftp skriptu a v tom hmmm fara bez dotazu, jedno jeslti "sudo chmod 755 -R /srv/ftp" nebo "chmod 777 -R /srv/ftp", coz zatim neslo.

Kód: [Vybrat]
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxr-xr-x 2 ftp 4096 čec 29 19:01 ftp
grafen@grafen-MS-7758:~$ sudo /var/tmp/bin/hmmm
root:0
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxrwxrwx 2 ftp 4096 čec 29 19:01 ftp
grafen@grafen-MS-7758:~$ sudo /var/tmp/bin/hmmm
root:0
grafen@grafen-MS-7758:~$ ls -g /srv
celkem 4
drwxr-xr-x 2 ftp 4096 čec 29 19:01 ftp
ceho o.O ? co tim chces docilit ? co od toho cekas ?

povazuju za vyreseny .. prosim nehraj si s tim sudo dokud si nebudes jisty, ze delas presne to, co si myslis ze delas a ze to skutecne chces .. sudo funguje naprosto spravne, jak spustit skript s jeho pomoci uz ted vis .. obsah skriptu neni predmetem tehle diskuse a nijak se sudo netyka a zadne dalsi sudo ve skriptu nepotrebujes .. pokud chces pod rootem pustit neco (treba skript) jako jinej uzivatel, tak to udelej pomoci su -c
« Poslední změna: 31 Července 2014, 19:57:21 od ntz_reloaded »
tikejte mi, taky Vam tikam ...
song of the day - openSUSE, openindiana, DuckDuckGo
The noise ain't noise anymore, who's to blame, WHO'S TO BLAME ??

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:Spuštění skriptu pod právy root
« Odpověď #21 kdy: 31 Července 2014, 20:16:45 »
Uz to jede, zacalo to davat hlasku "/home/grafen/FTPskript.sh: 2: /home/grafen/FTPskript.sh: Syntax error: "(" unexpected" proc takova zmena najednou nevim,a tuhle hlasku sem opravil prekvapivym zpusobem,  #!/bin/sh zmenil na #!/bin/bash, by me taky zajimalo odkad sem tohle prevzal.

Citace
prosim nehraj si s tim sudo dokud si nebudes jisty, ze delas presne to, co si myslis ze delas a ze to skutecne chces
Uzil sem pod dosem, winem tak nevim proc bych ted mel davat ruce pryc od za svoje prachy koupeneho pocitace kvuli sudo.

aktualni uprava sudoers
Kód: [Vybrat]
grafen ALL=NOPASSWD: /home/grafen/FTPskript.sh
grafen          ALL=NOPASSWD: /home/grafen/RAMdisk.sh

A spoustet se to ma ciste "sudo /home/grafen/FTPskript.sh" a ne "sudo bash /home/grafen/FTPskript.sh".
Zadavani hesla to chtelo kvuli bash prikazu, ikdyz bylo sudoers sprave, a bash sem tam asi zaca davat kvuli chybejicimu parametru spustitelny , a nebo spatne hlavicce #!/bin/sh .
« Poslední změna: 31 Července 2014, 20:52:38 od Savalas »
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

Petr Merlin Vaněček

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 5057
    • Lomítkáři
Re:Spuštění skriptu pod právy root
« Odpověď #22 kdy: 31 Července 2014, 21:18:32 »
bash !== sh

existuje více shellů ... :)
Stiskni CTRL + W ...
80% mozku tvoří kapalina ... u některých brzdová

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Re:Spuštění skriptu pod právy root
« Odpověď #23 kdy: 31 Července 2014, 22:22:01 »
Uz to jede, zacalo to davat hlasku "/home/grafen/FTPskript.sh: 2: /home/grafen/FTPskript.sh: Syntax error: "(" unexpected" proc takova zmena najednou nevim,a tuhle hlasku sem opravil prekvapivym zpusobem,  #!/bin/sh zmenil na #!/bin/bash, by me taky zajimalo odkad sem tohle prevzal.

Výchozím shellem Ubuntu je Dash:
Kód: [Vybrat]
gdh@gdh:~$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 úno 19 13:13 /bin/sh -> dash
Dash je lehčí a rychlejší, než Bash, který je s ním kompatibilní, ale umí plno věcí navíc.

Když skript spustíš z shellu přímo, jen zapsáním cesty, třeba takto:
Kód: [Vybrat]
./skriptnahlédne shell do souboru, zda není na prvním řádku cesta k interpreteru, kterému by ho předal, jinak ho zkusí interpretovat sám. Pokud tam najde #!/bin/sh, spustí skript takto:
Kód: [Vybrat]
/bin/sh ./skriptAle v případě, že pro spuštění použiješ příkaz
Kód: [Vybrat]
bash skriptnemá shell žádný důvod zjišťovat, komu skript předat a při vlastní interpretaci je ten první řádek jen pouhým komentářem.
« Poslední změna: 31 Července 2014, 22:25:41 od GdH »

 

Provoz zaštiťuje spolek OpenAlt.