cp -r --preserve=all
今日は、メインシステムに問題が発生した場合に備えてバックアップをしたかったので、ルートファイルシステムを別のパーティションにコピーしました。私はArch Linuxの自由変形であるParabolaを使用しています。/home
両方のシステムで共有するパーティションは1つだけです。システムをコピーした後(ライブUSBを使用)、パックマンを使用してシステム全体のアップグレードを実行しました(古い)。新しいシステムにログインしようとすると、すべてが問題ないようでDMログイン画面で起動しますが、私のユーザーパスワードは機能しません。だから仮想端末に切り替えてrootでログインしてみましたが、やっぱりできませんでした。
そのため、ライブUSBに戻り、chroot
新しくクローンされたルートパーティションに行き、passwd
ルートを含むすべてのパスワード(使用済み)を更新しました。それから再起動しましたが、同じことが起こりました。それでも私のユーザーアカウントにログインできないか、rootとしてログインできません。
ここで何か抜けましたか?
編集する:
明確にするために、パーティションを「複製」せずにcp
gpartedで作成した新しいパーティションにルートファイルシステム(使用)をコピーしました(明確にするために質問のタイトルを変更します)。したがって、新しいパーティションは親パーティションとは異なるUUIDを持ちます。そのため、レプリケーションシステムを起動するにはgrub.cfg
いくつかの手動調整が必要でした。/etc/fstab
パスワードシステムはパーティションUUIDに関連付けられていますか?これが問題の原因になりますか?
passwd
また、chrootを実行したときにパスワードが正常に更新されたというメッセージが表示されたことを追加したいと思います(その後もまだパスワードは機能しません)。
答え1
パスワードを更新してもログインできない場合は、基本的に問題があるようです。
ライブ USB に戻り、rootsu
権限と非 root 権限と/bin/login
root 権限でルートを設定して試すことをお勧めします。正しいパスワードを取得すると、エラーメッセージが表示されることがあります。
/etc/nsswitch.conf
との内容も確認してみます/etc/pam.d/
。
また、パスワードを削除して(中央の2番目のフィールドを消去して/etc/shadow
)機能していることを確認します。 (すべての問題が解決したら、このユーザーに新しいパスワードを割り当てる必要があります。)
/var/log/auth.log
また、読み取る価値のあるエラー メッセージ (またはそのディレクトリ内の他のファイル) があります。
答え2
問題を発見したと思います。/var/log/pacman.log
私が行ったシステムアップデートの履歴を確認しました。ファイル/etc/pam.d/system-login
が/etc/pam.d/system-login.pacnew
。 pamがログインを処理する方法を変更して、古いファイルでは機能しない可能性があります。
とにかく、もう一度ログインできます。おそらく私の間違いは、chrootでもシステムアップデートを実行したことです。コピーしたら、冗長システムにログインしてそこから更新を実行する必要があるようです。