OSTRZEŻENIE - NIE URUCHAMIAJ WYMIENIONEGO KOMENDY
Wygląda więc na to, że zrobiłem coś głupiego, delikatnie mówiąc. Próbowałem zmienić uprawnienia do kilku plików w katalogu, z których wszystkie zaczynały się .
od odczytu / zapisu tylko dla sudo / root.
Wydaje mi się, że moja próba zmiany kilku plików naraz zrobiła coś okropnie globalnego. Będąc w katalogu (nie byłam w katalogu głównym), biegnąłem sudo chmod 600 .*
i dobrze, teraz piszę to z mojego telefonu ... W tej chwili mam otwarte okno terminala, ale jestem całkiem pewien, czy laptop pójdzie spać, jestem całkowicie skończony. Zabawne, że oznacza to, że pytanie jest pilne.
Aha, i wydaje się, że to zmieniło uprawnienia cholernie blisko wszędzie, jak się domyślam. Nie mogę nawet uruchomić poleceń ls
lub cd ..
. Próba błędu cd /home/brian
lub cd ~
podanie błędu bash: cd: /home/brian: Permission Denied
i każda próba sudo
polecenia mówi tylkobash: /usr/bin/sudo: Permission Denied
Obawiam się, że uruchomię się ponownie, nie mam pojęcia, czy coś jest wbudowane w odzyskiwanie po czymś tak głupim, ale pomyślałem, że spróbuję zapytać tutaj przed pogorszeniem sytuacji. Jestem całkiem nowym Linuksem, ponieważ mój główny system operacyjny przekonwertował i ostatnio trochę go popierałem, ale och, ten trochę mnie gryzie. Wszelkie przemyślenia na temat rzeczy do spróbowania byłyby niezmiernie docenione.
EDYCJA: Chciałem wyjaśnić, w jaki sposób / gdzie to polecenie zostało wykonane. Zostało to wykonane z /.atx $
dowolnego katalogu, ale więcej szczegółów poniżej.
Gdy byłem zalogowany jako moja zwykła nazwa użytkownika brian
, miałem otwarty terminal, /.atx
który zawierał trzy pliki tylko tekstowe typu konfiguracyjnego. Każda nazwa pliku zaczyna się od .
. Ten katalog / nazwa / pliki nie są częścią wspólnego pakietu, tylko arbitralny zestaw konfiguracji, które programowo poruszałem. Pliki zawierały informacje o ciągach połączenia z serwerem SQL i po prostu chciały je częściowo zasłonić.
.*
twoje polecenie rozszerzyło się ..
o katalog nadrzędny katalogu, w którym byłeś. Na przykład, gdybyś tam był, /home/brian
uprawnienia /home
byłyby ustawione na 600 i nie miałbyś uprawnienia do przeglądania /home
katalogu. Czy możesz w swoim otwartym terminalu wykonaćls -ld /*
/root
nie/
byłeś w nim, kiedy to zrobiłeś (z tego, co widzę w twoim pytaniu), co oznacza, że twój.*
globalny przechwycony/root
folder (.
odniesienia do bieżącego katalogu roboczego) wraz ze wszystkimi plikami / katalogami które zaczynają się od wiodącej kropki. Nie jestem pewien, czy istnieje sposób, aby to zmienić w systemie, ale prawdopodobnie można uruchomić komputer z USB na żywo i stamtąd cofnąć. Nie traktuj tego jednak jako 100% odpowiedzi, tylko myśl.