내 사용자를 "손상"시키는 문제가 있습니다. 이를 이라고 부르겠습니다 olduser
. 로그인 화면에서 멈췄는데 어떤 방법으로도 문제를 해결할 수 없었습니다.
다행히 백업이 있었지만 파일이 모두 남아 있기 때문에 필요하지 않았습니다.
로그인하는 유일한 방법은 새로운 사용자를 통해서였습니다 newuser
. 하지만 내 별칭과 장착 위치는 모두 해당 항목(별칭)에 있거나 olduser
이를 가리키고 있습니다. 또한 내 ssh
요점은 olduser
.
예를 들어 다른 파티션은 에 있고 /media/olduser/
별칭은 을 가리킵니다 /home/olduser/Desktop/
.
그래서,
내 질문은 다음 과 같습니다. olduser
이름을 foo 또는 다른 것으로 바꿀 수 있도록 어떻게 이름을 바꿀 수 있습니까 ?newuser
olduser
궁금하시다면 제 문제와 제가 시도한 몇 가지 해결 방법을 알려드리겠습니다.
Unity가 로드되지 않고, Launcher가 없고, Dash가 나타나지 않습니다.
답변1
- 복구 모드에서 루트 셸로 부팅
- 다음을 사용하여 읽기-쓰기 모드로 파일 시스템 마운트
mount -o remount,rw /
- 생성한 새 사용자를 삭제합니다.
- 파일 에서 사용자 이름을 변경하세요
/etc/passwd
. - 재부팅합니다.
변경 사항을 취소해야 하는 경우 1~2단계를 반복합니다./etc/passwd
답변2
루트에 비밀번호를 제공한 경우 복구 모드로 재부팅하지 않고도 이 작업을 수행할 수 있습니다. 그렇지 않으면 sudo passwd root
이 절차를 시작하기 전에 루트에 비밀번호(예: 를 사용하여)를 제공하거나 재부팅해야 합니다 .
Ctrl-Alt-F1을 누르고 루트로 로그인하십시오. 또는 복구 모드로 재부팅하고 루트 쉘을 불러옵니다.
vipw
와 를 사용하여vipw -s
사용자 이름을 각각 변경/etc/passwd
합니다/etc/shadow
. 예를 들어olduser
두 파일을 모두 로 변경foouser
한 다음newuser
로 변경합니다olduser
.- 사용자의 홈 디렉터리 필드를 변경하는 것을 잊지 마세요.
및 파일 에 대해서도
vigr
동일한 작업을 수행합니다 .vigr -s
/etc/groups
/etc/gshadow
모든 사용자 홈 디렉토리가 있는 디렉토리로 cd합니다. 이것은 거의 확실합니다
/home
.mv olduser/ foouser
mv newuser/ olduser
의 모든 파일에 대한 소유권과 그룹을 변경합니다
olduser/
.chown -R olduser olduser/
chgrp -R olduser olduser/
다음의 모든 파일에 대한 소유권 및 그룹을 변경합니다.
foouser/
chown -R foouser foouser/
chgrp -R foouser foouser/
복구 모드로 재부팅해야 하는 경우 다시 재부팅한 후 로 로그인하세요
olduser
. 그렇지 않은 경우에는 Ctrl-Alt-F7(또는 GUI 로그인 화면에 해당하는 Fn 키)을 누르고 다음으로 로그인하세요.olduser