젠투(Gentoo)에 대해 들어본 적이 있다면, 펀투(Funtoo)는 어떠신가요? 펀투는 젠투의 핵심 장점을 그대로 유지하면서도 소스 코드로부터 프로그램을 훨씬 빠르게 컴파일할 수 있도록 최적화된 “프로파일”을 제공하는 젠투 리눅스 운영체제의 변형입니다. 펀투는 또한 깃(Git) 시스템, 시간을 절약해주는 자동 커널 빌드 시스템과 같이 기존의 젠투 리눅스에 대한 매우 매력적인 대안이 될 수 있는 다양한 개선 사항을 포함하고 있습니다. 그렇다면, 펀투는 어떻게 설치할 수 있을까요?
펀투 설치 – 라이브 디스크 활용
펀투는 본질적으로 젠투 리눅스이기 때문에 모든 설치 과정이 수작업으로 진행됩니다. 사용자가 소프트웨어 설치를 위해 다른 리눅스 배포판과 유사한 라이브 디스크가 필요하다는 점이 사실입니다. 그러나 그 이유는 일반적으로 생각하는 것과는 다릅니다. 라이브 디스크를 사용하는 주된 이유는 PC를 와이파이에 연결하고, 자체적으로 로드되지 않는 독점 드라이버를 사용하는 과정이 훨씬 편리하기 때문입니다.
엄밀히 말해, 펀투 자체에는 라이브 디스크가 없습니다. 이 배포판을 사용하려는 고급 사용자의 경우, 대부분의 리눅스 배포판과 도구가 유사하므로 대부분의 설치 과정을 성공적으로 완료할 수 있을 것입니다. 하지만 리눅스 전문가가 아니라면 젠투 라이브 디스크를 다운로드하는 것을 추천합니다. 이 방법을 사용하는 데에는 두 가지 주요 이유가 있습니다.
젠투와 펀투는 매우 유사하여 젠투 라이브 디스크 내에서 모든 chroot 명령이 항상 작동합니다. 또한 라이브 디스크의 젠투 커널 설정을 활용하여 사용자 정의 리눅스 커널을 구성할 수 있습니다.
여기에서 최신 젠투 라이브 디스크를 다운로드하고, 최소 2.5GB 이상의 USB 플래시 드라이브를 준비하세요. 또한 최신 버전의 Etcher 이미지 플래싱 도구도 다운로드해야 합니다. 다운로드가 완료되면 USB 스틱을 삽입하고 라이브 디스크 이미지를 플래시합니다. Etcher 도구는 윈도우, 맥, 리눅스에서 모두 작동합니다.
젠투 라이브 디스크가 준비되면 PC를 재부팅하고 BIOS 설정에 진입합니다. BIOS 설정에서 젠투 USB 스틱이 다른 장치보다 먼저 로드되도록 부팅 순서를 변경합니다. 부팅이 성공하면 다음과 유사한 화면이 나타납니다.
파티션 준비 과정
펀투를 설치하려면 먼저 인터넷 연결 상태를 확인한 다음, 바탕화면의 “Konsole”을 실행해야 합니다. 그런 다음 `lsblk` 명령을 사용하여 라이브 디스크로 부팅한 시스템의 모든 하드 드라이브와 저장 장치를 확인합니다. 이 설치 예시에서는 하드 드라이브의 레이블이 `/dev/sda`이며 정확히 18GB 크기를 가지고 있습니다. 실제 사용 환경에서는 레이블과 크기가 다를 수 있습니다.
참고: 젠투 라이브 디스크에는 스크램블된 루트 암호가 설정되어 있습니다. 이를 변경하려면 터미널에서 `sudo -s` 명령을 실행한 다음, `passwd` 명령을 실행하여 새로운 루트 암호를 설정해야 합니다.
키보드의 “윈도우” 버튼을 누르고 “Gparted”를 검색하여 실행합니다. Gparted에서 올바른 하드 드라이브 레이블 (lsblk 명령으로 확인한 레이블)을 찾습니다. 다음으로, 하드 드라이브의 모든 기존 파티션을 삭제하고 새 파티션 테이블을 생성해야 합니다.
새로운 파티션 테이블을 만들려면, “장치”를 클릭하고 “파티션 테이블 만들기”를 선택합니다. BIOS 부팅을 사용하는 경우 “msdos”를 선택하고, UEFI/보안 부팅을 사용하는 경우에는 “gpt”를 선택합니다.
모든 이전 파티션을 제거했다면 이제 새 파티션을 만들 차례입니다.
MS-DOS 파티션 테이블 설정
“새로 만들기”를 클릭하여 “새 파티션 만들기” 대화 상자를 엽니다. “파티션 이름” 아래에 “swap”이라고 입력합니다. “파일 시스템”에서 “linux-swap”을 선택합니다. 실제 RAM 용량을 고려하여 스왑 파티션 크기를 결정해야 합니다. RAM 크기에 1024를 곱하여 MB 단위로 변환합니다. 예를 들어, 2GB RAM의 경우 1024 x 2 = 2048MB가 됩니다. “새 크기” 항목에 해당 크기(MB 단위)를 입력합니다. “추가”를 클릭하여 스왑 파티션을 추가한 후, 다시 “새로 만들기”를 클릭하여 루트 파티션을 만듭니다. 모든 파티션 설정이 완료되면 “적용”을 클릭하여 변경 사항을 기록합니다.
GPT 파티션 설정 안내
“새로 만들기”를 클릭하여 “새 파티션 만들기” 대화 상자를 엽니다. 첫 번째 파티션의 “파티션 이름”에 “boot”를 입력하고, 파일 시스템으로 “Fat32″를 선택합니다. 1GB 이하의 크기로 설정해야 하며, 이상적으로는 512MB가 적절합니다. 다음으로 스왑 파티션을 만듭니다. “파일 시스템”으로 “linux-swap”을 선택하고, “파티션 이름”으로 “SWAP”을 입력합니다. 올바른 스왑 크기를 얻으려면 MS-DOS 지침의 변환 예시를 참고하십시오. 마지막으로, “새로 만들기”를 클릭하여 세 번째 파티션인 루트 파티션을 만듭니다. 루트 파티션은 나머지 드라이브 공간을 모두 사용하도록 설정하면 됩니다. 모든 파티션 설정이 완료되면 “적용”을 클릭하여 변경 사항을 기록합니다.
파일 시스템 마운트 과정
이제 모든 파티션이 정상적으로 분할되었으므로, 파일 시스템을 마운트하고 설치 준비를 완료해야 합니다.
먼저, `/mnt` 디렉토리 내에 `funtoo` 디렉토리를 생성합니다. 이 디렉토리는 모든 파티션을 마운트할 위치가 됩니다.
mkdir /mnt/funtoo
BIOS/MBR 마운트 지침
mount /dev/sdb2 /mnt/funtoo
GPT/UEFI 마운트 지침
mount /dev/sda3 /mnt/funtoo mkdir /mnt/funtoo/boot mount /dev/sda1 /mnt/funtoo/boot
기본 시스템 설치
펀투 기본 시스템은 Tar Gzip 아카이브 파일을 다운로드하여 설치합니다. 여기에서 시스템에 맞는 하위 아키텍처를 찾으십시오. 올바른 하위 아키텍처를 선택하는 것은 컴파일 시간을 크게 단축시키므로 매우 중요합니다. 어떤 펀투 하위 아키텍처가 필요한지 모르겠다면 다음 명령을 입력하여 확인하십시오.
gcc -march=native -Q --help=target | grep march
해당하는 하위 아키텍처를 찾았다면 링크를 마우스 오른쪽 버튼으로 클릭하고 “링크 주소 복사” (또는 이에 상응하는 항목)을 선택합니다. 터미널로 돌아와서 `/mnt/funtoo` 디렉토리에 해당 파일을 다운로드합니다.
“funtoo-current” 버전을 선택해야 합니다.
참고: 이 예시에서는 일반적인 64비트 하위 아키텍처를 사용합니다.
cd /mnt/funtoo wget https://build.funtoo.org/funtoo-current/x86-64bit/generic_64/2018-03-02/stage3-generic_64-funtoo-current-2018-03-02.tar.xz
하위 아키텍처 아카이브 다운로드가 완료되면, 다음 명령어를 사용하여 시스템에 설치합니다.
tar xpf stage3-generic_64-funtoo-current-2018-03-02.tar.xz
시스템 구성 단계
기본 시스템 설치가 완료되면 chroot 환경으로 전환할 수 있습니다. 다음 명령어를 사용합니다.
mount -t proc none proc
mount --rbind /sys sys mount --rbind /dev dev
마운트가 완료된 후 `resolve.conf` 파일도 복사하는 것을 권장합니다. 이 과정은 발생할 수 있는 DNS 문제를 해결하는 데 도움이 됩니다.
cp /etc/resolv.conf /mnt/funtoo/etc/
이제 다음 명령어를 사용하여 chroot 환경에 로그인합니다.
env -i HOME=/root TERM=$TERM /bin/chroot . bash -l
펀투 시스템을 추가로 변경하기 전에 먼저 루트 암호를 설정해야 합니다.
passwd
fstab 파일 설정
펀투 리눅스 시스템이 정상적으로 부팅되려면 `fstab` 파일을 편집해야 합니다.
nano -w /etc/fstab
파일의 # 아래에 있는 내용을 모두 삭제하여 마운트 지점을 새로 구성할 수 있도록 합니다. 주석(#으로 시작하는 줄)은 삭제하지 않도록 주의해야 합니다.
BIOS 설정 지침
`fstab` 파일에 다음 줄을 입력합니다.
# Swap /dev/sda1 none swap sw 0 0 # Root Funtoo file system /dev/sda2 / ext4 noatime 0 1
편집이 완료되면, Ctrl + O를 눌러 저장하고 Ctrl + X를 눌러 종료합니다.
UEFI 설정 지침
# UEFI Boot partition /dev/sda1 /boot vfat noatime 1 2 # Swap /dev/sda2 none swap sw 0 0 # Root Funtoo file system /dev/sda3 / ext4 noatime 0 1
`/etc/fstab` 파일 편집이 완료되면, Ctrl + O를 눌러 저장하고 Ctrl + X를 눌러 종료합니다.
포티지 트리 다운로드 및 업데이트
최신 버전의 펀투를 설치했더라도, 최신 버전의 소프트웨어 도구를 설치해야 합니다. 펀투에서는 모든 것이 깃 기술을 통해 이루어지므로 동기화 과정이 오래 걸리지 않습니다. `ego sync` 명령을 사용하여 포티지 트리를 동기화합니다.
ego sync
`ego sync` 명령이 완료되면 새로운 펀투 시스템에 최신 포티지 트리가 적용됩니다. 이제 사용 가능한 업데이트를 컴파일할 차례입니다. 이 과정은 최소 2시간 이상 소요될 수 있으므로 인내심을 가지고 기다려야 합니다. 올바른 하위 아키텍처를 설정했다면 2시간보다 조금 더 빠르게 완료될 수도 있습니다.
참고: 사양이 낮은 PC를 사용하는 경우, 4시간 이상의 컴파일 시간이 소요될 수 있습니다.
emerge -auDN @world
커널 빌드 단계
`emerge` 업데이트를 수행하면 커널 설치가 자동으로 진행됩니다. 펀투는 커널 빌드를 위해 “데비안 소스”를 선택했습니다. 이 방식은 작업을 더 빠르고 쉽게 만들어줍니다. 다음 명령어를 사용하여 펀투용 최신 데비안 소스 커널을 빌드하십시오.
emerge -s debian-sources
월드 업데이트와 마찬가지로 커널을 빌드하려면 컴파일 작업이 필요합니다. 시스템 업데이트만큼 오래 걸리지는 않지만, 20분에서 1시간 정도 소요될 수 있습니다. 편안하게 기다리면 펀투가 컴파일 작업을 완료할 것입니다. 터미널을 다시 사용할 수 있게 되면 커널을 사용할 준비가 된 것입니다.
부트로더 설치 과정
펀투의 핵심 시스템은 작동하지만 부트로더가 없으면 시스템이 부팅되지 않습니다. 이 문제를 해결하려면 시스템에 Grub을 컴파일하고 설치해야 합니다. 설치 유형(BIOS 또는 UEFI)에 따라 지침을 따릅니다.
먼저 포티지에서 최신 버전의 Grub을 빌드합니다.
emerge boot-update
참고: 새 커널 또는 추가 운영 체제를 설치할 때마다 `boot-update`를 실행해야 합니다.
BIOS Grub 설치 지침
grub-install --target=i386-pc --no-floppy /dev/sda boot-update
UEFI Grub 설치 지침
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck boot-update
마무리 단계
대부분의 경우, 모든 것이 정상적으로 설치되고 작동합니다. 이제 남은 작업은 네트워크 도구를 설정하고, 독점 리눅스 펌웨어를 설치하고, “믹스인”과 데스크톱 환경을 살펴보는 것입니다.
네트워크 설정
emerge linux-firmware networkmanager --autounmask-write
dispatch-conf
참고: 키보드에서 `u`를 눌러 `dispatch-conf`를 진행합니다.
emerge linux-firmware networkmanager
이제 새로운 펀투 리눅스 설치에 네트워크 관리자와 독점 리눅스 펌웨어가 설치됩니다. 이는 무선 및 블루투스 장치에 대한 올바른 드라이버가 설치되었다는 것을 의미합니다. 이제 부팅 시 네트워크가 로드되도록 설정하는 과정만 남았습니다.
rc-update add NetworkManager default
호스트 이름 설정
모든 리눅스 PC에는 “호스트 이름”이 있습니다. 이것은 다른 PC(리눅스 또는 기타)가 네트워크에서 컴퓨터를 식별하는 데 사용되는 고유한 이름입니다. 호스트 이름을 설정하려면 Nano 편집기를 사용하여 호스트 이름 파일을 열고, 따옴표 안의 텍스트 부분을 변경합니다.
nano /etc/conf.d/hostname
데스크톱 환경 및 믹스인
축하합니다! 펀투 설치가 완료되었습니다. 이제 프로필을 설정하고, 믹스인을 추가하고, 원하는 리눅스 데스크톱 환경을 설치하기만 하면 됩니다.
먼저, 펀투 설치 버전이 “데스크톱”임을 시스템에 알려야 합니다.
참고: 믹스인은 특정 패키지를 설치할 수 있도록 포티지에 알려주는 기능을 합니다. 대부분의 경우, 설치 전에 믹스인을 선택해야 합니다.
epro flavor desktop
다음으로, 시스템에 추가할 수 있는 믹스인 목록을 확인합니다.
epro list
다음 예시와 같이 시스템에 믹스인을 추가하십시오.
epro mix-in +mixinname
마지막으로, 아래 링크를 따라 데스크톱 환경을 설치하십시오. 펀투의 각 데스크톱 환경 설치 방법은 고유한 특징이 있으므로, 공식 문서를 참조하는 것이 좋습니다. 자세한 내용은 해당 문서에서 확인하십시오.