Automatické spuštění i se SUDO

Sem přidávejte tipy a triky, které jsou příliš malé na článek na našem Webu. Podělte se o své zkušenosti s ostatními.
Zpráva
Autor
Uživatelský avatar
Ventero1
Poradce Mintu
Příspěvky: 369
Registrován: 31 říj 2016, 14:17

Automatické spuštění i se SUDO

#1 Příspěvek od Ventero1 » 11 led 2018, 19:13

Do vhodného umístění přidat vhodně pojmenovaný skript, např. /bin/skript.sh se zápisem bez použití sudo

Kód: Vybrat vše

#!/bin/bash

#vykonávaný modelový příkaz#
mousepad /home/uživatel/Plocha/text.txt
Tento skript je zkušební a pouze v textovém editoru otevře soubor text.txt a zobrazí jeho obsah. V praktickém využití bude příkaz obsahovat spíše start nějakého servisu, monitorovací utility apod.

V tomto případě se jedná o umístění ve složce, kde je třeba oprávnění pro přístup a je třeba použít sudo. Takže tvorba skriptu:

Kód: Vybrat vše

sudo mousepad /bin/skript.sh
otevře se prázdný soubor do kterého se zkopíruje výše uvedený zápis a uloží. V jiném prostředí či jiné distribuci může být textový editor ne mousepad, ale třeba gedit nebo nějaký jiný.

Nastaví se spustitelnost

Kód: Vybrat vše

sudo chmod a+x /bin/skript.sh
a nakonec se přidá /bin/skript.sh coby příkaz do aplikací po spuštění (autostart). V xfce Nastavení - Relace a spouštění - Automatický start - přidat. Zvolí se jméno, libovolně komentář a vyplní příkaz.

Je-li třeba příkaz nebo příkazy (skript může být i jako dávkový soubor) spustit jako sudo, tak je třeba přidat výjimku do/etc/sudoers:

Kód: Vybrat vše

sudo mousepad /etc/sudoers
na konec zápisu připsat

Kód: Vybrat vše

uživatel ALL=NOPASSWD: /bin/skript.sh
a sudo dopsat před příkaz přiřazený v autostartu

Kód: Vybrat vše

sudo /bin/skript.sh
Druhá varianta přidání výjimky je skrze terminálový editor Nano:

Kód: Vybrat vše

sudo visudo
Doplnit na konec zápisu, uložit (ctrl+o), potvrdit (enter) a ukončit (ctrl+x)

Ve složce /home/uživatel/.config/autostart/ se tak automaticky vytvoří spouštěč Skript.desktop, který má takový nebo podobný zápis:

Kód: Vybrat vše

[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=Skript
Comment=
Exec=sudo /bin/skript.sh
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false
který pak zajišťuje spuštění po startu.
Naposledy upravil(a) Ventero1 dne 13 led 2018, 21:14, celkem upraveno 16 x.
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

menom
Velkovezír Mintu
Příspěvky: 1361
Registrován: 12 pro 2012, 15:10

Re: Automatické spuštění i se SUDO

#2 Příspěvek od menom » 11 led 2018, 21:36

.
Ventero1 píše:Do vhodného umístění přidat vhodně pojmenovaný skript, např. /bin/skript.sh se zápisem bez použití sudo
Mohol si dat aj co osahuje /home/username/Plocha/text

nech to je kompletne ...

.
Naposledy upravil(a) menom dne 11 led 2018, 22:41, celkem upraveno 1 x.

Uživatelský avatar
Ventero1
Poradce Mintu
Příspěvky: 369
Registrován: 31 říj 2016, 14:17

Re: Automatické spuštění i se SUDO

#3 Příspěvek od Ventero1 » 11 led 2018, 22:33

Doplněno - upraveno a opravena chyba v nastavení spustitelnosti.
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

bambulko68
Příspěvky: 62
Registrován: 27 zář 2017, 11:44

Re: Automatické spuštění i se SUDO

#4 Příspěvek od bambulko68 » 13 dub 2018, 08:13

nemozem si pomoct, ale mne sa nikdy nepodarilo nastavit, aby sa nejaky script dal spustit bez toho, aby si pytal root heslo :'(
Linux Mint Cinnamon 18.3 64-bit

West
Příspěvky: 70
Registrován: 20 kvě 2017, 11:02

Re: Automatické spuštění i se SUDO

#5 Příspěvek od West » 13 dub 2018, 19:02

Mozno sa nedal spustit preto, lebo vsetky prikazy v tom skripte, ktore vyzaduju 'roota' je potrebne doplnit do 'sudoers' a nastavit im opravnenia pre uzivatela v 'sudoers'. Popisany skript funguje. Pouzivam v podstate rovnaky uz nejakych 10 rokov na primapovanie zdielanych adresarov zo servera, alebo NASu.

bambulko68
Příspěvky: 62
Registrován: 27 zář 2017, 11:44

Re: Automatické spuštění i se SUDO

#6 Příspěvek od bambulko68 » 16 dub 2018, 06:41

aha. to je mozne. vyskusam

EDIT: Tak v mojom pripade mi stacilo pridat prikaz route do sudoers a funguje to super ;)
dakujem

EDIT2: tak nefunguje to :-/
do sudoers som pridal:

user ALL=NOPASSWD: /sbin/route
user ALL=NOPASSWD: /home/user/Skripty/SH/route.sh


a ani samotne sudo route nejde - pyta si heslo. moj script samozrejme tiez
Linux Mint Cinnamon 18.3 64-bit

bambulko68
Příspěvky: 62
Registrován: 27 zář 2017, 11:44

Re: Automatické spuštění i se SUDO

#7 Příspěvek od bambulko68 » 26 dub 2018, 12:52

ha... nasiel som, kde je chyba v tomto navode ;)

nema byt:
uživatel ALL=NOPASSWD: /bin/skript.sh

ale napr:
uživatel ALL=(ALL) NOPASSWD: /bin/skript.sh

chybalo (ALL) ;)

...a dokonca to musi byt na konci suboru :-D
Linux Mint Cinnamon 18.3 64-bit

Uživatelský avatar
Ventero1
Poradce Mintu
Příspěvky: 369
Registrován: 31 říj 2016, 14:17

Re: Automatické spuštění i se SUDO

#8 Příspěvek od Ventero1 » 26 dub 2018, 21:32

Me to stale funguje, tak jak jsem popsal ...
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

bambulko68
Příspěvky: 62
Registrován: 27 zář 2017, 11:44

Re: Automatické spuštění i se SUDO

#9 Příspěvek od bambulko68 » 26 dub 2018, 21:39

S tým, čo som doplnil, mi to už fičí OK
Linux Mint Cinnamon 18.3 64-bit

Uživatelský avatar
Ventero1
Poradce Mintu
Příspěvky: 369
Registrován: 31 říj 2016, 14:17

Re: Automatické spuštění i se SUDO

#10 Příspěvek od Ventero1 » 27 dub 2018, 07:36

Mozna je to tim, ze jsem to testoval na Xubu 14.04 a ty na Mint 18.3 (16.04 based).
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Odpovědět