Wednesday, October 01, 2014

起動時にgrubのメニューを表示させる

新しいカーネルに不具合があった時古いカーネルで起動できるようにする。

$ sudo pluma /etc/default/grub


GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10



# GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=false
GRUB_TIMEOUT=4

に書き換えて保存。

$ sudo update-grub

で /boot/grub/grub.cfg を書き換える。

Mint17のカーネルを3.16にする

日経リナックス2014.9 P60を参考にする。
Synapticで「再読込」してパッケージを最新にする。
bc は入っていたので、 build-essential kernel-package libncurses5-dev をインストールする。

The Linux Kernel Archives から Latest Stable Kernel をダウンロードする。
最新版が linux-3.16.3 だったので、
端末で
$ sudo cp $HOME/Downloads/linux-3.16.3.tar.xz /usr/src
$ cd /usr/src
$ sudo xz -dc linux-3.16.3.tar.xz | sudo tar xvf -
$ cd linux-3.16.3
$ sudo cat /boot/config-`uname -r` | sudo tee ./.config
(sudo ではリダイレクトは使えない)
$ sudo make oldconfig

(Stack protector buffer overflow detection=2)
(3はGCC4.8では対応していない)
(それ以外すべてEnter)
($ sudo make menuconfig)

$ export CONCURRENCY_LEVEL=5(9でもいいかも)

$ sudo make-kpkg clean
$ sudo make-kpkg --initrd --append-to-version reg --revision 1.1 kernel_image kernel_headers

終了を1時間ほど待つ

/etc/kernel/postinst.d/ に initramfs-tools か initramfs のスプリクトがあることを確認する。

端末で
$ sudo dpkg -i /usr/src/linux-image-3.16.3reg_1.1_amd64.deb
$ sudo dpkg -i /usr/src/linux-headers-3.16.3reg_1.1_amd64.deb

/boot/System.map-3.16.3reg
/boot/config-3.16.3reg
/boot/initrd.img-3.16.3reg
/boot/vmlinuz3.16.3reg
 の4つのファイルが出来ていることを確認する。

システムを再起動する。

再起動後端末で
$ uname -r
カーネルバージョンが新しくなっていればOK