Управление на потребители

Отстраняване на грешки Usermod Процес в момента използва потребител

Отстраняване на грешки Usermod Процес в момента използва потребител

Понякога, докато използват каквато и да е дистрибуция на Linux, повечето потребители получават грешка: „Потребителят в момента се използва от процеса“. Тази грешка може да е възникнала при промяна на потребителското име или изтриване на потребител. Една от причините за тази грешка е, че потребителят е изтривал или променял име на потребител, докато е влизал. Ако търсите решения за тази конкретна грешка, този урок е за вас. Уверете се, че имате инсталирана някоя от Linux дистрибуцията във вашата система. В нашия случай това е Ubuntu 20.04 Linux система.

Пример 01

Първо, трябва да погледнете грешката. Да предположим, че имате повече от един акаунт във вашия Ubuntu 20.04 и искате да изтриете един от тях. И така, имаме потребител „Saeed“ в нашия Ubuntu 20.04, и ние искаме да го изтрием. Влезте от потребителя „saeed“ и отворете командния терминал. Сега напишете командата по-долу, за да изтриете потребителя „saeed“. Изходът в моментната снимка показва, че потребителят вече е използван от някакъв процес „3751“.

$ userdel -r saeed

Нека убием този процес, за да изтрием този потребител, като използваме командата „pkill“ и идентификатора на процеса, както е показано по-долу. Тази команда ще убие процеса и потребителят ще бъде излязъл, докато това не може да изтрие потребителя.

$ pkill -9 3751

Когато опитваме командата userdel с флага „if“, за да изтрием принудително потребителя „saeed“, той също не работи както следва:

$ userdel -f saeed

Нека влезем от другия акаунт, за да избегнем тази грешка. Можете да намерите информацията относно идентификатора на процеса „3751“, като използвате командата по-долу „ps“.

$ ps aux | grep 3751

Сега можете да убиете всички процеси, които държат потребителя „видян“, за да го изтриете или да промените нещо в него. За целта изпълнете заявката по-долу „killall“, последвана от името на потребител и флага „-u“ заедно с ключовата дума „-TERM“.

$ killall -TERM -u saeed

След изтриването на всички процеси, ние ще изтрием потребителя от този акаунт, използвайки командата по-долу sudo, последвана от ключовата дума “userdel”, докато използваме флага “-r” заедно с потребителското име на потребителя, което трябва да бъде изтрито. За да изтриете конкретния потребител, може да е необходима паролата на текущия ви акаунт. Добавете паролата си и натиснете бутона Enter от клавиатурата. Ще изведе, че потребителят е бил успешно изтрит и вече не е намерен.

$ sudo userdel -r saeed

Нека потвърдим изтриването на потребителя „saeed“ с помощта на простата команда „id“. Ще изведе, че няма потребител. Опитайте, както следва:

$ id saeed

Пример 02

Нека да разгледаме друг подобен пример, за да разберем правилно тази концепция. Да предположим, че имате друг потребителски акаунт в системата на Ubuntu Linux, наречен „Rimsha“, и искате да изтриете този потребител. В началото ще влезете от потребителския акаунт на име „rimsha“ и ще отворите терминала в него. След това ще се опитате да изтриете потребителя “Rimsha”, докато използвате командата “userdel”, последвано от флаг “-r”, както е показано по-долу.

$ userdel -r Римша

Ще ви покаже грешка, че текущият потребител, в който сте влезли в момента, вече се използва от процес с идентификатор на процеса 9566. Това означава, че не можете да изтриете този акаунт, преди да убиете този процес, докато в момента сте влезли от същия акаунт.

Можете да получите допълнителна информация относно отстраняването на грешка 9566, като използвате командите „ps“ и „aux“, както е показано по-долу. Трябва да предоставите идентификатора на процеса в рамките на тази команда.

$ ps aux | grep 9566

Така че, трябва да преминете към друг акаунт. Този път използвахме “aqsayasin”, за да направим промени. Ако искате да изброите всички текущи потребители на системата Ubuntu Linux, опитайте следната команда getent, както следва:

$ getent passwd

От изхода можете да видите, че той съдържа всички споменати потребителски имена, които използвахме или в момента сме влезли.

Преди да изтриете потребител „Rimsha“, нека се уверим, че този акаунт съществува в нашата Linux система. И за да видите това, изпробвайте долната проста инструкция Id заедно с потребителското име, което трябва да бъде проверено. Ще получите информацията относно потребителя, ако той съществува, напр.ж., потребителски идентификатор, групи и групов идентификатор.

$ id rimsha

Можете също така да получите допълнителна информация относно потребителя “Rimsha”, като използвате командата grep по-долу.

$ grep ^ rimsha / etc / passwd

Сега е време да убием всички онези потребителски “Rimsha” процеси, които държат потребителя “Rimsha” да се изтрие. За да изтрием всички процеси, ще се опитаме да изпълним заявката по-долу „killall”, последвана от флага „-TERM” и „-u”, заедно с името на потребител. Сега всички процеси са унищожени, защото в момента сме влезли от друг акаунт, за да направим това.

$ killall -TERM -u Римша

След като убихме всички онези процеси, които задържат процеса на изтриване, вече сме готови да изтрием потребителя. Използваме същата команда „userdel“, за да изтрием потребителя със sudo привилегии и флага „-r“ и потребителско име на потребителя, който трябва да бъде изтрит. Може да е необходима влязлата в момента потребителска парола за изпълнение на този процес на изтриване. Въведете паролата и натиснете клавиша Enter. Можете да видите, че показва, че потребителят „Rimsha“ вече не е намерил.

$ sudo userdel - r Rimsha

Нека потвърдим изтриването на потребителски „rimsha“, използвайки същата стара команда „id“ в черупката, както по-долу. Той показва изхода, че в Ubuntu 20 няма потребителски „rimsha“.04 Linux система без грешка.

$ id rimsha

Заключение

Накрая! Решихме грешката за отстраняване на неизправности: процесът в момента използва потребителя. Уверете се, че сте изпълнили всяка стъпка от този урок за по-добро разбиране на грешката при отстраняване на неизправности.

Как да покажете OSD наслагване в приложения на цял екран за Linux и игри
Играта на цял екран или използване на приложения в режим на цял екран без разсейване може да ви откъсне от съответната системна информация, видима в п...
Топ 5 карти за залавяне на игри
Всички сме виждали и обичаме поточни игри в YouTube. PewDiePie, Jakesepticye и Markiplier са само някои от най-добрите геймъри, които са спечелили мил...
Как да разработите игра на Linux
Преди десетилетие не много потребители на Linux биха прогнозирали, че любимата им операционна система един ден ще бъде популярна игрална платформа за ...