Często (cały dzień każdego dnia) mam otwartą kartę terminala Minicom i wykonuję polecenia we wbudowanym systemie Linux z mojego laptopa Ubuntu. Czasami muszę wykonać reboot
polecenie, a czasem wstydzę się przyznać, przypadkowo wykonuję reboot
w niewłaściwej zakładce, a mój laptop robi dokładnie to, co zostało zaprojektowane bez zadawania żadnych pytań ...
Używam Ubuntu 16.04 LTS i próbowałem zainstalować Molly-Guard, ale to nie przyniosło żadnego efektu.
99 razy na 100 Nie zepsułem się, ale mój laptop potrzebuje 10 minut na ponowne uruchomienie i wykonuję reboot
wystarczająco często, aby było to denerwujące.
Czy jest trochę czarnej magii, którą mogę dodać do niestandardowego skryptu bash do konfiguracji okna terminala, który utworzy reboot
mapę do czegoś innego (najlepiej na tę sesję bash)?
reboot
twoje stanowisko pracy.molly-guard
nie działa jest interesujące, ponieważ implementuje również zabezpieczenie w podobny sposób jak inne rozwiązania (/ usr / sbin / reboot, aby przejąć / sbin / reboot). Wspominasz o niestandardowej funkcji konfiguracji okna, czy to już nie działa z PATH?systemd
korzystasz z systemu Linux (którym jest Ubuntu 16.04), użytkownicy jedyni zalogowani do systemu mogą ponownie uruchomić komputer bez podnoszenia uprawnień (tj. Bez logowaniasudo
/su
/ jako zalogowanie jako root). Uważam, że istnieją ustawienia kontrolujące to zachowanie, ale wiele dystrybucji zorientowanych na jednego użytkownika (takich jak Ubuntu) domyślnie je włącza.Odpowiedzi:
W
~/.bashrc
pliku na laptopie ( nie na wbudowanym komputerze) dodaj wiersz:Jeśli naprawdę chcesz uruchomić
reboot
na laptopie, możesz obejść tę funkcję, uruchamiającsudo reboot
lub/sbin/reboot
.Lub możesz uczynić go bardziej przyjaznym, jak sugerował man0v , używając:
Sugeruję wprowadzenie takiej funkcji,
~/.bashrc
ponieważ chcemy, aby była dostępna w interaktywnych sesjach bash.źródło
reboot () { echo 'Reboot? (y/n)' && read x && [[ "$x" == "y" ]] && /sbin/reboot }
Dobra, po pobawieniu się trochę więcej znalazłem dobre rozwiązanie:
Utworzyłem plik bash o nazwie „reboot” w / usr / sbin /, a następnie dodałem pełną ścieżkę / usr / sbin / reboot z przodu $ PATH.
Oto skrypt:
Może nie jest to najlepsze rozwiązanie ...
źródło
/usr/sbin/reboot
może powodować problemy z narzędziami systemowymi, a także programami X11 / GUI, które zależą od domyślnego zachowania/usr/sbin/reboot
.reboot
poleceń./usr/sbin/reboot
, ponieważ w systemie podstawowym nie ma takiego pliku. Dostępnyreboot
jest plik binarny/sbin
.