web-dev-qa-db-ja.com

ブートローダーを再実行するにはどうすればよいですか?

Sudo apt-get -f installを実行すると、The link /vmlinuz.old is a damaged linkと次のようになります。

you may need to re-run your boot loader[grub]

完全な出力は次のとおりです。

user@chrubuntu:~$ Sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.13.0-32 linux-headers-3.13.0-32-generic
  linux-image-3.13.0-32-generic linux-image-extra-3.13.0-32-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
user@chrubuntu:~$ Sudo apt-get autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  linux-headers-3.13.0-32 linux-headers-3.13.0-32-generic
  linux-image-3.13.0-32-generic linux-image-extra-3.13.0-32-generic
0 upgraded, 0 newly installed, 4 to remove and 0 not upgraded.
After this operation, 270 MB disk space will be freed.
Do you want to continue? [Y/n] y
Perl: warning: Setting locale failed.
Perl: warning: Please check that your locale settings:
    LANGUAGE = "en
en",
    LC_ALL = (unset),
    LC_TIME = "en",
    LC_MONETARY = "en",
    LC_ADDRESS = "en",
    LC_TELEPHONE = "en",
    LC_NAME = "en",
    LC_MEASUREMENT = "en",
    LC_IDENTIFICATION = "en",
    LC_NUMERIC = "en",
    LC_PAPER = "en",
    LANG = (unset)
    are supported and installed on your system.
Perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_ALL to default locale: No such file or directory
(Reading database ... 232120 files and directories currently installed.)
Removing linux-headers-3.13.0-32-generic (3.13.0-32.57) ...
Removing linux-headers-3.13.0-32 (3.13.0-32.57) ...
Removing linux-image-extra-3.13.0-32-generic (3.13.0-32.57) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.13.0-32-generic /boot/vmlinuz-3.13.0-32-generic
update-initramfs: Deleting /boot/initrd.img-3.13.0-32-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.13.0-32-generic /boot/vmlinuz-3.13.0-32-generic
The link /initrd.img.old is a damaged link
Removing symbolic link initrd.img.old 
 you may need to re-run your boot loader[grub]
Removing linux-image-3.13.0-32-generic (3.13.0-32.57) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.13.0-32-generic /boot/vmlinuz-3.13.0-32-generic
update-initramfs: Deleting /boot/initrd.img-3.13.0-32-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.13.0-32-generic /boot/vmlinuz-3.13.0-32-generic
The link /vmlinuz.old is a damaged link
Removing symbolic link vmlinuz.old 
 you may need to re-run your boot loader[grub]
user@chrubuntu:~$

ブートローダーを再実行するにはどうすればよいですか?

150
TevinYoungz

womble's answer to カーネルのアンインストール後の/ vmlinuzおよび/initrd.imgシンボリックリンクの損傷Server Fault )では、あなたは持っていませんブートローダーがGRUB/GRUB2であるときに、この状況で何かを行うには(ここにあります)。

他の一部のブートローダー(少なくとも LILO )では、ブートローダーの設定を手動で実行する必要がある場合があります。

didGRUBに既存のカーネルをチェックし、その構成を更新するよう指示する必要がある場合、Sudo update-grubを実行するとそうなります。そして、それを実行しても害はありません。ただし、この場合は必要ではありません。

189
Eliah Kagan

Grubの場合、エラーは少し奇妙です。

Aptが新しいカーネルバージョンをインストールすると、/ vmlinuzと/initrd.imgが/vmlinuz.oldと/initrd.img.oldに移動します(この時点で、現在アクティブなカーネルを指していることになります。再び、.old拡張子に注目してください。 「カーネルのアンインストール後の破損したリンク」でリンクされているストーリーとは異なります)、2つの新しいファイル/ vmlinuz /initrd.imgを作成します。

apt-get autoremove(メッセージはapt-get -f installによって生成されたものではない)を実行すると、以前アクティブだったカーネルが削除され(インストール後に自動削除を実行する前に再起動しましたか?)、リンクが無効になります。

カーネル自体の削除が完了すると、自動削除自体がupdate-grubを呼び出します。

run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.13.0-32-generic /boot/vmlinuz-3.13.0-32-generic

したがって:

The link /vmlinuz.old is a damaged link
Removing symbolic link vmlinuz.old 
 you may need to re-run your boot loader[grub]

そのため、自動削除は以下を行います。

  1. 古いカーネルを削除する
  2. update-grubを実行します
  3. update-grubは、削除されたファイルにリンクしている.oldファイルを削除します。

心配する必要はありません:-)

よろしく。

31
Anakin

$ Sudo update-grub

また、古いパッケージを削除/パージしたい場合もできます

$ dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs Sudo dpkg --purge

12
pa75