Czy istnieje sposób, w jaki mogę sprawić, aby sudo
polecenie dawało mi uprawnienia na okres dłuższy niż domyślny?
sudo
Wymaganie instalacji wielu pakietów może być uciążliwe z powodu konieczności wprowadzania hasła, więc byłoby miło, gdyby istniało polecenie lub konfiguracja, które można wykonać, aby wpłynąć na okres użytkowania.
command-line
permissions
sudo
password
Powiedz mi dlaczego
źródło
źródło
su
? Zawsze?sudo -i
a masz skorupę korzenia, gotową dla każdego, aby pomóc sobie stopić się w stopach przez tak długi czas jak ktoś taki ...su
potrzebuje roota, aby mieć hasło. Domyślnie użytkownik root Ubuntu nie ma hasła. Dlatego nie możeszsu
rootować.su
działa tutaj zgodnie z przeznaczeniem. Spróbuj z każdym użytkownikiem, który ma hasło.sudo su
działa dobrze, choć trochę powtarzalnie.Odpowiedzi:
Zachowanie
sudo
jest skonfigurowane w/etc/sudoers
pliku. Istniejetimestamp_timeout
opcja odpowiedzialna za ponowne monitowanie użytkownika o hasło po określonym czasie.Od ludzi sudoers
Aby zmienić to ustawienie, wykonaj następujące czynności:
sudo visudo
.visudo
jest używany specjalnie do edycji/etc/sudoers
pliku i domyślnie używanano
edytora tekstu.Znajdź linie zaczynające się od
Defaults
. Dodaj następujący wierszgdzie x to liczba minut między kolejnymi monitami
Zapisz plik za pomocą Ctrl+O
źródło
Od
man sudoers
:Jak widać, domyślny limit czasu
sudo
to 15 minut. Możesz zmienić tę wartość w/etc/sudoers
.Nie edytujesz bezpośrednio
/etc/sudoers
, zamiast tego użyj,visudo
aby to zrobić.Od
man visudo
:Więc wpisz
sudo visudo
terminal, który otworzy/etc/sudoers
plik wnano
edytorze tekstu.Poszukaj tej linii:
I dodaj, gdzie X to czas, który chcesz ustawić w minutach.
timestamp_timeout=X
Jako przykład:
Jeśli podasz 0, zawsze będziesz pytany o hasło. Jeśli podasz wartość ujemną, limit czasu nigdy nie wygaśnie.
Po zakończeniu zapisz i wyjdź.
Zobacz RootSudoTimeout
źródło
Spróbuj tego .
Uruchom następujące polecenie w terminalu:
Przewiń w dół do linii, która wygląda następująco:
Zmień to na na przykład:
Zmień 30 na czas (w minutach), który ma poczekać, aż upłynie limit czasu. Możesz również zmienić go na 0, jeśli chcesz, aby hasło było wyświetlane przy każdym uruchomieniu sudo, lub -1, jeśli nie chcesz, aby hasło było wyświetlane. Naciśnij Ctrl+, Xaby zakończyć edycję, Y, aby zapisać zmiany i Enter, aby wyjść.
Oto źródło: http://lifehacker.com/make-sudo-sessions-last-longer-in-linux-1221545774
źródło
Możesz edytować
/etc/sudoers
plik (za pomocąsudo visudo
: bądź ostrożny) i dodać linię podobną dogdzie
myname
jest twój identyfikator użytkownika. Wartość limitu czasu jest w minutach. Możesz użyć wartości -1, aby nigdy nie wygasać, a następnie wpisać,sudo -k
aby zabić uwierzytelnianie, więc ponownie potrzebujesz hasła.Możesz też dodać wpis, że określone polecenie w ogóle nie potrzebuje hasła.
źródło
sudo -k
o ręcznym unieważnieniu buforowanego uwierzytelnienia.Nie mogę uwierzyć, że najprostsze polecenie:
nie jest tu wymienione. Przełącznik „-s” daje konsolę z uprawnieniami roota, które działają do momentu wyjścia z niej. Nie ma potrzeby przeczesywania ustawień domyślnych.
źródło
sudo
: każde polecenie jest rejestrowane (abyś mógł zobaczyć, co zrobiłeś). Tracisz to logowanie po otwarciu powłoki roota.Wydaje się, że wszystkie pozostałe odpowiedzi koncentrują się na zmianie domyślnego limitu czasu, po upływie którego należy ponownie wpisać hasło
sudo
. Jeśli jednak chcesz po prostu móc uruchamiać polecenia jako root bez wcześniejszego wprowadzania wszystkich poleceńsudo
, możesz uzyskać powłokę root z:lub
lub
Chociaż wszystkie z nich po prostu uruchamiają pojedynczy proces jako root, ten pojedynczy proces, o którym mowa, tak się składa, że jest powłoką, która pozwoli ci uruchomić tyle innych procesów, ile chcesz jako root bez dalszej potrzeby wpisywania
sudo
lub hasła. :)Oczywiście, z wielką mocą wiąże się wielka odpowiedzialność, nie rób głupot itp.
źródło
Po wyświetleniu jednego zbyt wielu pytań od użytkowników, którzy zmodyfikowali pliki konfiguracyjne i byli zdezorientowani, dlaczego ich zmiany zostały zastąpione po aktualizacji pakietu, zauważę, że jeśli chcesz zmodyfikować
timestamp_timeout
, lepiej zrobić to, tworząc plik/etc/sudoers.d
zamiast modyfikować/etc/sudoers
bezpośrednio.Więc powinieneś to zrobić
(nazwa pliku może być dowolna, o ile nie zawiera kropki (
.
) ani końcówki tyldy (~
)). Zamiast otwierać/etc/sudoers
w wybranym edytorze, otworzy się/etc/sudoers.d/timeout
, zwykle jako pusty plik, ponieważ nie istnieje. Połóż swóji zapisz jak zwykle. Jeśli więc pojawi się nowa wersja
/etc/sudoers
, nie musisz wybierać między instalacją nowszej wersji lub zachowaniem zmian - automatycznie będziesz mieć obie te opcje.źródło
Jeśli szukasz rozwiązania, które nie zmienia pliku konfiguracyjnego , na przykład gdy chcesz, aby token działał dłużej dla określonej sesji lub jeśli ma zastosowanie tylko po wyraźnym działaniu, możesz spróbować:
Zasadniczo poprzedni kod odświeżał token sudo co 4 minuty , poprzez proces uruchamiany w tle.
Rzeczywiście, zgodnie z
sudo
instrukcją: „domyślny limit czasu hasła dla zasad bezpieczeństwa sudoers wynosi 5 minut ”. Zatem w zależności od zasad specyficznych dla systemu, możesz dostosować ilość czasu, przez który pętla przechodzi w tryb uśpienia między dwoma cyklami.źródło