PDA

View Full Version : Aiuto x miniscript


psimem
29-11-2008, 08:57
Vorrei creare un miniscript da lanciare da shell per montare alcune condivisioni samba, solo che le mie conoscenze in merito sono prossime allo zero assoluto :D
Infatti con:
#!/bin/sh

su
mount -t smbfs //192.168.0.2/Desktop /media/sda4/WinSamba/UFFICIO2/Desktop/ -o username=psimem,password=,uid=psimem,gid=psimem
mount -t smbfs //192.168.0.2/Ditta /media/sda4/WinSamba/UFFICIO2/Ditta/ -o username=psimem,password=,uid=psimem,gid=psimem
mount -t smbfs //192.168.0.2/Studio /media/sda4/WinSamba/UFFICIO2/Studio/ -o username=psimem,password=,uid=psimem,gid=psimem
exit
lo scriptino non aspetta per l'inserimento della password (richiesta per il comando su) e tenta di montare subito le partizioni condivise, ovviamente senza successo; come posso fare per dirgli di aspettare l'inserimento della password e poi procedere con il montaggio delle partizioni?

k4ez4r
29-11-2008, 09:22
non puoi levare il comando su e lanciare lo script come root?

poi se vuoi automatizzare lo inserisci nel crontab dell'utente root

psimem
29-11-2008, 09:34
non puoi levare il comando su e lanciare lo script come root?


E' quello che facevo prima, ma se riesco ad avviare il tutto da utente normale sarebbe un po' piu' rapido :ciapet:


poi se vuoi automatizzare lo inserisci nel crontab dell'utente root

No no, mi serve qualcosa da avviare in modo manuale

k4ez4r
29-11-2008, 09:48
EDIT: la soluzione qui sotto va bene per l'ambiente GNOME, non conosco l'equivalente per KDE
EDIT2: per KDE dovrebbe esistere un kdesudo da usare al posto di gksudo, prova a controllare

allora magari potresti usare gksudo che aspetta l'input dell'utente...

gksudo mount -t smbfs //192.168.0.2/Desktop /media/sda4/WinSamba/UFFICIO2/Desktop/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Ditta /media/sda4/WinSamba/UFFICIO2/Ditta/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Studio /media/sda4/WinSamba/UFFICIO2/Studio/ -o username=psimem,password=,uid=psimem,gid=psimem


non saprei se sia la soluzione migliore


lascerei perdere il SUID (http://it.wikipedia.org/wiki/Setuid_e_Setgid) che è una soluzione poco sicura

psimem
29-11-2008, 10:33
Ecco, anch'io sono arrivato alla medesima soluzione dopo aver ravanato un po' con l'aiuto di san google:

#!/bin/sh
sudo mount -t smbfs //192.168.0.2/Desktop /media/sda4/WinSamba/UFFICIO2/Desktop/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Ditta /media/sda4/WinSamba/UFFICIO2/Ditta/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Studio /media/sda4/WinSamba/UFFICIO2/Studio/ -o username=psimem,password=,uid=psimem,gid=psimem

ed ho definito nel file sudoers solo il comando mount come utilizzabile tramite sudo.

Ora il non plus ultra sarebbe far comparire un qualche tipo di avviso/icona/quelchee' in kicker all'avvenuto montaggio delle partizioni :sofico:

psimem
30-11-2008, 16:31
Per ora ho modificato lo script come segue:

#!/bin/sh
sudo mount -t smbfs //192.168.0.2/Desktop /media/sda4/WinSamba/UFFICIO2/Desktop/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Ditta /media/sda4/WinSamba/UFFICIO2/Ditta/ -o username=psimem,password=,uid=psimem,gid=psimem
sudo mount -t smbfs //192.168.0.2/Studio /media/sda4/WinSamba/UFFICIO2/Studio/ -o username=psimem,password=,uid=psimem,gid=psimem
touch /home/psimem/Desktop/PartizioniSambaMontate


Cosi' almeno vedo la scritta sul desktop :rolleyes:

k4ez4r
30-11-2008, 18:07
purtroppo per KDE non so proprio aiutarti...

su GNOME ad esempio c'è zenity (http://en.wikipedia.org/wiki/Zenity) per gestire le notifiche e i pop-up

MNT=$(mount | grep smbfs)
zenity --notification --text "$MNT"

visualizza un avviso nella notification area