ここに私がやったことがあります:
最後の行のユーザー名を変更します:tiny
to abc
tiny@tty7:~$ Sudo vim /etc/passwd
tiny:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
abc:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
tiny@tty7:~$ Sudo vim /etc/shadow
[Sudo] passwork for abc:
を示しています
パスワードを変更しなかったが、rootにログインできない!
私はタイプする Ctrl+Alt+F1 tty1
に送信されますが、tinyまたはabcのいずれもパスワードでログインできません
ls ~ -la
を見てみると、次のように表示されます。
drwxr-xr-x 28 abc tiny 4096 Apr 6 03:04 .
ルートにログインするにはどうすればよいですか?また、プロンプトtiny@tty7
のユーザー名がまだ小さいのに、Sudoではabcのパスワードが表示されるのはなぜですか?
編集後に立ち往生した理由は、/etc/shadow
ファイルにはtiny
のパスワードのエントリが含まれていましたが、abc
のエントリは含まれていなかったのに対し、/etc/passwd
ファイルにはエントリが含まれていたためですabc
ではなくtiny
ではありません。 Sudo
が見えると、実行中のプロセスのUIDに基づいてabc
として正しく(パスワードファイルに従って)識別されますが、パスワードとして入力したものと/etc/shadow
に保存された暗号化(ハッシュ)パスワード、abc
のエントリが見つからなかったため、失敗を報告する必要がありました。
shaddy が answer で述べたように、パスワードやシャドウファイルを手で編集しないでください。ルールを破る必要がある場合は、vim
の1回の呼び出しで両方を編集し、別のターミナルウィンドウを使用して変更が正常に機能することを証明するまでvim
を終了しないでください。 、ハッキングを開始する前にファイルのバックアップコピーを保存し、最初にルールを破る理由を再検討してください。これはおそらく良い考えではないからです。
混乱させるため、passwdファイルを手動で編集しないでください。
ユーザー名を変更する適切な方法は次のとおりです。
usermod -l newUsername oldUsername
次に、ホームフォルダーを変更します。
usermod -d /home/newHomeDir -m newUsername
パスワードを変更するには、次を使用する必要があります。
Sudo passwd yourusername
Passwdファイルを元に戻すか、rootでログインできないために編集できない場合は、ライブcdで起動してファイルを元に戻すことをお勧めします。その後、適切な方法を使用します。
使用:vipw
私はこれをFreeBSDで常に使用しており、Ubuntuでも使用できることを確認しました。このページをお読みください: vipwのUbuntuマニュアルページ