좀 딴길로 샐 예정 -0-
딴길로 새는 이유는
btrfsctl -a 를 부팅시 실행시켜줘야 하기 때문이긴 한데 -ㅠ-;;
또한 AUR 이 중요하기 때문.
여기서는 손으로 AUR에서 자료 받아 설치하는 방뻡을 다룰 것이다만,
몇번만 손으로 해보고 yaourt를 쓰는게 더 좋음.
yaourt 설치법은 http://forcecore.tistory.com/1164 여기에 언급되고,
http://wiki.archlinux.org/index.php/Yaourt 여기에 자세히 나온다능.
AUR은 Arch Linux의 user contributed package가 올라오는 곳이다.
mkinitcpio 랑 hook랑 뭐라뭐라 하는데 뭔 소린지 모르겠다 (아직은).
이걸로 개발 패키지를 얹을 수 있음. 우분투의 build-essential 과 같은 역할이다.
pacman -S base-devel
일단은 이걸 설치.
여기서 btrfs tarball파일을 받았다.
으음... btrfs 패키지 자체도 AUR의 것을 써야겠군 -ㅠ-
일반유저는 뭐 알아서 만들라. pkgbuild가 일반유저로 해야 된다더군.
$HOME/aur 디렉토리를 만들고, tarball 압축 해제.
btrfs tar를 해제하고 그 안에서 makepkg 명령어를 쳤다.
컴파일 실패! 왜냐, mprf 이 설치되지 않아서.
pacman -S mpfr
GCC에 문제가 있어서 컴파일이 안 된다 -0-;;
cc1: error while loading shared libraries: libmpfr.so.1
... 설치되는건 libmpfr.so.4
...
시스템 업데이트를 완전히 하라고 하는군. 아까 한거 같은데 -ㅠ-;;
pacman -Syu
흐음... 전에 한 것 보다 업데이트되는 패키지가 많군. 업데이트 하고 나니 gcc가 정상 작동한다.
다시
makepkg
도전...a 패키지가 잘 만들어졌다는.
btrfs-progs-0.19-6-x86_64.pkg.tar.xz
이런 xz 파일이다. 설치하려면
# pacman -U btrfs-progs-0.19-6-x86_64.pkg.tar.xz
이렇게 한다.
mkinit 머시기도 makepkg 가 성공. 비슷한 방법으로 설치.
/lib/initcpio/btrfs 가 생기긴 하는데 그걸 이용할지 말지는 또 다른 문제.
/etc/mkinitcpio.conf 에 HOOKS가 있는데, filesystem 직전에 btrfs_advanced를 넣어준다.
HOOKS="base ... btrfs_advanced filesystems"
이렇게.
mkinitcpio -p kernel26
흐음... 빨리 되진 않을 것이다. 오래 걸리는 작업임.
으음... 안되네;;
btrfs-progs 자체에도 btrfs 라는 훅이 딸려오는데 버그가 있어서 잘 되진 않음.
/lib/initcpio/install/btrfs 에
binaries 에 btrfs 라는걸 요구하는데 btrfsctl로 바꾸고 (있지도 않으니까)
/inb/initcpio/hooks/btrfs
btrfs device scan
이런 게 있던가 그런데
btrfsctl -a
로 명령어를 고쳤다. HOOKS에서 btrfs_advanced대신 btrfs로 수정. 다시 mkinitcpio -p kernel26 하고 재부팅.
잘 된다.
btrfsctl -a 가 원래 느린 탓에 부팅 속도가 쳐지게 되었다 ㅠㅠ;; 어쩔 수 없지. 재부팅 후 삽질하는 것 보단 괜찮으니깐??
P.S 왜 느린지 알아냈다. 붙어있지도 않은 플로피디스크를 스캔하려고 삽질하는 것을 발견했음 -_-;; 바이오스에서 플로피 디스크 드라이브 그런거 없다고 disable 해놓으니 매우 빠르게 잘 됨.