follow me

CLFS(1.1.0-Sparc64-Pure64)-chrootへの移行(8)

ここからが、Sparc実機での操作になります。
まずは/mnt/clfs以下をビルドを実施してきたx86機からSparc機へコピーしておきます。
tarで固めたものを展開すれば問題はないかと思います。
NFSでマウントしてしまうのもアリですが。この作業以降、Sparc実機でのビルドが続く為、Sparc機実機のローカルに配置することをお勧めします。

◆Virtual Kernel File Systemsのマウント
# export CLFS=/mnt/clfs
# mkdir -pv ${CLFS}/{dev,proc,sys}
# mount -vt proc proc ${CLFS}/proc
# mount -vt sysfs sysfs ${CLFS}/sys
# mknod -m 600 ${CLFS}/dev/console c 5 1
# mknod -m 666 ${CLFS}/dev/null c 1 3
# mount -v -o bind /dev ${CLFS}/dev
# mount -f -vt tmpfs tmpfs ${CLFS}/dev/shm
# mount -f -vt devpts -o gid=4,mode=620 devpts ${CLFS}/dev/pts

◆Chroot環境への移行
# chroot "${CLFS}" /tools/bin/env -i \
    HOME=/root TERM="${TERM}" PS1='\u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
    /tools/bin/bash --login +h

◆オーナーの変更
# chown -Rv 0:0 /tools
# chown -Rv 0:0 /cross-tools

◆ディレクトリの作成
# mkdir -pv /{bin,boot,dev,{etc/,}opt,home,lib,mnt}
# mkdir -pv /{proc,media/{floppy,cdrom},sbin,srv,sys}
# mkdir -pv /var/{lock,log,mail,run,spool}
# mkdir -pv /var/{opt,cache,lib/{misc,locate},local}
# install -dv -m 0750 /root
# install -dv -m 1777 {/var,}/tmp
# mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
# mkdir -pv /usr/{,local/}share/{doc,info,locale,man}
# mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo}
# mkdir -pv /usr/{,local/}share/man/man{1..8}
# for dir in /usr{,/local}; do
  ln -sv share/{man,doc,info} $dir
done

◆リンクの作成
# ln -sv /tools/bin/{bash,cat,echo,grep,pwd,rm,stty} /bin
# ln -sv /tools/bin/file /usr/bin
# ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib
# ln -sv /tools/lib/libstd* /usr/lib
# ln -sv bash /bin/sh
# mkdir -pv /usr/lib64
# ln -sv /tools/lib/libstd*so* /usr/lib64

◆ビルドフラグの指定
今回は、Ultrasparc2でも動かすことを想定している為、指定は以下になります。
# export BUILD64="-m64 -mcpu=ultrasparc -mtune=ultrasparc"
# echo export BUILD64=\""${BUILD64}\"" >> ~/.bash_profile

◆パスワード、グループ、ログファイルの作成
# cat > /etc/passwd << "EOF"
root:x:0:0:root:/root:/bin/bash
EOF
# cat > /etc/group << "EOF"
root:x:0:
bin:x:1:
sys:x:2:
kmem:x:3:
tty:x:4:
tape:x:5:
daemon:x:6:
floppy:x:7:
disk:x:8:
lp:x:9:
dialout:x:10:
audio:x:11:
video:x:12:
utmp:x:13:
usb:x:14:
cdrom:x:15:
EOF
# exec /tools/bin/bash --login +h
# touch /var/run/utmp /var/log/{btmp,lastlog,wtmp}
# chgrp -v utmp /var/run/utmp /var/log/lastlog
# chmod -v 664 /var/run/utmp /var/log/lastlog
# chmod -v 600 /var/log/btmp

◆Kernel Filesystemsのマウント
# mount -vt devpts -o gid=4,mode=620 none /dev/pts
# mount -vt tmpfs none /dev/shm

関連情報

CLFS(1.1.0-Sparc64-Pure64)-chrootへの移行(8) | 0 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。