새 서버에서 사용자를 생성하고 해당 사용자로 전환한 다음 기존 사용자를 완전히 삭제하고 싶습니다. 나는 현재 다음을 수행합니다.
# create new user
sudo useradd -m -s /bin/bash newuser
sudo passwd newuser
sudo usermod -aG sudo newuser
# set up user
su - newuser
# delete old user
sudo deluser --remove-home olduser
최종 명령을 실행하면 경고가 표시됩니다 user olduser is currently used by process xxx. returned error code 8. Exiting
. 나는 pkill
사용자의 프로세스를 수행할 수 있다고 믿습니다. 그러나 이러한 작업을 수행하는 업계 표준 방법은 무엇입니까?
작동하는 것 같지만 sudo userdel -r -f olduser
제공되는 로그는 이상적이지 않은 것 같습니다.
userdel: user olduser is currently used by process xxx
userdel: olduser mail spool (/var/mail/olduser) not found
답변1
거의 맞췄지만 중간에 전체 기사가 필요한 두 가지 중요한 단계를 놓쳤습니다. 나는 귀하가 웹 검색을 통해 이를 찾을 수 있고 찾을 수 있다고 믿으며 이러한 단계를 간략한 설명으로 제시합니다.
아니요, 이미 알고 있듯이 su - newuser
아무리 원하더라도 (적어도 대부분의 최신 배포판에서는) 작동하지 않습니다. 모든 이유를 설명하기에는 너무 복잡합니다.
# create new user
sudo useradd -m -s /bin/bash newuser
sudo passwd newuser
sudo usermod -aG sudo newuser
# 1 !!! IMPORTANT STEP !!!
# login on different VT or ssh connection into new user
# 2 !!! IMPORTANT STEP !!!
# logout all sessions for old user, and terminate all the
# processes it may have running after the loguts
# (for example tmux/screen sessions, service processes and whatnot)
# delete old user from the pristine newuser session
sudo deluser --remove-home olduser