近況〜PCとカスタムLiveCDをメンテしてます #3

昨日のつづき
今日は、LiveCDから作業するんでは無くメインの Gentoo で起動して chroot する。
LiveCD のカーネルは ALSA を無効にしてるので音楽すら聞けず淋しいから。
昨日は、/mnt/custom/customcd/files/ に chroot しましたが、今日は /dev/sda5 の /home 直下に掘ってあるディレクトリに直接入ります。
$ su -
# export sysrcd=/home/customcd/files
# mount -o bind /dev $sysrcd/dev
# mount -vt devpts devpts $sysrcd/dev/pts
# mount -vt tmpfs shm $sysrcd/dev/shm
# mount -vt sysfs sysfs $sysrcd/sys
# mount -vt proc proc $sysrcd/proc
# mount -o bind /run $sysrcd/run
# chroot $sysrcd /usr/bin/env -i \
> TERM=$TERM HOME=/root PATH=/bin:/usr/bin:/sbin:/usr/sbin \
> /bin/bash --login
# source /etc/profile && env-update
【注】行頭の “>” は、PS2(第二プロンプト)です。

パッケージのアップデートは、朝起きたら全て終了していたので今日はカーネルを再構築する。

「カーネルのバージョンは上げる、ソースは emerge で取得して楽をしたい」

という気になったので、layman を活用して SystemRescueCd の overlay からソースもパッチも頂く事にした。
  1. portage ツリーは SourceForge の git リポジトリにあるので、まずは git のインストール。(参照
    # emerge -av dev-vcs/git
  2. 次に portage ツリーの取得
    # cd /usr/local
    # git clone git://git.code.sf.net/p/systemrescuecd/code systemrescuecd-code
  3. portage-overlay の所在を /etc/make.conf に書く
    PORTDIR_OVERLAY="/usr/local/systemrescuecd-code/portage-overlay"
  4. laymanのデータベースに教え、eix のデータベースを更新する
    ※以前のカスタマイズで eix は追加済み
    # layman -S
    # eix-update
  5. 最新(SystermRescueCd-3.8.1)のstdカーネルソースとパッチを取ってシンボリックリンクを貼る
    # emerge -1av std-sources
    # ln -svf linux-3.4-std /usr/src/linux
  6. gitにコンフィグもあるので頂く
    # cd /usr/src/linux
    # make mrproper
    # cp /usr/local/systemrescuecd-code/kernelcfg/config-std-i586.cfg .config
  7. Makefile を書き換える
    EXTRAVERSION = -custom
  8. oldconfig を実行し、modules_prepare のみをやっておく
    # make oldconfig
    # make modules_prepare
  9. リポジトリを追加したので、もう一度システムのアップデートをやる
    # emerge -uDNav @world
ここまでやって休憩(カーネルにALSAを追加しようかなぁ……

コメント

このブログの人気の投稿

米 トランス脂肪酸使用規制へ

手の平で操作する空中マウス OZUPAD

BusyBox HTTPD で Drupal を動かそう

Android の RUU から rom.zip を取り出す

radiko.jp の再生、録音で rtmpdump が Segmentation fault

Alpine LinuxのAPKBUILDに挑戦

VirtualBoxのキーリピート現象