*nixを学ぼうと努力していますが、基本命令まではかなりうまくやっているようで、「モニター」型の命令などもたくさん理解したようです…
xyzの設定などの操作はやや簡単です。しかし、問題を解決/診断して修正する方法を学び始めたいと思います。たとえば、私のウェブサイトにアクセスしても読み込まれない場合...最初に確認する必要があるものは何ですか?そんなこと。
それで、何かが間違っているときに何をすべきか、何を探し始めるべきか、何が間違っているのかを特定して解決する方法などについての良い本があると思いました。それについて振り返るべきですか?
良い本がありますか?ここに投稿する前にいくつかの調査をしました。これまでに、この本のほとんどはインストール、バックアップ、および一般的な構文に焦点を当てているようです。しかし、これは消化するのがとても簡単です...私はより良い探偵であり、* nixのトラブルシューティングになるのに役立つものを探しています...
ps - 私は現在centOS 5.3を使用していますが、私が知っている限り多くのものが普遍的で、* nixシステムから* nixシステムとして機能するので、CentOS専用である必要はないと思います...
編集する:
3冊の本で終わりました。
Linuxサーバーハッキング、2巻(出版制限のためリンクを上げることはできませんが、最初のリンクで簡単に閲覧できます)
答え1
私が知る限り、このトピックに関する本はありません。これにより、トラブルシューティングの経験を得ることができます。システムのさまざまなコンポーネントがどのように連携するかを理解することで、問題をよりよく解決できます。
サイトが読み込まれていない場合の例では、これらの現象は次の理由で発生することがわかりました(リストは排他的ではありません)。
- DNSを確認できません。
- ドメイン名が期限切れ
- パーティションスペースが不足しています。
- Apacheが存在しないか、権限のないログファイルに書き込もうとします。
- サーバーにメモリが不足しています。
- Apacheが実行されていません
- メモリキャッシュがオフになっています
- MySQLがダウンしました
- mysqlが起動しましたが、過負荷がかかりました。
- ApacheがMaxClientsに達しています。
- 誰かがコードの内容を変更してコードが破損しています。
- 誰かがCMSをアップグレードしましたが、故障しました。
- ファイル権限エラー
- .htaccessが変更されました。
- 一部のプロセスはサーバー上のすべてのリソースを占有します。
- Webサイトに必要なシステムの一部のパッケージが変更、アップグレード、または削除されました。
上記では、digとwhoisを使用してDNSとドメイン名の有効期限の問題を確認できます。 SSH経由でサーバーに接続するときに遅くて遅い感じですか?システムリソースを使用することがあります。
Apacheは実行中ですか? MaxClientsに到達したかどうかを確認できますが、pgrep httpd | wc -l
なぜ今MaxClientsに達しているのですか? MySQLが実行されていますか?どのくらいのクエリが実行されていますか?時間がかかりますか?
ファイルを変更した人はいますか?ウェブサイトのホームページに移動して実行し、find . -mtime -2
過去2日間に行われた変更を確認してください。問題があるかどうか、サイトのエラーログを確認してください。問題があるかどうか/var/log/messagesを確認してください。
ご覧のとおり、Webサイトを読み込むために連携する必要がある多くのコンポーネントがあり、これらのコンポーネントがどのようにやり取りするかを理解し、問題の原因となる可能性がある各コンポーネントを削除する方法を知っておく必要があります。これを行う方法を知ることは経験に付属しています。 1つの問題を解決する方法を失う可能性がありますが、これは、次の問題を解決する経験を提供します。赤いニシンは問題の原因ではありませんが、少なくともシステムの対応するコンポーネントを理解するようになりました。