Consolehelper
Z Fedora Wiki
Wstęp
Jak bardzo denerwuje Cię to: musisz zmienić drobną rzecz, ale system Ci nie pozwala. Musisz więc otworzyć konsole, wklepać "su -" hasło, przypomnieć sobie albo co gorsza znaleźć nazwę programu, który chcesz uruchomić i ścieżki, którą masz wstukać ...a może po prostu jedno proste okienko o hasło?
W całej zabawie pomoże nam consolehelper.
Program używa PAM (Pluggable Authentication Modules) i GUI okienek dialogowych do odpytania o hasło root. To pozwala łatwo uruchomić każdą aplikację z GUI.
- Uwaga!
Upewnij się, że istnieją plik (jak nie to utwórz) o takiej zawartości (opis robię z Fedora 11, wydaje mi się, że wcześniej było coś inaczej rozmieszczone)
cat /etc/pam.d/config-util
a w nim:
#%PAM-1.0 auth sufficient pam_rootok.so auth sufficient pam_timestamp.so auth include system-auth account required pam_permit.so session required pam_permit.so session optional pam_xauth.so session optional pam_timestamp.so
oraz plik
cat /etc/security/console.apps/config-util
z jednym parametrem
USER=root
Geany z okienkiem o hasło
Geany to wygodny i lekki edytor, którego używam do wszystkich edycji. Również plików dostępnych tylko dla roota. Jeśli jeszcze nie masz:
yum install geany
Chcielibyśmy mieć aplikację geany-super uruchamianą z takim okienkiem jak systemowe konfiguratory. Wykonujemy więc:
ln -s /usr/bin/consolehelper /usr/local/bin/geany-super
Tworzymy plik dla PAM odpowiedzialny za autoryzację:
mcedit /etc/pam.d/geany-super
wypełniamy:
#%PAM-1.0 auth include config-util account include config-util session include config-util
tworzymy też drugi plik:
mcedit /etc/security/console.apps/geany-super
i tu wpisujemy, który program i na jakich prawach ma być tak naprawdę uruchomiony:
. config-util PROGRAM=/usr/bin/geany SESSION=true FALLBACK=true
pozostaje zrobić skrót w menu:
mcedit /usr/local/share/applications/geany-super.desktop
o zawartości
[Desktop Entry] Name=Geany SuperUser Comment=Edytuj ustawienia Fedory jako Root Icon=/usr/share/pixmaps/badge-small.png Type=Application Exec=/usr/local/bin/geany-super Terminal=false Categories=System;Settings; X-Desktop-File-Install-Version=0.15
Skrót jest dostępny w menu pod System > Administracja > Geany SuperUser
Dla wygody użytkownik może utworzyć skrypt nautilusa (GNOME). Opcja będzie dostępna w menu pod prawym klawiszem myszy.
Tworzymy plik (już jako zwykły użytkownik):
geany $HOME/.gnome2/nautilus-scripts/geany-super
o zawartości
geany-super $NAUTILUS_SCRIPT_SELECTED_URIS
i już możemy szybko i bezpiecznie edytować pliki z /etc. Opcja powinna być dostępna od razu lub po zresetowaniu nautilusa, ostatecznie ponownym zalogowaniu.
Nautilus uruchamiany z prawami Root
Chcielibyśmy mieć działającego podobnie nautilusa. Wykonujemy więc:
ln -s /usr/bin/consolehelper /usr/local/bin/nautilus-super
Tworzymy plik:
mcedit /etc/pam.d/nautilus-super
wypełniamy:
#%PAM-1.0 auth include config-util account include config-util session include config-util
drugi plik:
mcedit /etc/security/console.apps/nautilus-super
wypełniamy:
. config-util PROGRAM=/usr/bin/nautilus SESSION=true FALLBACK=true
link w menu:
mcedit /usr/local/share/applications/nautilus-super.desktop
zawartość:
[Desktop Entry] Name=Nautilus SuperUser Comment=Przeglądaj pliki Fedory jako Root Icon=/usr/share/pixmaps/password.png Type=Application Exec=/usr/local/bin/nautilus-super Terminal=false Categories=System;Settings; X-Desktop-File-Install-Version=0.15
Skrót jest dostępny w menu pod System > Administracja > Nautilus SuperUser
Podobnie jak dla geany-super możemy utworzyć skrypt nautilusa (GNOME). Opcja będzie dostępna w menu pod prawym klawiszem myszy.
Tworzymy plik (już jako zwykły użytkownik):
geany $HOME/.gnome2/nautilus-scripts/nautilus-super
o zawartości
nautilus-super $NAUTILUS_SCRIPT_SELECTED_URIS
i już możemy szybko i bezpiecznie dostać się do katalogu /root. Opcja powinna być dostępna od razu lub po zresetowaniu nautilusa, ostatecznie ponownym zalogowaniu.
linki
- masz u siebie sporą dokumentację, wystarczy wpisać polecenie
rpm -qd pam - Pluggable Authentication Modules (PAM) - redhat.com/docs
- BecomingRoot - wiki.centos.org
- How to run a program from GNOME menu with root privileges
- The Linux-PAM Guides

