блог-форум о программировании
Вы не вошли.
Из "http://ftp.osuosl.org/pub/funtoo/distfi … _zfs_*.iso"
wget http://ftp.osuosl.org/pub/funtoo/distfiles/sysresccd/sysresccd-4.5.2_zfs_0.6.4.iso
Если получение IP-адреса по DHCP вас устраивает, то ручную настройку сети пропускаем. У меня же адресам, выданным по DHCP режется скорость шейпером на маршрутизаторе, а мне для настройки это совсем не в тему. Поэтому я при запуске из образа выбираю вариант "gentoo nodhcp". После загрузки запускаю ifconfig, смотрю название сетевого интерфейса и настраиваю его:
# # - - - ручная настройка сети
$ ifconfig eno16777736 inet 192.168.1.18 netmask 255.255.255.0 broadcast 192.168.1.255
$ route add default gw 192.168.1.1
$ echo "nameserver 192.168.1.1" > /etc/resolv.conf
# # - - - запуск SSH-сервера
$ time /etc/init.d/sshd start
$ passwd
$ sgdisk -Z /dev/sda
$ sgdisk --new=1:0:250M -t 8300 -c 1:"Linux filesystem" /dev/sda
$ sgdisk --new=2:0:+32M -t 2:EF02 -c 2:"BIOS boot partition" /dev/sda
$ sgdisk --new=3:0:-0 -t 3:BF00 -c 3:"Solaris root" /dev/sda
Должно получится нечто подобное:
root@sysresccd /root % sgdisk -p /dev/sda
Disk /dev/sda: 83886080 sectors, 40.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): B5CBDDF3-0BE8-4F01-BDEC-DBE62C8FE03E
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 83886046
Partitions will be aligned on 2048-sector boundaries
Total free space is 4061 sectors (2.0 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 512000 249.0 MiB 8300 Linux filesystem
2 514048 579583 32.0 MiB EF02 BIOS boot partition
3 579584 83886046 39.7 GiB BF00 Solaris root
Форматируем и монтируем:
$ mkfs.ext2 -m 1 /dev/sda1
$ zpool create -f -o ashift=12 -o cachefile=/tmp/zpool.cache -O normalization=formD -m none -R /mnt/funtoo tank /dev/sda3
$ zfs create -p tank/funtoo
$ zfs create -o mountpoint=/ tank/funtoo/root
$ zfs create -o mountpoint=/home tank/funtoo/home
$ zfs create -o mountpoint=/usr/src tank/funtoo/src
$ zfs create -o mountpoint=/usr/portage -o compression=off tank/funtoo/portage
$ zfs create -o mountpoint=/usr/portage/distfiles tank/funtoo/portage/distfiles
$ zfs create -o mountpoint=/usr/portage/packages tank/funtoo/portage/packages
$ cd /mnt/funtoo
$ mkdir boot
$ mount /dev/sda1 boot
$ hwclock --systohc
$ cd /mnt/funtoo
$ wget http://build.funtoo.org/funtoo-stable/pure64/intel64-ivybridge-pure64/2015-06-03/stage3-intel64-ivybridge-pure64-funtoo-stable-2015-06-03.tar.xz
$ tar xpf stage3-intel64-ivybridge-pure64-funtoo-stable-2015-06-03.tar.xz
$ mount -t proc none proc
$ mount --rbind /dev dev
$ mount --rbind /sys sys
$ cp -f /etc/resolv.conf etc
$ mkdir etc/zfs
$ cp /tmp/zpool.cache etc/zfs
$ env -i HOME=/root TERM=$TERM chroot . bash -l
$ cd /usr
$ wget http://ftp.osuosl.org/pub/funtoo/funtoo-current/snapshots/portage-latest.tar.xz
$ tar xf portage-latest.tar.xz
$ rm portage-latest.tar.xz
$ cd /usr/portage
$ git checkout funtoo.org
$ emerge --sync
$ emerge -auDN @world
Нужно привести к виду:
# <fs> <mountpoint> <type> <opts> <dump/pass>
/dev/sda1 /boot ext2 defaults 0 2
$ nano -w /etc/fstab
Сперва правим /etc/portage/make.conf, у меня Core i7, в VMWare я "передал" 2 процессора по 2 ядра:
CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=core-avx-i -O2 -pipe"
CXXFLAGS="${CFLAGS}"
CPU_FLAGS="avx aes mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"
CPU_FLAGS_X86="avx aes mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"
MAKEOPTS="-j5"
ACCEPT_KEYWORDS="~amd64"
Далее ...
$ emerge genkernel
$ genkernel kernel --no-clean --no-mountboot
$ emerge zfs --autounmask-write
$ cd /etc/portage
$ mv .*_package.accept_keywords package.accept_keywords
$ cd /usr/portage
$ zpool status
$ zfs list
$ grep -v rootfs /proc/mounts > /etc/mtab
$ rc-update add zfs boot
$ echo "sys-boot/grub libzfs -truetype" >> /etc/portage/package.use
$ emerge grub
$ grub-install /dev/sda
$ echo "sys-kernel/genkernel zfs" >> /etc/portage/package.use
$ emerge genkernel
$ genkernel all --zfs --no-clean --no-mountboot --callback="emerge @module-rebuild"
Правим /etc/boot.conf (версии смареть самостоятельно)
"Funtoo ZFS" {
kernel kernel-genkernel-x86_64-3.19.3-1~exp1
initrd initramfs-genkernel-x86_64-3.19.3-1~exp1
params real_root=ZFS=tank/funtoo/root
params += dozfs=force
}
Далее:
$ emerge boot-update
$ grub-mkconfig -o /boot/grub/grub.cfg
$ boot-update
$ cd /
$ rm stage3-latest.tar.xz
$ passwd
$ exit
$ umount -l proc dev sys boot
$ swapoff /dev/zvol/tank/swap
$ cd /
$ zpool export tank
$ reboot
... продолжение следует
:: Мои программные ништяки ::
Вне форума
[ Сгенерировано за 0.101 сек, 7 запросов выполнено - Использовано памяти: 2.32 Мбайт (Пик: 2.72 Мбайт) ]