

Raspberry Pi４上でUbuntu Serverを使っているのですが、ログインパスワードを紛失してしまいました。  
rootも有効にしていたと思うのですが、rootのパスワードもわかりません。

どのようにパスワードをリセットすればいいのでしょうか?

x64であればGRUBやsystemd-bootのところでシェルを起動するようにすればいいのですが、Raspberry Piではどうすればいいのでしょうか?

ディスク暗号化などは行われていません。

また、GUIはインストールされていません。


CC BY-SA 4.0
2022-11-04T04:20:35.520
91984
2022-11-04T07:42:23.813
5246
question
ubuntu raspberry-pi
Raspberry Pi上のUbuntu Serverでログインパスワードをリセットしたい


私が実際に試した方法ではありませんが、少し調べると以下のような方法があるようです。

* * *

### 方法1

RasPi がインストールされた SD カードを別の Linux でマウントし、`/etc/shadow`
から該当ユーザーのパスワードを削除してしまう方法があります。  
(Windows からだとこの方法は使えないかもしれません)

[How do I reset the lost password of a Pi 4 running Ubuntu
server?](https://raspberrypi.stackexchange.com/a/137454/95039)

`/etc/shadow` は `:` 区切りで、2列目がパスワードになります。

[「/etc/shadow」ファイル](https://linuc.org/study/knowledge/510/)

### 方法2

SD カードを別のマシンでマウントし、SD カードの直下にある `cmdline.txt`
を編集することでシングルユーザーモードで起動することができるので、この状態でパスワードの再設定 (リセット) を行うことができます。

正常にリセットできた場合には、`cmdline.txt` の内容を元に戻して通常起動に切り替えるのを忘れずに。

[PaspberryPi3のUbuntuでログインパスワードを忘れたときのお話](https://ochanjanai.net/it/301)

> 編集する内容は、末尾に以下のコードを追加します。末尾というか行末？
[code]

>     rw init=/bin/sh
>  
[/code]

>
> (中略)
>
> microSDカードをラズパイに挿して起動します。  
>  しばらくログが流れますが、ログの流れるのが停止したらEnterキーでも押すとコマンドを入力するプロンプトが表示されます。  
>  ここで `su` コマンドを実行するとrootになれます。  
>  あとは `passwd` コマンドでrootのパスワードの変更してください。


CC BY-SA 4.0
2022-11-04T05:18:33.503
91985
2022-11-04T05:18:33.503
3060
91984
answer


(別な方法)  
passwd ファイルの編集 の方法  
… シャドウパスワード変更するよりは簡単なはず  
(試したことはないけれど)

* * *

手順

  1. 当該 microSD カードを別マシンにマウント (別の microSD 起動でも可)
  2. パスワード情報を一時的に解除

自動マウントが行われるようなら, マウント位置で  
そうでないなら, 以下のような手順で (`mnt/` 以下で) 作業するとよいでしょう

[code]

    $ cat /proc/partitions
    ...
       7       15        276 loop15
       7       16      60408 loop16
       8       16   31166976 sdb
       8       17     218750 sdb1
       8       18   30916975 sdb2
    
    # (自動マウントしてないか確認)
    $ mount | grep sdb
    
    $ mkdir mnt
    $ sudo mount /dev/sdb2 mnt
    $ cd mnt
    $ less etc/passwd
    root:x:0:0::/root:/bin/bash
    bin:x:1:1::/:/usr/bin/nologin
    daemon:x:2:2::/:/usr/bin/nologin
    mail:x:8:12::/var/spool/mail:/usr/bin/nologin
    ftp:x:14:11::/srv/ftp:/usr/bin/nologin
    http:x:33:33::/srv/http:/usr/bin/nologin
    ...
    USER:x:1000:1000:COMMENT:/home/USER:/bin/bash
    
[/code]

登録したユーザーの UID は 1000 のはず  
2項目目の '`x`' はシャドウパスワード使用を意味し, この文字を削除すればパスワードなしに。  
(間違って `/etc/passwd` を編集しないように十分注意のこと)

編集は少なくとも `vim.tiny` や `nano` が利用できるはず  
編集の後処理

[code]

    $ sync
    $ cd ..
    $ sudo umount mnt
    $ rmdir mnt
    
[/code]

あとは この microSD で起動し, 新しいパスワードを設定するとよいでしょう

参考: [passwd](https://linuxjm.osdn.jp/html/shadow/man1/passwd.1.html)


CC BY-SA 4.0
2022-11-04T07:03:14.353
91987
2022-11-04T07:42:23.813
2022-11-04T07:42:23.813
43025
43025
91984
answer