Troubleshooting – Problem z sudo

1.Opis problemu

Po wykonaniu komendy sudo otrzymujemy następujący komunikat:

 sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set 

Prawdopodobna przyczyna – zmiana uprawnnień dla katalogu /usr

 sudo chmod -R 777 /usr/" lub "chown -R user.user /usr/ 

właścicielem ścieżki /usr/bin/sudo powinien być user root i jakakolwiek zmiana prowadzi do powstania takiego błędu.

2. Rozwiązanie

Uruchamiamy serwer w trybie recovery/singlemode user (podczas bootowania klikamy e i w linijce zaczynającej się od linux na końcu dopisujemy init=/bin/bash ##działa na Debian Jessie 8.5 )

następnie wykonujemy następujące polecenia:

 mount -o remount,rw /
 mount --all
 chown root:root /usr/bin/sudo
 chmod 4755 /usr/bin/sudo
 chown root:root /usr/lib/sudo/sudoers.so
 chmod 4755 /usr/lib/sudo/sudoers.so

tyle w teorii (powyższe komendy zadziałały na normalnym systemie niekorzystającym z LVM), w przypadku problemu na serwerze z LVM napotkałem się z problemem braku zamontowania niektórych partycji przy uruchomieniu Singlemode user w moim przypadku /home /usr /var dwie kolejne zamontowały się bez problemu. Niestety brak zamontowania partycji /usr powodował zwracanie komend not found przy próbach wykonania komend. Aby poradzić sobie z tym problemem należy wykonać kroki:

 vgscan --mknodes -v  ##skanowanie pod kątem volume group => pokazuje listę oraz jej rozmiar
 lvscan ##skanowanie pod kątem poszczególnych partycji 

Przykładowy output:

ACTIVE '/dev/VCRYPT/VROOT' [321,30 GiB] inherit
ACTIVE '/dev/VCRYPT/VSWAP' [8,20 GiB] inherit
inactive '/dev/vol/root' [457,95 GiB] inherit
inactive '/dev/vol/swap_1' [7,56 GiB] inherit

W moim przypadku partycje były /usr /home /var były w stanie inactive

vgchange -ay vg00  ##aktywujemy wszystkie partycje z danej grupy 

Montujemy partycję pod dany katalog (aby zobaczyć pełną ścieżkę do partycji możemy skorzystać z fdisk -l)

 mount /dev/dm-2 /usr 

w trybie singlemode zauważyłem, że nazwy bloków były zamienione czyli z systemu zczytałem że partycja /dev/dm-2 jest pod /usr natomiast w przypadku single user partycja była przypisana pod /dev/dm-4

Po wykonaniu wszystkich kroków, hasło/uprawnienia sudo zostały zmienione i bez problemu można uruchomić serwer na nowo.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

ˆ Back To Top