archlinux で zfs ( alez を利用）

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/9a2a2e91-9772-1a5b-4484-872f627b130f.png)


https://www.youtube.com/watch?v=fK_JGVti5y8 に数学の世界地図があります
次の図のうち　pinkのアンダーラインが自分が工学部でかじった部分です
![math.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/c1a7c2a1-be61-9570-04d8-11a68979fb20.png)



##本試行で使ったPCは　RAID 0 , BIOS の古いDellのサーバーT3500で,ｚｆｓの扱えるファイルサイズは　百万TBに惹かれてしました|　

|https://wiki.archlinux.jp/index.php/ZFS_%E3%81%AB_Arch_Linux_%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB|
|:---|
|より|
|手動で ZFS を使って Arch をインストールするのは手間ですが、簡単にインストールができるスクリプトとして **ALEZ** や **install-raidz** が存在します|
|とのこと|


|Using ZFS in Linux is not as simple as other file systems. The ZFS on Linux code is not integrated in the Linux kernel due to **license issues**.  Therefore, **native support by distributions is missing**.|
|:---|

https://github.com/danboid/ALEZ/releases のisoをUSBに焼いて　alezにてインストールを開始して
![1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/caa6d965-00b6-a9c9-16a9-de07ded866cd.jpeg)

で stable でなく　**longterm** を選ぶと


# pacman -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 archzfs is up to date
:: Starting full system upgrade...
 there is nothing to do
とエラーはなくなる

##理由は
Arch Linux is a distribution that by default runs the latest stable Linux kernel. 
A major kernel update can break OpenZFS support until a newer version of OpenZFS is released.
It is recommended to run Arch Linux using the long-term support (LTS) Linux kernel. 

詳しくは
https://hatahata50.blogspot.com/2019/12/arch-zfsarchlinux-alez.html



##寄り道
|https://www.y-history.net/appendix/wh1301-063_1.html　より|
|:---|
|第１次イラン＝ロシア戦争|
|イランの領土であったカフカス地方（コーカサス地方）の領有を目指すロシアは、１８０４年にイランのカージャール朝との戦争を起こして勝利し、１８１３年にゴレスターン条約を締結して、カフカス地方のグルジアと北アゼルバイジャンを獲得した。|
|第２次イラン＝ロシア戦争|
|１８２６年、ロシアは再びイランとの戦争を開始し、士気の上がらないイラン軍を破り、１８２８年に不平等条約であるトルコマンチャーイ条約を押しつけた。それによってイランは古都タブリーズとともにカフカス地方をロシアに割譲した。さらに同年、ロシアはオスマン帝国とのロシア＝トルコ戦争の戦端を開いた。このようなロシアの中央アジアから西アジアにかけての南下政策は**イギリスのインド支配を脅かす**ものとして、イギリスは強く警戒するようになった。|
|https://ja.wikipedia.org/wiki/%E5%8D%97%E4%B8%8B%E6%94%BF%E7%AD%96 より |
|シベリア鉄道の全線開通が迫る1902年、大韓帝国の支配権をロシアと争う日本と、ロシアの海洋進出を恐れるイギリスにより、日英同盟が締結される。1904年日露戦争が勃発し、朝鮮進出も絶望的になると、ロシアは中央アジア進出を積極的に行うようになった。|


あと　普通に　https://hatahata50.blogspot.com/2014/11/arch-linuxdhcpd-aur-pxe.htmlのように　インストすると
![1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/01900c0f-a211-d7c2-7990-b2e3e0e10927.jpeg)
になります。
　

なお

```
# zpool list
NAME    SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
zroot   270G  2.88G   267G        -         -      -     1%  1.00x    ONLINE  -





# zpool status
  pool: zroot
 state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
	still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
	the pool may no longer be accessible by software that does not support
	the features. See zpool-features(5) for details.
  scan: none requested
config:

	NAME                                                            STATE     READ WRITE CKSUM
	zroot                                                           ONLINE       0     0     0
	  /dev/disk/by-id/scsi-3600508e000000000c605f314d0440c0a-part2  ONLINE       0     0     0

errors: No known data errors



# cat /etc/fstab 
# zroot/ROOT/default
zroot/ROOT/default  	/         	zfs       	rw,noatime,xattr,posixacl	0 0

# zroot/data/home
zroot/data/home     	/home     	zfs       	rw,xattr,posixacl	0 0

# zroot/boot/grub
zroot/boot/grub     	/boot/grub	zfs       	rw,xattr,posixacl	0 0



grubは
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-f9ce106307cd824f' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt
	insmod zfs
	set root='hd1,gpt2'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//sas/disk@10200,gpt2' --hint-bios=hd1,gpt2 --hint-efi=hd1,gpt2 --hint-baremetal=ahci1,gpt2  f9ce106307cd824f
	else
	  search --no-floppy --fs-uuid --set=root f9ce106307cd824f
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/ROOT/default@/boot/vmlinuz-linux-lts root=ZFS=zroot/ROOT/default rw  loglevel=3 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/ROOT/default@/boot/initramfs-linux-lts.img
}

```

--------

## post install

https://hatahata50.blogspot.com/2019/12/arch-zfsarchlinux-alez.html
でアドレスもらって

[nvme@nvme-i3 ~]$ ssh zzz@192.168.17.17
とsshでzfsに入って
suして

[root@archlinux zzz]# pacman -S openntpd
[root@archlinux zzz]# systemctl enable openntpd
[root@archlinux zzz]# systemctl start openntpd

[root@archlinux zzz]# pacman -S xorg xorg-xinit xfce4
[root@archlinux zzz]# echo 'startxfce4' > /home/zzz/.xinitrc

[root@archlinux zzz]# pacman -S sddm
[root@archlinux zzz]# sddm --example-config > /etc/sddm.conf
[root@archlinux zzz]# systemctl enable sddm
[root@archlinux zzz]#pacman -S otf-ipafont fcitx-im fcitx-configtool fcitx-mozc ghostscript

[root@archlinux zzz]#cat  /home/zzz/.xprofile
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx

[root@archlinux zzz]# chown -R zzz /home/zzz/

[root@archlinux zzz]# pacman -S  dhcpcd
[root@archlinux zzz]# systemctl restart dhcpcd
[root@archlinux zzz]# systemctl enable dhcpcd
[root@archlinux zzz]# halt -p



------

**あとwifiのために**

```
pacman -S networkmanager **network-manager-applet**
systemctl enable NetworkManager.service
systemctl disable dhcpcd
```

-------

## 理解のために
１）　netbsd -> https://e-yuuki.org/netbsd/zfs.html
２）　archlinux -> https://wiki.archlinux.org/index.php/Install_Arch_Linux_on_ZFS
3)   本質は　-＞　https://kiljan.org/2018/09/23/a-reference-guide-to-zfs-on-arch-linux/
4)  https://gihyo.jp/admin/serial/01/ubuntu-recipe/0597 より
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/180c8a2c-7b51-7fec-a83a-601b7408124b.png)


##小さな技
pacman -Q| cut -f 1 -d " " | sed "s/^/pacman -Sy /g" -


## UEFI なパソコンの場合は
![ng.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/a31dea5b-50ee-9fdd-b106-06c24b8c49a4.png)


![1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/df5a859c-1bf9-1eec-a482-e92c7d599922.jpeg)

USB接続ハードディスクのときは　　systemd-boot を選んだほうがいいようです

現在これで

```
cat /etc/fstab 
# zroot/ROOT/default
zroot/ROOT/default  	/         	zfs       	rw,noatime,xattr,posixacl	0 0

# zroot/data/home
zroot/data/home     	/home     	zfs       	rw,xattr,posixacl	0 0

# /dev/sda1 LABEL=zroot
UUID=BA83-2505      	/mnt/efi  	vfat      	rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro	0 2

# /mnt/efi/env/zedenv-default
/mnt/efi/env/zedenv-default	/boot     	none      	rw,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro,bind	0 0



# gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.4

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 488397168 sectors, 232.9 GiB
Model: 00AAKX-753CA1   
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): B83C9131-AF42-4CC6-90A1-917D125EE1F6
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 488397134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         4196351   2.0 GiB     EF00  
   2         4196352       488397134   230.9 GiB   BF00  <---そらーりす



# df
Filesystem         1K-blocks    Used Available Use% Mounted on
dev                  4013672       0   4013672   0% /dev
run                  4022892     960   4021932   1% /run
zroot/ROOT/default 233475200 2597248 230877952   2% /
tmpfs                4022892   58068   3964824   2% /dev/shm
tmpfs                4022892       0   4022892   0% /sys/fs/cgroup
tmpfs                4022892       4   4022888   1% /tmp
zroot/data/home    231036288  158336 230877952   1% /home
/dev/sda1            2093048   50824   2042224   3% /mnt/efi
tmpfs                 804576      12    804564   1% /run/user/1000




 
# zpool list
NAME    SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
zroot   230G  2.63G   227G        -         -      -     1%  1.00x    ONLINE  -



 
# zpool status
  pool: zroot
 state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
	still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
	the pool may no longer be accessible by software that does not support
	the features. See zpool-features(5) for details.
  scan: none requested
config:

	NAME         STATE     READ WRITE CKSUM
	zroot        ONLINE       0     0     0
	  /dev/sda2  ONLINE       0     0     0

errors: No known data errors



面倒なのは
df
Filesystem         1K-blocks    Used Available Use% Mounted on
dev                  4013676       0   4013676   0% /dev
run                  4022900     996   4021904   1% /run
zroot/ROOT/default 233436928 3735424 229701504   2% /
tmpfs                4022900   36108   3986792   1% /dev/shm
tmpfs                4022900       0   4022900   0% /sys/fs/cgroup
tmpfs                4022900       4   4022896   1% /tmp
zroot/data/home    229897728  196224 229701504   1% /home
/dev/sda1            2093048   50828   2042220   3% /mnt/efi
tmpfs                 804580       8    804572   1% /run/user/1000

 
$ du /mnt/efi
50596	/mnt/efi/env/zedenv-default
50600	/mnt/efi/env
96	/mnt/efi/EFI/systemd
96	/mnt/efi/EFI/BOOT
4	/mnt/efi/EFI/Linux
200	/mnt/efi/EFI
8	/mnt/efi/loader/entries
20	/mnt/efi/loader
4	/mnt/efi/ff0ef90dca7a453b93a0705c4ebbcfb4
50828	/mnt/efi
なので　どうなふうに起動してるのだろう？


```


-----
##以下がでて　オンボードのオーディオデバイスから音が出なかった時は　

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/0e897d9f-f615-c96d-f47a-45d82084bab4.png)
しかし　USBオーディオデバイスをつけたら認識
外しても　オンボードのオーディオデバイスを認識して音出しOK

別のPCでは
pulseaudio　を　pacman したらOKでした



----------------------
----------------------
----------------------
##以下は個人的感想です。

aletzをデスクトップ１台　ノート２台いれてますが　ノートのうちの１台がwifiに関して不安定です。
つまり**ある特定のwifi ルーター**下では　zfsなノートのwifiを切断しておかないと　端末さえ立ち上がりません。
したがって　例えばchromiumを立ち上げてから　あとでwifiを接続するようなことになります。


|https://gihyo.jp/admin/serial/01/ubuntu-recipe/0597?page=1|
|:---|
|上より　ー>　ZFSは非常にメモリを使うファイルシステムです。ZFS on LinuxのFAQにも「Hardware Requirements」として，「⁠ECCの利用を強く推奨」「⁠最良のパフォーマンスを得るためには8GB以上のメモリを。2GB以下でもきちんと動きはするが，重複削除（dedup）機能を使うより多くのメモリが必要になる」とあります。|
|「RHELがLVM+XFS，   openSUSEがbtrfsを推しているので，   UbuntuはZFSだ！」とかそういう短絡的な発想ではないはずです⁠|


##btrfsと比較した結論なのですが、少なくとも2020/1/1の時点では zfsはまだ未熟です。ファイルシステムにおける抽象化が激しすぎてアマチュアはコントロールしにくい。比較のためMBR下の　btrfsなmanjorolinuxを載せます

```
cat /etc/fstab 
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=0b42a2af-30a6-46ec-bce7-2e75ff249652 /              btrfs   subvol=@,defaults,noatime,space_cache,autodefrag 0 1
UUID=0b42a2af-30a6-46ec-bce7-2e75ff249652 /home          btrfs   subvol=@home,defaults,noatime,space_cache,autodefrag 0 2
UUID=252f9740-b482-4d32-94be-b406e67c4345 swap           swap    defaults,noatime 0 2




 fdisk -l
ディスク /dev/sda: 271.77 GiB, 291789340672 バイト, 569901056 セクタ
ディスク型式: VIRTUAL DISK    
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x433e0d3a

デバイス   起動  開始位置  終了位置    セクタ サイズ Id タイプ
/dev/sda1            2048 549419007 549416960   262G 83 Linux
/dev/sda2       549419008 569901029  20482022   9.8G 82 Linux スワップ / Solaris





# df
ファイルシス   サイズ  使用  残り 使用% マウント位置
dev              4.9G     0  4.9G    0% /dev
run              4.9G  1.4M  4.9G    1% /run
/dev/sda1        262G  7.1G  254G    3% /
tmpfs            4.9G  121M  4.8G    3% /dev/shm
tmpfs            4.9G     0  4.9G    0% /sys/fs/cgroup
tmpfs            4.9G   43M  4.9G    1% /tmp
/dev/sda1        262G  7.1G  254G    3% /home
tmpfs            996M   28K  996M    1% /run/user/1000
とめちゃくちゃ素直です。
ただし　/homeの容量などは全部manjoroが自動的につくってくれます



```

![1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211097/891ddde2-093b-4374-91c3-acbbb736d1cc.jpeg)

ただまだ　btrfsもバグがあって開始に以下な図がでますが、何らかのキーを叩くと起動します