LINUX.ORG.RU
решено ФорумAdmin

Как полностью удалить пользователя orangepi на OrangePi?

 , ,


0

1

В ответ на команду sudo deluser orangepi выдаётся это

$ sudo deluser orangepi
Удаляется пользователь «orangepi» ...
Предупреждение: в группе «orangepi» нет больше членов.
userdel: user orangepi is currently used by process 1852
/usr/sbin/deluser: Работа «/sbin/userdel orangepi» завершилась с кодом ошибки 8. Завершение работы.

По команде who

$ who
orangepi ttyFIQ0      2024-05-04 20:33
...

ttyFIQ0 я так понял это UART, и нужно что бы н нём сидел кто то другой. Как это сделать? Что нужно изменить в файле /lib/systemd/system/serial-getty@.service и ему подобных?


UPD для тех кто в танке: пользователя нельзя удалить пока выполнен вход где то ещё.

UPD 2: второй пользователь есть, и все манипуляции проводились из под него или из под рута.



Последнее исправление: nikitalol (всего исправлений: 2)

Вроде как, нужный файл /lib/systemd/system/getty@.service.d/override.conf , но лучше скопировать его в /etc/systemd/system/serial-getty@.service.d/override.conf (создав соотв. каталоги) и править там, чтобы обновление пакетов не откатило исправления.

Править строку ExecStart, имя после опции autologin.

mky ★★★★★
()

Ух ты какой deluser умный, процессы аж проверяет. Я бы просто потёр строчки из passwd и shadow. И сервис после этого бы наверно уже не запустился, если б я заранее про него не подумал.

firkax ★★★★★
()
Ответ на: комментарий от nikitalol

Что именно пробовали? А то пишете про файл /lib/systemd/system/serial-getty@.service, хотя он оверрайднут.

Если эту службу через systemctl остановить, процесс исчезает?

mky ★★★★★
()
Последнее исправление: mky (всего исправлений: 1)
Ответ на: комментарий от firkax

Главное, что особого смысла в проверке запущенных процессов нет. А первое, что приходит в голову практичным ребятам — это определить pid процесса, кильнуть его (с SIGKILL) и сразу запустить deluser. Пока там systemd подумает и перезапустит, deluser уже отработает :)

mky ★★★★★
()
Ответ на: комментарий от firkax

для тугодумов , убираешь автологин пользователя orangepi. создаешь другого пользователя или заходишь под рутом через su Переходишь в TTY где залогин orangepi и выходишь от туда exit. Ну или перезагружаешься. Удаляешь пользователя orangepi

anonymous
()
Ответ на: комментарий от anonymous

создаешь другого пользователя или заходишь под рутом через su

Вот что ты за чушь опять написал? Как у тебя в перечислении через «или» рядом оказалось «создать юзера» и «применить su»? Ты либо выражать свои мысли не умеешь, либо у тебя каша в голове.

firkax ★★★★★
()
Ответ на: комментарий от mky

Да нет, всё логично. Если ты удаляешь юзера и тебе говорят что вот процесс под ним - то ты уже наверно задумаешься нужен ли тебе этот процесс и что с ним будет когда его юзера удалят.

firkax ★★★★★
()
Ответ на: комментарий от anonymous

Прошу прощения не сразу обратил внимание на ответ

Я не понял я захожу под рутом или под тем пользователем которого нужно удалить?

Второй вопрос: имеет ли значение что это именно tty для uart, по которому нужно иметь доступ так как может так выйти что под рукой будет только usb-uart переходник?

nikitalol
() автор топика
Последнее исправление: nikitalol (всего исправлений: 1)
Ответ на: комментарий от nikitalol

Заходишь или под другим пользователем или под рутом, удаляешь автологин ненужного пользователя в tty , если надо делаешь туда автологин нужного пользователя. Если зашёл под другим пользователем выходишь в тту из ненужного и удаляешь. Если под рутом напрямую то тоже, если через Шелл ненужного пользователя то сначала задаешь пароль руту и перезагрузаешься после удаления автостарта

anonymous
()

Ну, да. В последней сборке debian для orange-pi-3b, например, изначально автовход дефолтного пользователя orangepi и на tty1, и на ttyFIQ0

# who
orangepi tty1         2024-05-24 21:35
orangepi ttyFIQ0      2024-05-24 21:35
root     pts/0        2024-05-24 21:35 (10.10.10.100)

Можно редактировать:

# cat /usr/lib/systemd/system/serial-getty@.service.d/override.conf 
[Service]
ExecStartPre=/bin/sh -c 'exec /bin/sleep 10'
ExecStart=
ExecStart=-/sbin/agetty --noissue --autologin orangepi %I $TERM
Type=idle

Если заменить пользователя «orangepi» на того, кого хочется, то именно тот кто и нужен будет

# who
ТотКтоНужен ttyFIQ0      2024-05-24 21:35

Тоже самое и тут (для tty)

/usr/lib/systemd/system/getty@.service.d/override.conf 

Ну или вовсе опустошить/убрать overrid-ы

LaLe
()
Последнее исправление: LaLe (всего исправлений: 1)
11 ноября 2024 г.

Проблема была в пользователе, сидящем на UART, надо купить переходник, зацепится к пинам UART и от туда в целом можно настраивать систему, включая выход из юзера

nikitalol
() автор топика