내 노트북에 이 버전의 Ubuntu를 설치했습니다.
└─ $ ▶ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
/etc/passwd
Linux에 대한 지식이 제한되어 있기 때문에 랩탑에 로그인하는 데 사용하는 비밀번호를 사용자에게 수동으로 추가했습니다 . gofoboso
이 사용자에게는 sudo 권한이 있습니다. 다음 두 번째 줄을 추가한 후에는 sudo 권한이 없습니다.
root:x:0:0:root:/root:/usr/bin/zsh
gofoboso:x:0:0:gofoboso:/gofoboso:/usr/bin/zsh
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
/etc/shadow
비밀번호가 파일에 암호화되어 있다는 것을 알고 있으며 이제는 루트 사용자(??)와 동일한 속성을 갖습니다.
─ $ ▶ sudo cat /etc/shadow
[sudo] password for gofoboso:
Sorry, try again.
[sudo] password for gofoboso:
sudo: account validation failure, is your account locked
회사 노트북인데 루트 비밀번호가 없습니다. 온라인에서 찾은 몇 가지 명령을 시도했지만 모두 sudo가 필요합니다. 이거 어떻게 복원하는지 아시는 분 계신가요? 게다가 사용자의 비밀번호를 묻기 때문에 노트북을 다시 시작하거나 종료할 수 없습니다. gofoboso
이는 아마도 현재 루트 비밀번호와 같을 것입니다. 루트가 되지 않고는 문제를 해결할 방법이 없습니다. 누군가 루트 비밀번호를 알고 해당 줄을 제거하면 gofoboso 사용자가 다시 활성화됩니까?
감사해요.
답변1
"단일 사용자 모드"로 들어가야 합니다. "init 1" 명령을 실행하거나 재부팅하고 grub 항목을 수정하여 단일 사용자 액세스 권한을 얻을 수 있습니다(커널 줄의 마지막 단어로 "siingle"이라는 단어를 추가해야 함).
답변2
"라고 쓰셨어요.수동으로 한 줄을 추가했습니다/etc/passwd
" 그리고"루트 비밀번호가 없습니다".
편집 권한이 있다면 /etc/passwd
루트 비밀번호가 없더라도 최소한 어딘가에서는 이미 루트 권한을 갖고 있는 것입니다.
귀하의 설명에 따르면 다음과 같이 비밀번호 파일을 편집했다고 가정합니다.
sudo vi /etc/passwd # NEVER DO THIS, even with a different editor
이 sudo
명령은 루트 권한을 제공하도록 구성할 수 있습니다(편집하려면 루트 권한이 필요하므로 이 경우에는 분명히 그렇습니다 /etc/passwd
). 따라서 루트 쉘을 직접 제공하도록 거의 확실하게 말할 수 있습니다.
sudo -s # Start a shell
sudo bash # Start "bash"
여기에서 루트 비밀번호를 재설정하거나 루트 액세스가 필요한 모든 작업을 간단히 수행할 수 있습니다.
일반적으로 루트에 해당하는 두 번째 사용자 계정을 추가하는 것은 쓸모가 없습니다. 권한 있는 계정에 로그인해서는 안 되며, doas
admin과 같은 도구는 sudo
권한 있는 작업을 위한 관리형 게이트웨이를 제공합니다.
그런데, /etc/passwd
파일 편집은 vipw
설치하기 전에 편집된 비밀번호 파일에 대해 온전성 검사를 수행하는 명령을 사용하여 수행되어야 합니다. (또한 안전하게 세부정보를 편집 /etc/group
하고 /etc/shadow
볼 수 있습니다 man vpiw
.)
sudo vipw # Safely edit the passwd file with the default editor
sudo EDITOR=nano vpiw # Use "nano" to edit the file safely
귀하의 경우 아마도 누락된 것은 항목일 /etc/shadow
수도 있고 항목일 수도 있습니다 /etc/group
. 일부 도구는 (잘못) root
UID 대신 사용자 이름을 확인하기 때문에 이를 추가해도 모든 도구가 새 사용자 계정에서 올바르게 작동하지 않습니다 0
.
시스템의 고유한 로그인 정보가 손상되면 복구 시스템을 시작해야 합니다.시스템 구조) 이를 사용하여 시스템의 손상된 항목을 복구합니다 /etc/passwd
. 많은 질문과 답변이 있습니다유닉스와 리눅스이 문제를 해결하다