Shuttle XS36V4にGentooをインストールする

前置き

当サイトのサーバを、Thinkpad X100eからShuttleのベアボーンXS36V4にリプレースしました。例によって、Gentooのインストールメモを書いておきます。

Gentoo

XS36V4はBIOSブートに非対応で、EFIブートする必要があります。これは初体験でした。ブート用のUSBメモリを作ろうとしたのですが思ったようにいかず、結局、SystemRescueCdを使いました。文字通り、緊急時ブート用のCDです(Gentooベース)。

パーティション

# parted
  (parted) mklabel gpt
  (parted) mkpart primary fat32 1 201
  (parted) mkpart primary linux-swap 202 4298
  (parted) mkpart primary ext4 4299 64GB
  (parted) set 1 boot on
  (parted) print
  (parted) quit
# mkfs.vfat /dev/sda1
# mkswap /dev/sda2
# swapon /dev/sda2
# mkfs.ext4 /dev/sda3

インストール

# mount /dev/sda3 /mnt/gentoo
# date   # UTCでOK。
# cd /mnt/gentoo
# tar xvjpf STAGE3-TAR-BALL
# tar xvjf PORTAGE-SNAPSHOT-TAR-BALL
# vi etc/make.conf
# vi etc/locale.gen
    en_US ISO-8859-1
    ja_JP.UTF-8 UTF-8

# cp -L /etc/resolv.conf /mnt/gentoo/etc
# mount -t proc none /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys
# mount --rbind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile

# emerge --sync
# eselect news read new
# emerge --oneshot portage
# locale-gen
# ln -s /usr/share/zoneinfo/Japan /etc/localtime
# hwclock --localtime --hctosys
# emerge vim gcc glibc linux-headers linux-firmware gentoo-sources
# etc-update

# cd /usr/src/linux
# make menuconfig
# make && make modules_install

# vi /etc/fstab
# vi /etc/conf.d/hostname
# vi /etc/conf.d/net
# vi /etc/issue
# cd /etc/init.d
# ln -s net.lo net.eth0
# rc-update add net.eth0 default
# passwd
# vi /etc/rc.conf
    UNICODE="yes"
# vi /etc/conf.d/keymaps
    keymap="jp106"
# vi /etc/conf.d/hwclock
    clock="local"

Grub

# vi /etc/portage/make.conf
    GRUB_PLATFORMS="efi-64"
# emerge sys-boot/grub
# mkdir /boot/efi
# mount /dev/sda1 /boot/efi
# mkdir /boot/efi/efi/grub
# cp /usr/share/grub/{unicode.pf2,ascii.pf2} /boot/efi/efi/grub/
# mkdir /boot/efi/efi/boot
# grub2-mkimage -d /usr/lib/grub/x86_64-efi -O x86_64-efi -p ""
      -o /boot/efi/efi/boot/bootx64.efi part_gpt fat ext2 normal
      chain boot configfile linux multiboot efi_gop
      # ext2で、ext3/ext4も読める。
# cp /usr/lib/grub/x86_64-efi/*.mod /boot/efi/efi/boot/
# cp /usr/lib/grub/x86_64-efi/*.lst /boot/efi/efi/boot/ 
# vi /boot/efi/efi/boot/grub.cfg
    set prefix(hd0,gpt1)/efi/boot
    pager=1
    timeout=3

    menuentry "Gentoo Linux" {
      set root=(hd0,gpt3)
      linux /boot/bzImage root=/dev/sda3 ro fastboot splash=silent ...
          ... quiet threadirqs pcie_aspm=force rootfstype=ext4
}

NTP

# emerge ntp
# vi /etc/conf.d/ntp-client
    NTPCLIENT_OPTS="-s -b -u \
      0.jp.pool.ntp.org 1.jp.pool.ntp.org \
      2.jp.pool.ntp.org 3.jp.pool.ntp.org"
# rc-update add ntp-client default

リブート

# grep -v rootfs /proc/mounts >/etc/mtab
# exit
# umount -a
# reboot

X11(よく覚えてない)

# emerge --ask @x11-module-rebuild
# emerge -av $(qlist -IC x11-drivers)

layman(途中で挫折?)

# emerge layman
    # オーバーレイを管理するツール
# echo "source /var/lib/layman/make.conf" >> /etc/portage/make.conf
    # laymanは環境変数PORTDIR_OVERLAYを随時修正するので
    # それをPortageのmake.confが反映するようにする
# layman -f -o http://anders-larsson.github.io/gentoo-overlay/repositories.xml -a anders-larsson
    # -oから、-aという名前のパッケージをフェッチ(-f)してオーバーレイへインストール
# layman -L
    # リモートのオーバーレイ
# layman -l
    # ローカルのオーバーレイリスト
# emerge simplescreenrecorder

postgres

# emerge postgresql-server
# cat /etc/conf.d/postgresql-9.3
    →PGDATAとDATA_DIRを確認
# emerge --config =dev-db/postgresql-server-9.3.3
# vi /etc/postgresql-9.3/pg_hba.conf
    →METHODがtrustになっていることを確認
    →host all all 192.168.24.1/24 trust を追加
# su postgres
$ createuser -a -d -P -E -W maru
$ createuser -a -d -P -E -W river125
$ createuser -a -d -P -E -W wwwuser
$ exit
データの引っ越し
$ pg_dumpall -c >all.sql
$ pg_restore -e -f all.sql template1

lm_sensors

Kconfig
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y
CONFIG_SENSORS_CORETEMP=y
/etc/portage/make.conf
USE=lm_sensors
# emerge lm_sensors
# sensors-detect
# rc-update add lm_sensors default
# sensors
acpitz-virtual-0
Adapter: Virtual device
temp1:        +26.8 C  (crit = +90.0 C)

coretemp-isa-0000
Adapter: ISA adapter
Core 0:       +54.0 C  (high = +105.0 C, crit = +105.0 C)
Core 1:       +54.0 C  (high = +105.0 C, crit = +105.0 C)
Core 2:       +55.0 C  (high = +105.0 C, crit = +105.0 C)
Core 3:       +55.0 C  (high = +105.0 C, crit = +105.0 C)

hdparm

# emerge hdparm
# rc-update add hdparm default
# vi /etc/conf.d/hdparm
    sdb_args="-S241"   ; sleep in 30 mins

lxdm

/etc/lxdm/lxdm.conf
session=/usr/bin/startx

UEFIブートUSB

Gentooインストール後に再チャレンジ。何か、スッキリとしなかったけど、結局、成功したっぽい。

# emerge parted dosfstools
# wget -o /var/tmp/systemrescuecd-x86-4.2.0.iso
    http://sourceforge.net/projects/systemrescuecd/files/latest/download?source=pdlp
# parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart esi fat32 0% 100%
(parted) set 1 boot on
(parted) print
(parted) quit
# mkfs.vfat -F 32 /dev/sdb1
# mount -o loop,ro /var/tmp/systemrescuecd-x86-4.2.0.iso /mnt/cdrom
# cp -r /mnt/cdrom/* /mnt/usbmem/
# grub2-mkimage -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi -p ""
    -o /mnt/usbmem/efi/boot/bootx64.efi part_gpt fat ext2 normal chain
    boot configfile linux multiboot efi_gop
# cp /usr/lib/grub/x86_64-efi/*.mod /mnt/usbmem/efi/boot/
# cp /usr/lib/grub/x86_64-efi/*.lst /mnt/usbmem/efi/boot/
# vi /mnt/usbmem/efi/boot/grub.cfg
    pager=2
    timeout=5
    default=0
    
    menuentry "Rescue CD" {
            linux /isolinux/rescue64 scandelay=1
            initrd /isolinux/initram.igz
    }
Last modified:2014/10/24 19:00:27
Keyword(s):
References:[サーバ管理・Linux関連]
This page is frozen.