Jestem jedną z niewielu osób zarządzających serwerem gier. Na serwerze działa obecnie Ubuntu 14.04, który został zainstalowany zaledwie 3 tygodnie temu.
Wszystko działało dobrze jeszcze kilka dni temu, mieliśmy kilka problemów. Podejrzewam, że ktoś włamał się na nasz serwer SSH i udało mu się poważnie coś zepsuć.
Kiedy próbuję wykonać polecenie sudo
, pojawia się następujący błąd:
sudo: unable to stat /etc/sudoers: No such file or directory
Pierwszą myślą jest to, że plik został usunięty i po prostu trzeba go odtworzyć, jednak ls /etc/
pokazuje, że plik sudoers już istnieje. Co więcej, po edycji za pomocą nano (mojego preferowanego edytora) staje się jasne, że plik jest w pełni taktowany i poprawnie sformatowany.
ls -l
pokazuje również, że plik sudoers ma uprawnienia -r--r----
do -rwxrwx---
rootowania użytkownika i rootowania grupy, które z badań powinny być całkowicie wystarczające, aby sudo mógł odczytać plik, aby mieć pewność, że tymczasowo dałem plik rootowi rootowi (korzystałem z tmuxa do sesji kontrola i mieliśmy już sesję jako root), nadal nie udało się.
Tak więc plik istnieje, zawartość w nim jest poprawna, ma odpowiednie uprawnienia. Co jeszcze może być. Spojrzałem trochę na ludzi, którzy mieli podobne problemy tutaj na askubuntu.com, jednym z rozwiązań, które moim zdaniem brzmiało obiecująco, było utworzenie kopii zapasowej pliku sudoers, a następnie użycie:
apt-get purge sudo
apt-get install sudo
A następnie zamień nowy plik sudo na stary. To niestety nie zadziałało. Aby wykluczyć, że plik sudoers nie zawierał błędów, spróbowałem ponownie rozwiązać problem i spróbowałem uruchomić tylko sudo
z nowo utworzonym plikiem sudoers i dostałem ten sam błąd.
-------- EDYTOWAĆ --------
Dla wszystkich zainteresowanych tym, co zawiera rzekomo nieistniejący plik sudoers, oto odfiltrowana wersja (nazwy użytkowników filtrowane) według żądania: http://paste.ubuntu.com/7781967/
Odpowiedzi:
Dobrze. Naprawiłem swój problem. I tak jak myślałem, to nie był plik.
Rozwiązanie
Miałem do 10 minut temu, zauważyłem tylko, że sudo nie działa. Ponieważ większość mojej pracy odbywa się w tmux, nigdy nie zauważyłem mojego konta użytkownika.
Po pierwszym zalogowaniu dostaję następujący błąd:
-bash: /etc/profile Permission denied
I ustawiłoby mnie na:
I have no name@<ipaddress>
jako moje konto.Zrobiłem więc trochę badań na ten temat i znalazłem więcej wyników niż drugi. W tym jeden wynik, który idealnie pasuje do mojej sytuacji, jak tutaj .
Problem polegał na tym, że w moim folderze / etc / brakowało uprawnienia do wykonywania w grupie. Wykonanie:
chmod g+x /etc
naprawiono problem po wylogowaniu i ponownym zalogowaniu.Dzięki
Dzięki za pomoc w komentarzach, sugestie, które podałeś były nadal cenne i pomogły bardziej zawęzić problem. W końcu było to o wiele prostsze, niż się wydawało.
źródło