자우루스(SL-C3200)에 아치리눅스 설치하기
자우루스(SL-C3200)에 아치리눅스(Arch Linux ARM = ALARM)설치하기 정리
*자우루스는 일본어 큐토피아 순정펌과 순정NAND상태로 준비
1. SD카드나 CF카드를 준비하기.
kexecboot 설치용으로는 작은 것도 괜찮으나 ALARM부팅 및 내부저장소에 설치하기 위해서는
2G이상의 카드를 준비.
2G이상의 카드라면 하나만 있어도 가능.
2. 준비한 카드를 FAT(FAT16)으로 포맷
FAT32도 가능하나 호환성을 위해 FAT16으로 포맷.
3. kexecboot 커널 다운로드
https://github.com/greguu/linux-3.10.y-c3x00-f2fs-kexec-r0/releases/tag/r0
greguu/linux-3.10.y-c3x00-f2fs-kexec-r0
Zaurus C3x00 kexecboot kernel with updated F2FS support - greguu/linux-3.10.y-c3x00-f2fs-kexec-r0
github.com
에서 kexecboot 커널을 다운로드.
나는 SL-C3200용으로 linux-3.10.y-c3x00-f2fs-kexec-r0.tar.gz를 다운로드 함.
4. 다운로드한 커널을 압축을 풀고 내용물을 카드에 복사
7zip을 이용.
gz을 풀고 tar를 풀기 위해 압축을 두번 풀어야 함.
gnu-tar, updater.sh, zImage
세 파일을 2에서 준비했던 카드에 복사
이 작업까지는 윈도PC에서 윈도로도 작업가능
5. 자우루스에 kexecboot 커널 설치
아답터 분리, 배터리 분리, 리셋버튼 눌러 준 후
배터리 넣고, 배터리 커버 닫은 후 커버 잠금키 고정
아답터 연결 후 카드를 꽂고 OK버튼을 누른 상태로 전원(On/Off)버튼을 누름
리커버리 화면이 뜨면 4번을 선택 후
준비해 둔 카드를 선택(1번 CF ,2번 SD) *아답터가 꼭 연결이 되어 있어야 함.
작업이 완료되면 Arch Linux로고가 뜸.
현재 kexecboot 버전 0.6
6. RootFS준비
리눅스가 설치된 시스템을 사용할 것
리눅스가 설치된 PC 혹은 카드리더기가 연결가능한 SBC에 리눅스를 설치해 작업.
나는 라즈베리파이에 데비안(버스터 라이트)을 플래싱하여 작업함.
wget 명령어를 이용하여 RootFS를 다운받은 후
부팅용 카드를 준비
1번에서 사용했던 카드도 2G이상이라면 사용가능
리눅스 시스템에 카드를 연결 후 ext4 파티션을 만들어 줌
*ext4 파티션을 만들어 포맷할때 e2fsprogs 버전이 1.43.9보다 상위 버전이라면
kexecboot에서 카드를 읽지 못함.
e2fsprogs 버전이 1.44이상이라면
mkfs.ext4 뒤에 -O^metadata_csum 옵션을 주고 포맷을 하면 kexecboot에서 정상인식
그냥 ext4대신 ext2,3나 f2fs를 사용해도 됌.
포맷완료 후 카드를 마운트하고 bsdtar(없다면 설치)를 이용해 카드에 풀어줌
bsdtar rootfs파일명 -C 마운트위치
내부저장소에 설치하려는 경우
rootfs파일을 마운트된 디렉토리상의 root디렉토리에 복사(최소 2G카드필요)
언마운트 전 카드가 CF카드라면
마운트 위치상의 /boot/boot.cfg와 /etc/fstab을 상황에 맞게 수정
SD카드는 /dev/mmcblk0p1으로 기본 상태 그대로 사용해도 되지만
CF카드는 /dev/sda1으로 수정해야 함.
언마운트 후에 카드를 자우루스에 넣고 재부팅하면
시스템메뉴 아래에 카드의 RootFS가 보임.
선택 후 엔터.
root/root로 로그인 후
내부저장소에 설치하려는 경우
6번 과정을 bsdtar작업까지 진행
swap파티션도 가능하다면 만들어 줄것 최소 256M,swapon 명령 필히 직접 입력
내부저장소 언마운트하기전에
마운트 위치상 /boot/boot.cfg파일과 /etc/fstab 파일을 상황에 맞게 수정