web-dev-qa-db-ja.com

リモートマシン上のfsckルートファイルシステム

コロケーション施設でUbuntu8.04マシンを実行しているマシンでファイルシステムの問題が発生しました。以前はディレクトリでしたが、現在は次のようになっています。

b--xr-SrwT 52 825452087 876163170 56, 97 2021-10-10 05:43 58

これはキャッシュデータだったので、データの損失は気にせず、ファイルシステムを修正したいだけです。問題は、これがルートファイルシステムであるため、fsckを実行するためにマウントを解除できないことです。

だから私の質問は:コロケーションセンターまで車で行く必要なしにルートファイルシステムでfsckを実行するにはどうすればよいですか?

4
itsadok
shutdown -rF now

再起動時に/ etc/fstab内のすべてのディスクのfsckを強制する必要があります。リンク: manシャットダウン

または、再起動のたびにfsckが必要な場合:

cd /
touch forcefsck
reboot
2
David Rickman

また、リモートサーバーで/ etc/default/rcSを編集し、「FSCKFIX = yes」を設定することは、debianおよびubuntuのようなdebian派生物でも良い考えです。

これにより、起動時間fsckに「-y」が追加されるため、リモートサーバーがコンソールにログインしてfsckを実行するのを待ってスタックするリスクはありません。

また、何かが再び発生した場合に備えて、起動(grubのデフォルトを一時的に設定するなど)、sshを実行し、実際のrootfsでfsckを実行できるレスキューパーティションを用意しておくことをお勧めします。現在、このための予備のパーティションがない場合は、スワップパーティションを縮小して、レスキューパーティションを作成するのに十分なスペースを確保できます(デブートストラップを追加できます)。

スワップパーティションを使用できない場合は、ライブCDイメージを起動するようにgrubエントリを設定できます(カーネルとISOのinitrdを使用)...ただし、initrdファイルシステムを変更して次のようにする必要があります。正しいIPアドレスなどを入力し、sshdが実行されていることを確認してください。 clonezilla、gparted、またはsystemrescuecdは、このためのベースとして使用するのに適したライブシステムになります。/bootパーティション/ディレクトリは、これらのファイルを保持するのに十分な大きさである必要があります。

7
cas