Handbook:PPC/Installation/Bootloader/ko

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Handbook:PPC/Installation/Bootloader and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎polski • ‎русский • ‎українська • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어
PPC 핸드북
설치
설치 정보
매체 선택
네트워크 설정
디스크 준비
스테이지 3 설치
베이스 시스템 설치
커널 설정
시스템 설정
도구 설치
부트로더 설정
마무리
젠투 활용
포티지 소개
USE 플래그
포티지 기능
초기화 스크립트 시스템
환경 변수
포티지 활용
파일 및 디렉터리
변수
소프트웨어 브랜치 함께 사용하기
추가 도구
꾸러미 저장소 개별 설정
고급 기능
네트워크 설정
시작하기
고급 설정
모듈러 네트워크
무선 네트워크
기능 추가
동적 관리



선택

이제 커널을 설정했고 컴파일했으며 필요한 시스템 설정 파일의 내용을 올바르게 채워넣었으니, 시스템을 시작할 때 커널을 실행할 프로그램을 설치할 차례입니다. 이 프로그램을 부트로더라고합니다.

사용할 부트로터는 PPC 머신의 형식에 따라 다릅니다.

NewWorld 애플 또는 IBM 머신에서는, yaboot을 선택해야 합니다. OldWorld 애플 머신에서는 BootX(추천)과 quik 이라는 두가지 선택지가 있습니다. 페가소스는 부트로더가 필요하지 않지만 SmartFirmware 부팅 메뉴를 만들려면 bootcreator를 이머지해야 합니다.

기본: yaboot 사용

도입부

중요
yaboot는 NewWorld 애플 및 IBM 시스템에서만 사용할 수 있습니다!

부팅 장치를 찾으려면, yaboot에서는 시스템 시작시 udev가 만든 장치 노드와 sysfs 파일 시스템에 접근해야합니다. 이들 두가지 파일 시스템은 각각 /dev//sys/에 있습니다. 설치 초반에 이들 위치는 이미 chroot에 bind 마운트되어 있습니다.

yaboot를 설정하려면, yabootconfig를 사용하여 설정 파일을 자동으로 만드는 방법을 활용하거나 부트로더를 직접 설정하는 방법을 활용합니다. (항상 yabootconfig가 동작하는건 아닌)G5에 젠투를 설치하거나, 시스템을 부팅할 때 FireWiare나 USB가 필요하다면 yaboot를 직접 설정하는 과정이 단연 필수입니다.

참고
yabootconfig를 사용하더라도 genkernel을 사용했다면, yaboot.conf를 직접 편집해야합니다. yaboot.conf의 커널 이미지 섹션을 다음과 같이 편집해야합니다(vmlinux를 사용하며 커널이름은 initrd로 하고, 이미지는 initrd를 씀):
파일 yaboot.conf커널 부팅 인자 추가
###########################################################
## This section can be duplicated if you have more than one
## kernel or set of boot options - replace the image and initrd
## with the exact filename of your kernel and initrd image.
###########################################################
image=/boot/kernel-genkernel-ppc-3.4.9-gentoo
  label=Linux
  root=/dev/sda3
  partition=3
  initrd=/boot/initramfs-genkernel-ppc-3.4.9-gentoo
  # You can add additional kernel arguments to append such as 
  # rootdelay=10 for a USB/Firewire Boot
  append="root=/dev/sda3"  
  read-only
##########################################################

기본: yabootconfig 사용

yabootconfig는 머신의 분할 영역을 자동으로 찾고 리눅스, Mac OS, Mac OS X의 둘 내지 세가지의 부팅 수단 조합을 설정합니다.

yabootconfig를 사용하려면, 드라이브에 부트스트랩 분할 영역이 있어야 하며, /etc/fstab에 리눅스 분할 영역을 반영하여 설정해야합니다(부트스트랩 분할 영역은 fstab 파일에 있으면 안됩니다). 이 과정이 우선 끝났어야 하지만, 진행하기 전에 /etc/fstab을 확인하십시오. 이제 yaboot를 설치하십시오.

root #emerge --ask sys-boot/yaboot

이제 chroot를 빠져나오고 yabootconfig --chroot /mnt/gentoo를 실행하십시오. 우선 부트스트랩 분할 영역의 위치를 확인하십시오. 제안하는 디스크 분할 영역 형태를 활용한다면, 부트스트랩 분할 영역은 /dev/sda1 이어야합니다. 출력 내용이 올바르다면 Y 를 누르고 그렇지 않으면 /etc/fstab 파일을 다시 확인하십시오. 이 과정이 끝나면 yabootconfig에서 시스템 설정을 검색하므로 /etc/yaboot.conf를 만들고 mkofboot를 실행하십시오. mkofboot는 부트스트랩 분할 영역을 포맷하고 yaboot 설정 파일을 여기에 복사할 때 사용합니다.

root #chroot /mnt/gentoo /bin/bash
root #/usr/sbin/env-update && source /etc/profile

/etc/yaboot.conf의 내용을 확인하십시오 /etc/yaboot.conf에 바꾼 내용(기본 / 부팅 운영체제 설정)이 있다면, ybin -v를 실행하여 Apple_Bootstrap 분할 영역에 바뀐 내용을 반영하십시오. 새 커널을 테스트할 때 처럼 yaboot.conf를 언제 바꾸었든지, 항상 ybin -v를 실행하여 부트스트랩 분할 영역을 업데이트해야함을 기억하십시오.

대안: yaboot 직접 설정

먼저, yaboot를 시스템에 설치하십시오

root #emerge --ask sys-boot/yaboot

yaboot.conf 파일 예제를 아래에 보여드리겠습니다만 개인 취향에 따라 바꿔야합니다.

파일 /etc/yaboot.conf설정 예제
## /etc/yaboot.conf
##
## run: "man yaboot.conf" for details. Do not make changes until you have!!
## see also: /usr/share/doc/yaboot/examples for example configurations.
##
## For a dual-boot menu, add one or more of:
## bsd=/dev/sdaX, macos=/dev/sdaY, macosx=/dev/sdaZ
  
## The bootstrap partition:
  
boot=/dev/sda2
  
## ofboot is the Open Firmware way to specify the bootstrap partition.
## If this isn't defined, yaboot fails on the G5 and some G4s (unless 
## you pass the necessary arguments to the mkofboot/ybin program).
## hd:X means /dev/sdaX.
## 
## G5 users should uncomment this line!!
  
#ofboot=hd:2
  
## Users booting from firewire should use something like this line:
# ofboot=fw/node/sbp-2/disk@0:
  
## Users booting from USB should use something like this line:
# ofboot=usb/disk@0:
  
## hd: is shorthand for the first hard drive Open Firmware sees
device=hd:
  
## Firewire and USB users will need to specify the whole OF device name
## This can be found using ofpath, which is included with yaboot.
  
# device=fw/node@0001d200e00d0207/sbp-2@c000/disk@0:
  
  
delay=5
defaultos=macosx
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
  
############################################################
## This section can be duplicated if you have more than one
## kernel or set of boot options - replace the image variable
## with the exact filename of your kernel.
###########################################################
image=/boot/kernel-3.4.9-gentoo
  label=Linux
  root=/dev/sda3
  partition=3
#  append="rootdelay=10"  # Required for booting USB/Firewire
  read-only
##################
  
## G5 users and some G4 users should set 
##   macos=hd:13/
##   macosx=hd:12
## instead of the example values.
macos=/dev/sda13
macosx=/dev/sda12
enablecdboot
enableofboot

yaboot.conf을 설정하고 나면 mkofboot -v를 실행하여 Apple_bootstrap 분할 영역을 포맷하고 설정 내용을 설치하십시오. Apple_bootstrap 분할 영역을 만들고 나서 yaboot.conf의 내용이 바뀌었다면 ybin -v를 실행하여 설정을 업데이트하십시오.

root #mkofboot -v

yaboot에 대해 더 알아보려면, yaboot 프로젝트의 내용을 살펴보십시오.

대안: BootX 사용

중요
BootX는 MacOS 9 이전의 OldWorld 애플 시스템에서만 사용할 수 있습니다!

BootX는 MacOS에서 리눅스를 부팅하기 때문에 커널을 리눅스 분할 영역에서 MacOS 분할 영역으로 복사해야합니다. 우선, chroot에서 빠져나와서 MacOS 분할 영역을 마운트해야합니다. mac-fdisk -l 명령을 활용하여 MacOS 분할 영역 번호를 확인하십시오. 여기 예제에서는 sda6를 사용합니다. 분할 영역을 마운트한 후 커널을 시스템 폴더에 복사하여 BootX에서 찾을 수 있게 하겠습니다.

root #exit
cdimage ~#mkdir /mnt/mac
cdimage ~#mount /dev/sda6 /mnt/mac -t hfs
cdimage ~#cp /mnt/gentoo/usr/src/linux/vmlinux "/mnt/mac/System Folder/Linux Kernels/kernel-3.16.5-gentoo"

genkernel을 사용했다면, 커널과 initrd를 MacOS 분할 영역으로 복사해야합니다.

root #exit
cdimage ~#mkdir /mnt/mac
cdimage ~#mount /dev/sda6 /mnt/mac -t hfs
cdimage ~#cp /mnt/gentoo/boot/kernel-genkernel-ppc-3.16.5-gentoo "/mnt/mac/System Folder/Linux Kernels"
cdimage ~#cp /mnt/gentoo/boot/initramfs-genkernel-ppc-3.16.5-gentoo "/mnt/mac/System Folder"

이제 커널을 복사해서 넘겼으니, BootX를 설정하기 위해 다시 부팅해야 합니다.

cdimage ~#cd /
cdimage ~#umount -l /mnt/gentoo/dev{/pts,/shm,}
cdimage ~#umount -l /mnt/gentoo{/proc,/sys,}
cdimage ~#umount -l /mnt/mac
cdimage ~#reboot

물론 부팅 CD를 제거하는걸 잊지 않으면 MacOS 시스템 대신 CD로 부팅합니다.

MacOS로 머신을 부팅하고 나면 BootX 제어판을 여십시오. genkernel을 사용하지 않는다면 옵션을 선택하시고 지정 RAM 디스크 사용 항목을 끄십시오. genkernel을 사용한다면 설치 CD의 initrd 대신 genkernel initrd를 선택했는지 확인하십시오. genkernel을 사용하지 않는다면 머신의 리눅스 루트 디스크와 분할 영역을 여기서 지정합니다. 적당한 값을 채워넣으십시오. 커널 설정에 따라 추가 부팅 매개 변수가 필요할지도 모릅니다.

BootX는 부팅 과정에 리눅스를 시작하도록 설정할 수 있습니다. 이 과정이 끝나면 MacOS로 먼저 부팅하고 시작 과정에 BootX를 불러오며 리눅스를 시작합니다. 더 많은 정보는 BootX 홈페이지를 살펴보십시오.

중요
HFS와 HFS+ 파일 시스템 지원을 커널에 포함했는지 확인하지 않으면 MacOS 분할 영역의 커널 업그레이드 및 업데이트가 불가능합니다.

대안: Quik 사용

quik은 MacOS 없이 OldWorld 맥을 부팅할 수 있게 해줍니다. 그러나 지원이 잘 되지 않으며 여러가지 quirks가 있습니다. 가능하다면 quik보다 더욱 견고하고 설정이 쉬운 BootX를 사용하는 방편을 추천합니다.

먼저 quik을 설치하십시오:

root #emerge --ask sys-boot/quik

다음, 설정하십시오. /etc/quik.conf를 편집하고 앞서 부팅 분할 영역에 복사한 커널에 이미지를 설정하십시오.

파일 /etc/quik.confQuik 설정 예제
# Example of quik.conf
init-message = "Gentoo Linux\n"
# This is the boot partition
partition = 2
root = /dev/sda3
timeout = 30
default = gentoo
# This is your kernel
image = /kernel-3.16.5-gentoo
  label = gentoo

quik.conf 파일은 quik 부팅 이미지와 같은 디스크에 있어야 합니다만, 부팅 분할 영역으로의 이전을 추천한다 해도 다른 분할 영역에 둘 수 있습니다.

root #mv /etc/quik.conf /boot/quik.conf

이제 부팅 변수를 설정하여 quik을 부팅시 불러오도록 합니다. 이 설정을 진행하기 위해 nvsetenv를 사용하겠습니다. 변수는 머신에 따라 다르므로 이 과정을 시작하기 전에 machine's quirksen 에서 찾아보시는 것이 좋습니다.

OF로 부팅하는 옵션을 거짓으로 설정하십시오. 모든 모델이 OF 출력을 표시할 수 있는건 아닙니다:

root #nvsetenv auto-boot true

quirks 페이지를 확인하시면 다음과 같은 여러가지 명령이 있습니다:

root #nvsetenv output-device video
root #nvsetenv input-device kbd

SCSI 에서는:

root #nvsetenv boot-device scsi/sd@1:0

ATA에서는:

root #nvsetenv boot-device ata/ata-disk@0:0

다음, 첫번째 항목은 커널 경로이고, 두번째는 루트 분할 영역입니다. 이 줄의 마지막에 커널 옵션을 붙여넣으십시오:

root #nvsetenv boot-file /boot/kernel-3.16.5-gentoo root=/dev/sda4

MacOS에 안녕을 고하고 리눅스로 부팅하기 위해 이 값을 설정하십시오:

root #nvsetenv boot-command boot
참고
MacOS의 부팅 변수를 바꿀 수 있습니다. 모델에 따라 bootvars 또는 애플 시스템 디스크를 사용해야합니다. 더 많은 내용은 위에 언급한 quik quirks 페이지를 살펴보십시오.

이제 부팅할 머신을 설정했고 부팅 이미지를 올바르게 설치했는지 확인해야합니다. quik -v -C /boot/quik.conf를 실행하십시오. 첫번째 스테이지의 QUIK 부트 블록에 설치했다고 나타나야 합니다.

참고
무언가 잘못되었다면, 머신의 전원을 인가하기 전에 Command+Option+P+R 키를 누른 상태로 PRAM을 기본값으로 초기화 할 수 있습니다. nvsetenv의 값으로 값을 돌려놓으며 사용자가 MacOS 부팅 디스크 또는 리눅스 부팅 디스크로 부팅할 수 있게 합니다.

대안: BootCreator 사용

중요
BootCreator는 페가소스용으로 적절하게 작성한 SmartFirmware 부팅 메뉴를 만듭니다

먼저 시스템에 bootcreator를 설치했는지 확인하십시오:

root #emerge --ask sys-boot/bootcreator

이제 /etc/bootmenu//etc/bootmenu/파일을 복사하고 개인의 필요에 맞춰 편집하십시오:

root #cp /etc/bootmenu.example /etc/bootmenu
root #nano -w /etc/bootmenu

아래는 완전한 /etc/bootmenu 설정 파일입니다. vmlinux와 initrd를 커널과 initrd 이미지 이름으로 바꿔야합니다.

파일 /etc/bootmenubootcreator 설정 파일 예제
#
# Example description file for bootcreator 1.1
#
  
[VERSION]
1
  
[TITLE]
Boot Menu
  
[SETTINGS]
AbortOnKey = false
Timeout    = 9
Default    = 1
  
[SECTION]
Local HD -> Morphos      (Normal)
ide:0 boot2.img ramdebug edebugflags="logkprintf"
  
[SECTION]
Local HD -> Linux (Normal)
ide:0 kernel-3.16.5-gentoo video=radeonfb:1024x768@70 root=/dev/sda3
  
[SECTION]
Local HD -> Genkernel (Normal)
ide:0 kernel-genkernel-ppc-3.16.5-gentoo root=/dev/ram0
root=/dev/sda3 initrd=initramfs-genkernel-ppc-3.16.5-gentoo

마지막으로 bootmenu는 나중에 언급한 위치로 보내야 하며 부팅 분할 영역에 복사하여 SmartFirmware에서 읽을 수 있도록 해야 합니다. 따라서 bootcreator에서 호출하도록 해야 합니다:

root #bootcreator /etc/bootmenu /boot/menu
참고
다시 부팅할 때 파일로서의 메뉴를 기본값대로 불러오는지 SmartFirmware의 설정을 확인하십시오.


시스템 다시 부팅

chroot로 진입한 환경을 빠져나가고 모든 파티션의 마운트를 해제하십시오. 그 다음 대미를 장식할 마법의 명령을 입력하여, 실제로 시험해보십시오: reboot.

root #exit
cdimage ~#cd
cdimage ~#umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~#umount -R /mnt/gentoo
cdimage ~#reboot

물론 부팅 CD를 제거하는걸 잊지 않으면 새 젠투 시스템 대신 CD로 부팅합니다.

새로 설치한 젠투 환경으로 다시 부팅하고 나면, 젠투 설치 마무리로 끝내십시오.