ロック:pacnewを使用して/etc/shadowと/etc/grub.dを上書きします。

ロック:pacnewを使用して/etc/shadowと/etc/grub.dを上書きします。

長年にわたってLinuxを使用した後、それほど深刻な間違いを犯したことはありません。もっとよく知っておかなければならなかったのですが、正直なところ、私が何を考えたのか全くわかりません。

私が受け取った小さなエラーメッセージを修正しようとしている間(今は大きな問題とは関係ありません)、「ちょうどpacdiffを実行して古いファイルを上書きしてください」という記事を見つけました。しました。

上書きする前にバックアップを作成する勇気があり、いくつか/etc/shadowのエントリを入力して上書きを中止しましたが、今はrootとすべてのユーザーがロックされています。私も上書きしたので、再起動するのが怖いので、今コンピュータを使用しています/etc/grub.d(バックアップはありません)!バックアップはrootが所有している/etc/shadow私のディレクトリにあるので、/home今は読めませんが、持っています。

pacdiff正確に何をしますか(O)verwrite with pacnew?指示が見つかりました。/etc/shadow ファイルの復元ところで、grub-boot loader今再起動してもいいですか?

私のルートとプライマリパーティションは暗号化されていませんが、LUKS暗号化パーティションがあります。状況が悪化し、暗号化されたパーティションをフォーマットせずに再インストールする必要がある場合は、パスワードを使用してLUKS暗号化されたパーティションを開くことができます/homeか?cryptsetupマウントとオープン情報はLUKSパーティションヘッダに保存されています。ルートアクセス権がないため、どのパスワードを使用しているのかわかりませんが、これがデフォルトであることはほぼ確実です。

どうやって進めますか?私は計画を立てるまでこの機械を消さない。私はデュアルブートManjaro / Windowsを使用しています。起動可能な Manjaro USB を作成し、必要に応じて別のコンピュータを作成できます。どんな助けでも大変感謝します。最も誇りに思った瞬間ではありませんが、良い教訓を得ました。私はこれまで以上に必要です。

答え1

私はManjaroを使ったことがありませんが、Arch Linuxのプロセスはあなたの状況にも適しています。

/homeManjaro Live USBを起動し、Manjaroインストールのルートファイルシステムをマウントし、既存のディレクトリをマウントし、バックアップコピーをその場所に戻すことがshadowできる必要があります。

その後、インストールされたManjaroを起動することもできます。/etc/grub.dこれは、GRUB設定を(再)生成するためにのみ使用され、起動プロセス中には必要ないためです。ただし、含まれているファイルを復元(またはバックアップがない場合は再編集)することが非常に重要です。そうしないと、次回のパッケージ更新によって再起動がトリガされたときにシステムが起動できなくなります(またはもう起動できなくなります)、デュアル起動)危険。 -ブートローダー構成を作成します。

これは、暗号化されたルートファイルシステムがある場合でも機能します。udevすべてのブロックデバイス(MD RAIDアレイまたはLVMボリュームなど)が利用可能になったら、すぐに有効にする必要があります。通常、残りの作業は次のとおりです。

  • あなたの場合、暗号化されたデバイスを開くと、次のことができます。

    cryptsetup open /dev/your_encrypted_device decrypted_device_name
    

    LUKSヘッダーが消去されない限り、パスワードのみが必要です。 (LUKSヘッダーが削除または破損した場合、バックアップがないとデータを回復できません。注意してください。)

  • ファイルシステムをマウントします。たとえば、mount /dev/sdaN /またはmount /dev/mapper/mapped_dev /

lsblkデバイスツリーを閲覧、開いたり、インストールする正しいデバイスを見つけるのに役立ちます(列を参照TYPE)。


pacmanが変更時刻がパッケージデータベースに書き込まれた時刻と一致しない新しいバージョンのファイルをインストールすると、既存のファイルを上書きせずにファイルが.pacnew生成されます。

.pacnewローリングリリースの展開では、パッケージの更新によって重要な変更が発生する可能性があるため、適切なタイミングでファイルを処理することが重要です。たとえば、既存の構成ファイルはインストールされているプログラムのバージョンでは廃止され、他のオプションを必要とするオプションが挙げられます。 Distroメンテナンス担当者は可能な状況をすべて処理することはできず、構成ファイルを確認する作業はユーザーに委ねられます。

pacdiffこのプロセスを支援するために設計されています。パッケージマネージャが追跡したpacnew(および)ファイルを見て、.pacsaveそれを見ることができます。 「(O)verwrite with pacnew」はまさにこれらのことをします。つまり、既存のファイルがバージョンに置き換えられ、.pacnewカスタム構成が失われます。

最も正しいアクションは通常、.pacnew既存のバージョンとファイルのバージョンを確認し、必要に応じてマージすることですが、一部の.pacnewファイルはアクションを取る必要はありません。 Manjaroがこれに関してArchと一致すると仮定すると、これはユーザーデータベース(および含む/etc/passwd/etc/shadowにも当てはまります。「Pacmanが関連するジョブメッセージを出力しない限り」

関連情報