Jak mogę dodać skrypt do nautilus, aby uruchomić wybrany plik jako administrator (nie otwierać jako administrator)? A jeśli to możliwe, chcę uruchomić ten plik jako administrator bez podawania hasła.
Jak mogę dodać skrypt do nautilus, aby uruchomić wybrany plik jako administrator (nie otwierać jako administrator)? A jeśli to możliwe, chcę uruchomić ten plik jako administrator bez podawania hasła.
Odpowiedzi:
Musisz wykonać następujące czynności na typie terminala sudo visudo
i dodać taką linię na końcu pliku, określając polecenia, które chcesz uruchomić bez wpisywania hasła sudo:
<yourusername> hostname=NOPASSWD: <command1>, <command2>
Teraz możesz uruchamiać określone polecenia bez hasła, o ile wpisujesz je za pomocą sudo
.
tzn .: pozwala na uruchomienie shutdown -r now
bez konieczności wpisywania hasła sudo za każdym razem, a twoja nazwa użytkownika to „joedoe”
wpisz sudo visudo
na terminalu
Dodaj joedoe hostname=NOPASSWD: shutdown -r now
jako nowy wiersz na końcu pliku
na skrypcie możesz użyć sudo shutdown -r now
bez konieczności wpisywania hasła sudo.
Aby utworzyć skrypt, użyj ulubionego edytora do utworzenia <nameofyourscript>.sh
z zawartością:
#! /bin/bash
sudo <commandsyouwanttorun1>
<commandsyouwanttorun2>
sudo<commandsyouwanttorun3>
Użyj sudo, aby wywoływać polecenia, które go potrzebują, nie poprosi o hasło, dopóki dodałeś je w NOPASSWD: <commmand1>, <command2>, etc
linii visudo
.
Potem trzeba uczynić go wykonywalnym z: sudo chmod 755 <nameofyourscript>.sh
.
Teraz możesz uruchomić skrypt za sh <nameofyourscript>.sh
pomocą terminala, klikając go dwukrotnie i wybierając run
w oknie dialogowym lub wstaw je do swojego, ~/.gnome2/nautilus-scripts/
który będzie dostępny w scripts
menu po kliknięciu prawym przyciskiem myszy nautilus:
Aby utworzyć skrypt otwierający pliki przy użyciu uprawnień administratora, klikając je prawym przyciskiem myszy i czyniąc go tak, aby żadne hasło nie było wyświetlane, utwórz skrypt z następującymi elementami:
#! /bin/bash
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
gksudo "gnome-open $file" &
done
Zapisz go na swoim ~/.gnome2/nautilus-scripts/
, zrób to za sudo chmod 755 ~/.gnome2/nautilus-scripts/<nameofyourscript>.sh
pomocą, sudo visudo
dodaj linię <yourusername> ALL=NOPASSWD: /usr/bin/gnome-open
i zapisz plik.
Powinieneś być w stanie kliknąć plik prawym przyciskiem myszy, przejść do folderu skryptów i wybrać skrypt, który właśnie utworzyłeś, aby otworzyć ten plik przy użyciu uprawnień użytkownika root. gnome-open
obsłuży typ pliku tak dobrze, jak to możliwe.
Skrypty Nautilus zwykle należy umieszczać $HOME/.gnome2/nautilus-scripts/
i wykonywać w trybie wykonywalnym. Biorąc to pod uwagę, poniższy skrypt powinien zrobić, co chcesz:
#!/bin/bash
IFS='
'
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
gksudo -k "sh -c 'chmod +x $file; $file'"
done
Możesz uzyskać dostęp do tego skryptu z programu nautilus, klikając prawym przyciskiem myszy plik, najeżdżając myszą na menu skryptu, a następnie klikając nazwę pliku skryptu w $HOME/.gonme2/nautilus-scritps/
. Nadal musisz jednak podać hasło.
Nie ma bezpiecznego sposobu na wykonanie tego z dowolnymi plikami bez podawania hasła. W przypadku specjalnych poleceń proces jest opisany w poście brunopereira81 tutaj i używa sudo, ale w zależności od poleceń doprowadzi do podatnego systemu. Jeśli cię to nie obchodzi (a ja stanowczo odradzam to), możesz ustawić ALL
polecenia, które będą używane NOPASSWD
i zastąpione gksudo
przez just sudo
.
Możesz użyć tego rozszerzenia Nautilus. Nautilus-gksu .
sudo apt-get install nautilus-gksu
Zainstalowanie go dodaje pozycję „Otwórz jako administrator” w menu prawym przyciskiem myszy nautilus.
Aby otworzyć dowolne pliki z uprawnieniami administratora, wystarczy kliknąć plik prawym przyciskiem myszy i wybrać „Otwórz jako administrator”, tak proste.
Więcej fajnych rozszerzeń można znaleźć na stronie: http://www.techdrivein.com/2010/09/6-useful-nautilus-extensions-and.html
"gksudo "gnome-open $file" &"
na"gksudo "gnome-terminal -x $file" &"