Hetznerまたはいくつかの役立つコマンドでUbuntuサーバーを復元する





この小さなチートシートは、実験または更新の失敗時に突然サーバーへのpingを停止したり、 ssh



が落ちたりした人などを対象としています。 簡単に言えば、更新、ハッキングなどの後にサーバーを復元することです。 私の気持ちによると、後者はあまり一般的ではありません。



言及されたhetznerは、そのサービスをしばしば使用しなければならないという事実のために、本質的に非常につかの間です。



再開、パーティションのマウント、chroot



そのため、最初に、たとえば別の再起動後、システムにアクセスできません。 したがって、システムを再インストールするか復元するという2つのオプションが残っています。 VPSの場合、Heznerは単に新しいシステムをローリングします。もちろん、ディスクには何も残っていません。 したがって、我々は確かに回復を選択します。

レスキューから再インストールするには、次のコマンドを使用します。

 installimage
      
      











その後、hetznerは生成されたパスワードを表示します。 管理パネルからサーバーを再起動して接続します。これはssh



ssh root@55.22.33.44



IPアドレスを介して行う方が良いssh root@55.22.33.44





ログインは当然ルートです。



ログイン後、この種類のroot@rescue



chroot



招待で迎えられchroot



色はブルーroot@rescue



変わります



最初に行うことは、ドライブの名前を確認することです。

 ls /dev/[hsv]d[az]*[0-9]* #    : /dev/sda /dev/sda1 /dev/sda2 /dev/sda3
      
      







次に、システムでディスクをマウントします。

 mount /dev/sda3 /mnt
      
      





まだ、パーティションやその他のパーティションには触れません。 マウント後、 /dev /sys /proc



の内容を表示する必要があります/dev /sys /proc



そうでなければ、カーネルなしで放置された場合、配信されません。

 mount --bind /dev /mnt/dev/; mount --bind /proc /mnt/proc/; mount --bind /sys /mnt/sys/
      
      





debian



はこの行を置き換える便利なコマンドがありますが、 ubuntu



では検出されませんでした。

 chroot-prepare /mnt
      
      





その後:

 chroot /mnt;
      
      





これで、他のすべてをマウントできます: /boot





 mount -a
      
      





この段階では、原則として、私たちの管理下にない、最近制御されたシステムがあります。



診断



多くの場合、アップグレードまたはインストールの問題に対処する必要があります。 ここでは、もちろん、何かを詳述することは困難です-ディストリビューションが更新された場合にのみ、 画面でそれを行うことができます

例:

 screen -S upgrade apt-get update apt-get dist-upgrade do-release-upgrade
      
      





最も一般的な問題の1つの理由は、ディスクスペースの平凡な不足です

 df -h
      
      





時々、場所があり、空きノードがないことがあります。 次に、これは更新の失敗とさらなる問題につながります。

 df -i
      
      





安全性


ハッキングまたは破壊された疑いがある場合、最初に行うことは、現在サーバー上にいるユーザーを確認することです。

 who
      
      





誰がどのコマンドを入力したかを確認します。

 last
      
      





物語を見てください

 history
      
      





もちろん、これらはすべて半分の測定値ですが、それにもかかわらずです。

次に必要なもの:





更新とインストール:

 apt-get install rkhunter rkhunter --update
      
      





ルートキット検索:

 rkhunter -c -sk
      
      





Warnin-govは、特に/bin



および/usr/bin



で多くを見つける可能性が高い

まだ代替手段があります:

chkrootkit



をインストールします。

 apt-get install chkrootkit
      
      





ルートキット検索:

 chkrootkit
      
      







回復



/boot



フォルダーが空でgrubがシステムにインストールされていない最悪のシナリオを考えてください。カーネルがなく、ほとんどのパッケージが壊れています。



システム回復



クリーンパッケージアーカイブ

 apt-get clean
      
      





既に削除されたパッケージから削除されていない依存関係を削除します

 apt-get autoremove
      
      







grub2



grub2





 apt-get install grub2
      
      





MBR



grubを書く

 grub-install /dev/sda
      
      





通常のカーネルをインストールまたは再インストールします。

 apt-get install linux-image-xxx-xx-generic --reinstall
      
      





GRUBメニューの更新

 update-grub
      
      







依存関係の競合を解決するために設計されたコマンドを実行します。

 apt-get install -f dpkg --configure -a
      
      







すべてのパッケージを再インストールします。

 apt-get install --reinstall `dpkg --get-selections | grep -v deinstall | awk '{print $1}'`
      
      







問題の内容がわかっている場合は、目的のパッケージを再インストールするだけです。

 apt-get install {_} --reinstall
      
      







最後に、再度実行できます:

 apt-get install -f dpkg --configure -a
      
      







おわりに



Ctrl+D



またはexit



を使用してchroot



を終了した後exit



実行します。

 reboot
      
      







何が起こったのか見てみましょう。 問題が残っている場合は、すべてが新しく、見逃しているものを見て、できる限り/var/log



注意を払い/var/log







推奨されるレシピはすべて万能薬ではありません。 おそらく他の誰かがそのような問題を異なる方法で解決したかもしれませんが、これらのレシピは私を助けてくれました。



便利なリンク:



wiki hetznerレスキューシステム

Ubuntu wiki GRUBリカバリ

スクリーン



All Articles