Czasami podczas korzystania z dowolnej dystrybucji Linuksa większość użytkowników otrzymywała błąd: „użytkownik jest obecnie używany przez proces”. Ten błąd mógł wystąpić podczas zmiany nazwy użytkownika lub usuwania użytkownika. Jedną z przyczyn tego błędu jest to, że użytkownik usuwał lub zmieniał nazwę użytkownika podczas logowania. Jeśli szukasz rozwiązania tego konkretnego błędu, ten poradnik jest dla Ciebie. Upewnij się, że masz zainstalowaną dowolną dystrybucję Linuksa w swoim systemie. W naszym przypadku jest to Ubuntu 20.04 System Linux.
Przykład 01
Po pierwsze trzeba rzucić okiem na błąd. Załóżmy, że masz więcej niż jedno konto na swoim Ubuntu 20.04 system i chcesz usunąć jeden z nich. Mamy więc użytkownika „Saeed” w naszym Ubuntu 20.04 i chcemy go usunąć. Zaloguj się od użytkownika „saeed” i otwórz terminal poleceń. Teraz napisz poniższe polecenie, aby usunąć użytkownika „saeed”. Dane wyjściowe w migawce pokazują, że użytkownik jest już używany przez jakiś proces „3751”.
$ userdel -r saeed
Zabijmy ten proces, aby usunąć tego użytkownika za pomocą polecenia „pkill” i identyfikatora procesu, jak poniżej. To polecenie zabije proces, a użytkownik zostanie wylogowany, a to nie może go usunąć.
$ zabito -9 3751
Kiedy próbujemy użyć polecenia userdel z flagą „if”, aby wymusić usunięcie użytkownika „saeed”, nie działa to również w następujący sposób:
$ userdel -f saeed
Zalogujmy się z innego konta, aby uniknąć tego błędu. Informacje dotyczące identyfikatora procesu „3751” można znaleźć za pomocą poniższego polecenia „ps”.
$ ps aux | grep 3751
Teraz możesz zabić wszystkie procesy, które trzymały użytkownika „saeed”, aby go usunąć lub coś w nim zmienić. W tym celu wykonaj poniższe zapytanie „killall”, po którym następuje nazwa użytkownika i flaga „-u” wraz ze słowem kluczowym „-TERM”.
$ killall -TERM -u saeed
Po usunięciu wszystkich procesów usuniemy użytkownika z tego konta za pomocą poniższego polecenia sudo, po którym następuje słowo kluczowe „userdel”, używając flagi „-r” obok nazwy użytkownika do usunięcia. Usunięcie konkretnego użytkownika może wymagać Twojego aktualnego hasła do konta. Dodaj swoje hasło i naciśnij przycisk Enter na klawiaturze. Wyświetli, że użytkownik został pomyślnie usunięty i nie został już znaleziony.
$ sudo userdel -r saeed
Potwierdźmy usunięcie użytkownika „saeed” za pomocą prostego polecenia „id”. Wyświetli, że nie ma użytkownika. Wypróbuj to w następujący sposób:
$ identyfikator saeed
Przykład 02
Rzućmy okiem na inny podobny przykład, aby właściwie zrozumieć to pojęcie. Załóżmy, że masz inne konto użytkownika w systemie Ubuntu Linux o nazwie „Rimsha” i chcesz usunąć tego użytkownika. Na początku zalogujesz się z konta użytkownika o nazwie „rimsha” i otworzysz w nim terminal. Następnie spróbujesz usunąć użytkownika „Rimsha”, używając polecenia „userdel”, a następnie flagi „-r”, jak poniżej.
$ userdel -r RimszaWyświetli błąd,że bieżący użytkownik, w którym jesteś aktualnie zalogowany, jest już używany przez proces o identyfikatorze procesu 9566. Oznacza to, że nie możesz usunąć tego konta przed zabiciem tego procesu, gdy jesteś aktualnie zalogowany z tego samego konta.
Możesz uzyskać dodatkowe informacje dotyczące rozwiązywania problemów z błędem 9566 za pomocą poleceń „ps” i „aux”, jak poniżej. Musisz podać identyfikator procesu w tym poleceniu.
$ ps aux | grep 9566
Musisz więc przełączyć się na inne konto. Tym razem używaliśmy „aqsayasin” do wprowadzania zmian. Jeśli chcesz wyświetlić listę wszystkich obecnych użytkowników systemu Ubuntu Linux, wypróbuj poniższe polecenie getent w następujący sposób:
$ getent passwd
Z danych wyjściowych widać, że zawiera wszystkie wymienione nazwy użytkowników, których używaliśmy lub jesteśmy aktualnie zalogowani.
Zanim usuniemy użytkownika „Rimsha”, upewnijmy się, że to konto istnieje w naszym systemie Linux. Aby to zobaczyć, wypróbuj poniższą prostą instrukcję identyfikatora wraz z nazwą użytkownika do sprawdzenia. Otrzymasz informacje dotyczące użytkownika, jeśli istnieje, e.sol., identyfikator użytkownika, grupy i identyfikator grupy.
$ id rimsza
Możesz również uzyskać dodatkowe informacje dotyczące użytkownika „Rimsha”, używając poniższego polecenia grep.
$ grep ^rimsha /etc/passwd
Teraz nadszedł czas, aby zabić wszystkie procesy użytkownika „Rimsha”, które trzymały użytkownika „Rimsha”, aby usunąć się. Aby usunąć wszystkie procesy, spróbujemy wykonać poniższe zapytanie „killall”, po którym nastąpi flaga „-TERM” i „-u”, wraz z nazwą użytkownika. Teraz wszystkie procesy zostały zabite, ponieważ obecnie jesteśmy w tym celu zalogowani z innego konta.
$ killall -TERM -u Rimsza
Po zabiciu wszystkich procesów, które wstrzymują proces usuwania, jesteśmy teraz gotowi do usunięcia użytkownika. Używamy tego samego polecenia „userdel”, aby usunąć użytkownika z uprawnieniami sudo oraz flagą „-r” i nazwą użytkownika, który ma zostać usunięty. Do wykonania tego procesu usuwania może być wymagane hasło aktualnie zalogowanego użytkownika. Wpisz hasło i naciśnij klawisz Enter. Widać, że pokazuje, że użytkownik „Rimsha” już nie został znaleziony.
$ sudo userdel - r Rimsza
Potwierdźmy usunięcie użytkownika „rimsha” za pomocą tego samego starego polecenia „id” w powłoce, jak poniżej. Wyświetla informację, że w Ubuntu 20 . nie ma użytkownika „rimsha”.04 System Linux bez błędu.
$ id rimsza
Wniosek
Wreszcie! Rozwiązaliśmy problem z rozwiązywaniem problemów: proces aktualnie używa użytkownika. Pamiętaj, aby wykonać każdy krok tego samouczka, aby lepiej zrozumieć błąd rozwiązywania problemów.