Aprire nautilus coi permessi di root

17 risposte [Ultimo contenuto]
Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

Ciao a tutti vorrei sapere se ci fosse modo di far aprire nautilus da amministratore invece che lanciarlo da terminale. Cioè vorrei modificare il lanciatore "normale" perchè me lo apra da root.
grazie in anticipo

Ritratto di DebCat
DebCat
(Geek)
Offline
Geek
Iscritto: 17/12/2015
Messaggi: 67

Ciao, aprire nautilus con permessi di root potrebbe essere pericoloso, se per esempio modifichi un file di configurazione nella cartella utente può succedere che le applicazioni che ne fanno uso non possano più accedervi perchè ne cambieresi i permessi, quindi con problemi di malfunzionamenti o peggio, certo, basterebbe reimpostare i permessi, però potresti comunque avere dei grattacapi. Se aspetti (!) nella prossima versione di Debian (Stretch) se non sbaglio ci sarà il pacchetto nautilus-admin, che potrebbe fare al caso tuo. Comunque, credo, che si potrebbe creare un lanciatore e indicare come comando di avvio gksu nautilus, quindi salvando la password nel portachiavi dovrebbe funzionare. Ovviamente devi prima installare il pacchetto gksu.

ps:
gksu ti permette di aprire un'applicazione con permessi di root memorizzando la password nel portachiavi.

Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

Grazie per la risposta. Ma a me servirebbe proprio per comodità Nautilus lo userei solo per quello quando devo modificare file o permessi, normalmente uso nemo, ma gli script non mi funzionano. Proverò con gksu, come devo dare il comando? Potrei metterlo nel lanciatore che ho sul pannello? Grazie in anticipo

Ritratto di theShort
theShort
(Collaboratore)
Offline
Collaboratore
Iscritto: 02/08/2006
Messaggi: 596

Per nemo prova questo script:

#!/bin/bash
#
# this code will determine exactly the path and the type of object,
# then it will decide use gedit or nemo to open it by ROOT permission
#
#
# Nov 19, 2010
#Copyright by Nguyen Duc Long <Email: longnd.s8@gmail.com>
####################################################################################
 
# Determine the path
if [ -e -n $1 ]; then
	obj="$NEMO_SCRIPT_SELECTED_FILE_PATHS"
else
	base="`echo $NEMO_SCRIPT_CURRENT_URI | cut -d'/' -f3- | sed 's/%20/ /g'`"
	obj="$base/${1##*/}"
fi
# Determine the type and run as ROOT
if [ -f "$obj" ]; then
	gksu gedit "$obj"
elif [ -d "$obj" ]; then
	gksu nemo "$obj"
fi
 
exit 0

Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

grazie short ma se lo volessi fare per nautilus?

Ritratto di theShort
theShort
(Collaboratore)
Offline
Collaboratore
Iscritto: 02/08/2006
Messaggi: 596

Per Nautilus dovrebbe essere necessario solamente sostituire la voce "nemo" con "nautilus" dove presente.

A parte questo, se hai deciso di utilizzare Nautilus solo per apportare modifiche da root, allora uno script non ti serve più. Basta che ti prepari un lanciatore personalizzato usando il comando gksu come ti ha detto DebCat. Che poi, se fai caso, questo sistema è lo stesso che viene implementato negli script.

Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

Sinceramente non saprei come fare

Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

Sinceramente non saprei come fare

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

Devo premettere che quello che vuoi fare è pericoloso e contrario a ogni linea guida Linux o UNIX. Anzi, è il motivo per cui i sistemi Windows sono così macchinosi da amministrare.

Come ti hanno già consigliato, per lanciare un'applicazione grafica come root puoi usare gksu o gksudo. Inizia a lanciarlo da terminale per vedere se ce l'hai installato, se funziona come te lo aspetti, ecc. Questo ti chiederà la tua password:

gksudo nautilus
Questo invece richiede la password di root, ma l'effetto è lo stesso:
gksu nautilus

Una volta appurato che funziona come speravi, puoi cerare un lanciatore. Che non è altro che un file di testo con estensione .deskop formattato in un certo modo. Nel tuo case, potresti creare un file chiamato nautilus-root.desktop fatto più o meno così:

[Desktop Entry]
Type=Application
Name=Files (as root)
Name[it]=File (come root)
Comment=Access files as admnistrator
Comment[it]=Accedi ai file come amministratore
Exec=gksu nautilus
Terminal=false
Icon=org.gnome.Nautilus
StartupNotify=true

Ora non ti resta che "installarlo" in modo che il tuo desktop (GNOME; KDE, o chi per esso) lo veda al pari delle altre applicazioni. Il modo ufficiale è usare questo comando:

xdg-desktop-menu install nautilus-root.desktop

Ora troverai il lanciatore insieme a tutti gli altri e potrai anche metterlo tra i preferiti, sul dock, ecc.

Ritratto di pino-deb
pino-deb
(Junior)
Offline
Junior
Iscritto: 09/11/2016
Messaggi: 15

Grazie mille! la tua spiegazione è stata a prova di scimmia! Applause

Ritratto di sakitatu
sakitatu
(Newbie)
Offline
Newbie
Iscritto: 24/08/2017
Messaggi: 5

Ciao a tutti! A me però gksu nautilus non funziona, e neppure con su / sudo, ecc.
L'errore è

No protocol specified
 
(gksu:7897): Gtk-WARNING **: cannot open display: :0.0

Ho trovato nel web una guida per risolvere il problema, ma nulla....
Voi avete qualche idea?
Grazie!