ホームページ >運用・保守 >Linuxの運用と保守 >Linux システムの一般的な問題の解決策

Linux システムの一般的な問題の解決策

巴扎黑
巴扎黑オリジナル
2017-08-10 11:28:432311ブラウズ

[はじめに] Windows システムでは、システム障害が発生した場合、いくつかの一般的な修復手段を使用してシステムを修復します。Linux システムでも、一般的な障害を解決するために一般的に使用されるいくつかの手段があり、これらも比較的簡単に使用できます。便利。まず、準備も含めてレスキューディスクグループを確立する必要があります

Windows システムでは、システムに障害が発生した場合、いくつかの一般的な修復手段を使用してシステムを修復します Linux システムでもいくつかの一般的な解決策があります。フォルトも比較的使いやすいです。

まず、ブートディスクとルートディスクという 2 つのフロッピー ディスクを含むレスキュー ディスク グループを作成する必要があります。これにより、完全な Linux システムの起動と実行のための独立したサポートを提供できます。あなたがシステム管理者であれば、これは間違いなく必須の日常メンテナンス ツールです。レスキュー ディスク グループの最初のディスクには、Linux システムのブート可能なカーネル プログラム システムが格納され、レスキュー ディスク グループの 2 番目のディスクには、「ルート」ファイル システムを含む完全な Linux システムが格納されます。

緊急ディスクセットを使用してシステムを保守する操作は比較的簡単です。システムを起動するときは、緊急モードに入るために、これら 2 つのディスクを使用してシステムを起動する必要があります。このとき、「root」アカウントを使用します。ただし、ハードディスク上の既存のファイルにアクセスするには、ハードディスクのファイル システムを手動でインストールする必要があります。システムのルート ディレクトリは、レスキュー ディスクのルート ディレクトリを参照するようになりました。ハードディスク ファイル システム内のファイルにアクセスするには、まず指定したディレクトリにファイルをインストールする必要があります。このように、ハードディスク上のファイル システムが /mnt ディレクトリにインストールされている場合、ハードディスク上の元の /etc/passwd ファイルのパスは /mnt/etc/passwd になります。たとえば、次のコマンドを使用して、ext2fs Linux ファイル システムを /mnt ディレクトリの /dev/hda2 ディスクにインストールします: # monut -t ext2/dev/hda2/mnt。

おそらく、私たちが犯す最も一般的な間違いは、直接復元できない重要なファイルを誤って削除してしまうことです。ただし、レスキュー ディスク グループに対応するファイルがある場合は、レスキュー ディスク グループからファイルを見つけてハードディスクにコピーできます。たとえば、ファイル /bin/login が削除されると、システムは正常にログイン インターフェイスに入ることができなくなります。まず、レスキュー ディスク グループを使用してシステムを起動し、ハードディスク ファイル システムを /mnt ディレクトリにインストールします。そして、次のコマンドを使用します:

#cp -a /bin/login /mnt/bin

"-a" オプションは、ファイルをコピーするときにファイル アクセス許可を維持するように "cp" に指示するために使用されます。もちろん、削除された基本ファイルがレスキュー ディスク グループに存在しない場合、この方法は使用できません。ただし、以前にシステムのバックアップを作成したことがある場合は、以前のバックアップを使用してシステムを復元できます。

「ext2fs」タイプのファイル システムを使用している場合は、フロッピー ディスクから「e2fsck」コマンドを実行して、破損したファイル システムを修復することもできます。他のタイプのファイル システムの場合は、対応する「fsck」コマンドを使用できます。ファイル システム破損の一般的な原因は、ファイル システムのステータス、サイズ、空きディスク ブロックなどの情報が含まれるファイル システムの「ヘッダー」 (「スーパーブロック」とも呼ばれます) の損傷です。ファイルシステムの「ヘッダー」が破損している場合、システムがファイルシステムをまったく認識できないため、「e2fsck」コマンドでもこの問題に対処できません。ただし、「ext2fs」タイプのファイル システムは「スーパーブロック」の内容をバックアップし、それをドライバーのブロック グループ境界に保存します。次のコマンドを使用して、「e2fsck」にスーパー ブロックのバックアップを使用するように指示できます:

# e2fsck -b 8193 <partition>

誤ってシステム関数ライブラリ ファイルを破損した場合、または /lib ディレクトリ内のシンボリック リンクを破損した場合、これらのライブラリに依存するコマンド正常に実行できなくなります。最も簡単な解決策は、レスキュー ディスク セットを使用してシステムを再起動し、ハード ディスク ファイル システムを /mnt ディレクトリにインストールしてから、/mnt/lib ディレクトリのライブラリを修復することです。

スーパー ユーザーがパスワードを忘れた場合、システムにアクセスしたり、システムを管理したり、使用したりできなくなります。レスキュー ディスク セットを使用すると、問題を解決できます。ハッカーによってパスワードが変更された可能性があり、そのためにシステム管理者がシステムに正常にアクセスできなくなった場合、つまり、Linux システムが完全に制御を失ったことになるため、できるだけ早くシステムの制御を取り戻す必要があります。通常の解決策はハードドライブをフォーマットしてシステムを再インストールすることですが、これは少し面倒です。ブートディスクとルートディスクの 2 つのフロッピー ディスクを準備し、フロッピー ドライブから起動し、「ルート」ディスクから起動すると、「シェル」プロンプトが表示されます。たとえば、Linux のルート ディレクトリ パーティションを /mnt ディレクトリに「マウント」します。たとえば、Linux がハード ディスクの最初のパーティションにある場合は、コマンド ラインに「mount /dev/hda1 /mnt」と入力し、mnt ディレクトリを入力して名前を変更します。その中にある etc/passwd ファイルをコピーするには、「mv /mnt/etc/passwd /mnt/etc/passwd.bak」と入力し、コマンド cp /etc/passwd /mnt/etc/passwd を使用します。フロッピー ディスクを「etc」ディレクトリにコピーし、ハードディスクから再起動すると、ログイン時にスーパー パスワードは要求されなくなります。最後に mv/etc/passwd.bak passwd コマンドを使用して passwd ファイルを元に戻し、実行します。 passwd コマンドを使用してパスワードをリセットします。システム管理者は、1 つの番号が他の人に長期間使用されるのを防ぐために、パスワードを時々変更する必要があります。

在个人计算机使用Linux系统时,通常都是Linux和MS Windows 9x或MS Windows NT等并存的。由于安装了其他的操作系统,经常会导致原有的Linux系统不能正常启动。这主要是因为,这些操作系统默认为计算机中没有其他的操作系统,因而改写了硬盘的主引导记录(MBR),冲掉了Linux的LiLo系统引导程序。

如果有急救盘组,当然很简单,可以用第一张启动盘启动硬盘的Linux系统,重新运行LiLo命令,就可以将LiLo系统引导程序写回硬盘的主引导记录,重新启动机器即可。但是如果没有制作系统启动盘,没有急救盘组如何恢复硬盘上的Linux系统呢?在这种情况下,如果知道Linux系统在硬盘上的确切安装分区,且有loadlin程序,就可以重新返回Linux系统。 loadlin程序是在DOS下运行的程序,运行它可以从DOS下直接启动Linux系统。在 Red Hat Linux 6.0光盘的 DOSutil/目录下就有这个程序。除此之外,还需要一个 Linux启动内核的映像文件。在 Red Hat linux 6.0光盘的 images/目录下有这个文件--vmlinuz。 例如,在Windows 98系统下,进入DOS的单用户模式,然后运行下述的loadlin命令,即可重新进入Linux系统:

loadlin vmlinuz root=/dev/hda8

其中“/dev/hda8”是Linux系统的“root”文件系统所在的硬盘分区位置。命令执行后,就引导Linux系统用“root”登录后,运行LiLo命令,则可以重新将LiLo装入MBR,至此就可以回到以前多操作系统并存使用的状态了。

也许你不是一个系统管理员,但是随着个人计算机配置的日益提高,在自己的计算机上安装Linux系统已经不是什么新鲜的事了。假设我们的计算机上同时装有Windows和Linux两个操作系统,应该如何启动Linux呢?是否每次都需要重启计算机,通过LiLo引导?其实如果我们在DOS下,有一种简单快速启动Linux的方法,那就是Load Linux。“loadlin.exe”是在DOS下的可执行程序,它可以在纯DOS环境下迅速启动Linux,而且无需重启计算机,通常我们可以在光盘的/kernels目录下找到这个程序。如果不知这个程序被放置于安装盘的何处,可以使用“find -name loadlin*”命令来寻找。找到之后将其复制到DOS分区中,同时还需要复制一份你所使用的Linux内核文件。可以通过Windows直接从光盘复制,也可在Linux环境下使用mcopy命令将文件copy到DOS分区;接着再编写一个Linux.bat的批处理文件,文件内容如下:

c:loadlin c:vmlinuz root=/dev/hda1 ro

其中我们假设loadlin.exe和vmlinuz这两个内核文件都在c盘根目录,而root为Linux根设备,而且Linux处于硬盘第一分区,所以设备名为/dev/hda1,ro意为readonly。以后在DOS下要启动Linux时,运行Linux.bat就可以了。这样启动Linux快速高效,大大减少了系统自检时等待的时间。

如果我们在Xwindows状态下运行Linux时,由于硬件本身的问题或者自己操作上的不当,有时侯可能会导致系统突然失去响应,也就是我们常见到的一种死机现象,其实此时系统并没有死机。我们可以用两个常用的方法来消除这种现象:第一,用键盘上的复合键Ctrl+Alt+Backspace来关闭当前正在运行的任务;第二,首先按住键盘上的Ctrl+Alt+F2复合键,让系统切换到另一个操作台,然后登录到系统,再执行#ps -ax|grep startx命令,这将会列出你的Xserver的进程标识(PID),接着在命令行中输入如下命令就能消除Xwindows下的死机现象:#kill -9 PID_Number,最后通过Alt+F1复合键返回原来的平台。

常见的错误及解决办法还有很多,在这里只是提及了一部分,如果大家还有需要补充的或是本文中有需要纠正的地方欢迎提出,让我们一起提高。


以上がLinux システムの一般的な問題の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。