Sparc/FAQ/ko

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

Other languages:
English • ‎日本語 • ‎한국어 • ‎русский

이 자주 묻는 질문은 젠투/SPARC 및 SPARC 아키텍처에서의 리눅스에 대해 대부분 질문하는 내용의 답변을 돕도록 구성했습니다. 젠투/SPARC 팀 또는 문서 팀에 개정판 또는 수정 요구를 자유롭게 보내주십시오.

Contents

문서 참고

이 문서에서 사용하는 몇가지 약어 및 용어를 공을 들여 모아 적어보았습니다.

SPARC를 언급한다면 sun4x 형식 시스템을 참조합니다. SPARC는 울트라 스팍 시리즈에서 볼 수 있던 sun4u 아키텍처를 의미합니다. 이전 32비트 시스템은 더이상 젠투/SPARC 팀에서 지원하지 않습니다.

약어: OBP = OpenBoot PROM, SS = SPARCstation.

설치

직렬 콘솔로 SPARC에 어떻게 설치하고 사용하죠?

우선 키보드와 모니터를 연결했는지 확인하십시오. OBP는 키보드와 모니터를 다 연결했을 때 모니터를 결과 출력 대상으로 활용합니다. 출력 내용을 볼 수 있으려면 널 모뎀 케이블 또는 일반 직렬 케이블과 널 모뎀 어댑터가 필요합니다.

표준 직렬 포트 설정:

  • 9600 bps
  • 8 데이터 비트
  • 패리티 없음
  • 정지 비트 1

직렬 콘솔 전송 내용을 보기 위해 사용하는 일반적인 프로그램 목록을 아래에 제시했습니다. 직렬 콘솔 프로그램에 중단 신호를 보낼 수 있는지 확인하십시오. 이 기능은 SPARC 에서 매우 유용합니다. 직렬 콘솔의 중단 신호는 키보드의 Stop+A 를 누른것과 동일합니다.

리눅스 윈도우
미니컴 하이퍼터미널
커밋 테라텀 프로
콘솔
세욘(Seyon)

해상도를 선택하는 CRT/LCD 모니터가 SPARC에 붙어있는데요, 커널을 부팅할 때 모니터에서 해상도 통제가 안되네요. 어떻게 화면을 표시하고 흔들리지 않게 하죠?

이 문제는 부팅할 때 리눅스 커널에서 프레임 버퍼 기능을 불러온 결과에 따른 문제이며, SPARC 시스템에서 모드라인을 사용할 수 있는지 여부에 대한 문제입니다. 모니터와 비디오 카드의 해상도가 1024x768 이며 수직 주파수가 60Hz 라고 퉁쳐보겠습니다 OBP에서는 output-device에 대한 설정을 조절하면 해상도를 조절할 수 있습니다. 현재 설정을 보려면 다음 명령을 사용하십시오:

okprintenv output-device
<output-device>        <screen>          <screen>

이제 이 값을 설정하면 위에서 언급한 해상도로 화면 표시를 시작합니다. 다음과 같이 setenv 명령을 사용하겠습니다:

oksetenv output-device screen:r1024x768x60
output-device =       screen:r1024x768x60

설정을 적용하려면 머신을 초기화해야합니다:

okreset

게다가 ATI Mach64 칩셋을 기반으로 하는 온보드 비디오 카드(Ultra 5/10 및 Blade 100/150)를 사용하는 사용자라면, 다음 옵션을 커널 부팅 옵션으로 추가하는게 좋습니다:

코드 커널 부팅 옵션 추가
video=atyfb:1024x768@60

SILO로 부팅한다면, 위 문자열을 부팅 이미지 마지막에 추가할 수 있습니다. 다음 예제는 LiveCD로 부팅할 경우의 예제입니다.

코드 젠투 LiveCD 부팅
boot: gentoo video=atyfb:1024x768@60

네트워크로 부팅한다면 다음에서 나타난 바와 같이 OBP에서 boot net 명령의 뒤에 이 문자열을 붙여보십시오:

okboot net video=atyfb:1024x768@60

SPARC 초보인데요 어떤 커널 옵션을 써야할지 모르겠네요, 도움?!

대부분, 기본 커널 옵션은 하드웨어 지원을 준수합니다. 설치 핸드북에서 소개한 virtual memory/proc filesystem 지원을 커널에서 활성화했는지 확인해야합니다.

젠투 리눅스/SPARK 를 솔라리스와 어떻게 함께 부팅하죠?

두가지 방법으로 젠투/SPARC와 솔라리스를 부팅할 수 있습니다. 솔라리스와 젠투/SPARC를 하나의 드라이브에 넣었을 경우 또는 다른 드라이브에 넣었을 경우입니다. 아래에 각 경우에 대한 SILO 설정 예제를 보여드립니다. 이 예제 설정은 다음 경우를 가정합니다:

단일 드라이브 설정:

  • 부팅 드라이브는 SCSI ID 0
  • 젠투는 1번 분할 공간으로 부팅합니다
  • 솔라리스는 5번 분할 공간으로 부팅합니다

개별 드라이브 설정:

  • 두번째 드라이브는 SCSI ID 1
  • 젠투는 SCSI ID 0에 있습니다
  • 솔라리스는 SCSI ID 1에 있습니다
  • OBP 부팅 장치는 SCSI ID 0 입니다
파일 silo.conf단일 드라이브 설치용 silo.conf 예제
# Generic config options
partition = 1
timeout = 50
  
# Gentoo/SPARC options
image = /boot/vmlinux
    label = linux
    root=/dev/sda4
  
# Solaris options
other=5
    label = Solaris
파일 silo.conf개별 디스크 설치용 silo.conf 예제
# Generic config options
partition = 1
timeout = 50
  
# Gentoo/SPARC options
image = /boot/vmlinux
    label = linux
    root=/dev/sda4
  
# Solaris options
other = /sbus/espdma/esp/sd@1,0;1
    label = solaris

하드웨어

SPARC 머신에서 젠투가 동작할까요?

SPARC 형식에 따라 다르지만, 어떤 경우는 그렇고 어떤 경우는 아닙니다. 예외가 있다면 태드폴에서 출시한 SPARC 기반 랩톱의 경우 일부는 최신 모델입니다. 젠투/SPARC를 태드폴에서 가동중이라면 자세한 모델명과 동작에 필요한 특별한 내용을 알려주시기 바랍니다.

젠투/SPARC 팀은 SPARC64용 하드웨어 호환 목록en을 관리합니다. 보통 SPARC64 시스템 지원은 일부 사용자들이 운영 환경에서 성공적으로 동작할 수 있게 합니다.

젠투/SPARC에서 추가로 지원하는 하드웨어는 뭐가 있어요?

썬 하드웨어에서 지원하는 추가 목록은 UltraLinux 홈페이지를 참고하십시오.

젠투/SPARC 또는 SPARC/Linux에서 현재 지원하지 않는 썬 장치 일부는:

  • SunPCI 카드
  • SBUS 또는 PCI PCMCIA 컨트롤러
  • 썬 블레이드 워크스테이션의 스마트카드 리더
  • 썬 블레이드 워크스테이션의 플로피 드라이브

젠투/SPARC 팀에서는 또한 젠투/SPARC에서 시험한 썬에서 생산하지 않은 PCI 하드웨어 목록도 관리합니다. 이 목록에 추가 항목을 제출하려면 기존의 하드웨어 목록에 나타난 하드웨어 및 정보를 sparc@gentoo.org에 전자메일로 보내주십시오.

어떤 SPARC 머신을 가졌는지 어떻게 아나요?

UltraLinux FAQ에 답이 있습니다.

머신에 썬 이더넷 장치가 하나 이상 붙어있는데요. 맥 주소가 다 같은데 어떻게 고쳐요?

우선 이유를 들자면, OpenBoot PROM(OBP)에 모든 동일한 값을 설정했기 때문입니다. 예전 시점으로 돌아가서 이야기하자면, 호스트에 인터페이스를 여러개 붙였을 경우 인터페이스가 동일한 이더넷에 있지 않으므로 유일한 MAC 주소를 머신에 부여하는게 NIC에 부여하는것보다는 그다지 문제되지 않을거라 봤습니다. 근데 시간이 흐르고 보니 다른 기술이 개발됐고, 그 반대의 경우가 증명됐습니다.

이 문제를 해결하려면, 두가지 방법이 있는데요. 하나는 OBP에서 다른 하나는 리눅스 자체에서 해결하는 방법입니다. OBP에서는 local-mac-address? 변수가 이 동작을 관리합니다. 다음 명령은 local-mac-address? 변수가 설정하는 대상을 결정하는데 도움을 줍니다:

okprintenv local-mac-address?
local-mac-address? =  false
root #eeprom local-mac-address?
local-mac-address?=false

위에서 보여드린 예시를 보신 바와 같이 local-mac-address?false로 설정했습니다. 이 설정이 SPARC의 모든 인터페이스에 동일한 MAC 주소를 사용하게 만듭니다. 이 동작을 바꾸려면 아래에 나타난 명령을 사용하면됩니다(OBP에서 처리하느냐 리눅스에서 처리하느냐에 따라 다릅니다):

oksetenv local-mac-address?=true
local-mac-address? =  true
root #eeprom local-mac-address?=true

설정 내용을 적용하려면 재부팅해야함을 참고하세요.

SPARC는 빅-엔디안 인가요 아니면 리틀-엔디안 인가요?

젠투/SPARC (v9) 에서 지원하는 버전은 바이엔디안입니다. 빅-엔디안을 활용하지만 PCI 장치가 원래 리틀-엔디안 바이트 순서로 데이터를 보내다 보니, 리틀-엔디안 바이트 순서로 데이터를 접근할 수도 있습니다.

프로그램

Xorg 쓸 때 Ultra 5/10랑 Blade 100/150에서 쓸만한 modeline을 어떻게 찾죠?

ATI 프레임버퍼는 보통 PC의 바이오스에서 비디토 카드의 참조 클록 스피드를 설정하길 기다립니다. 그러나 x86 아키텍처가 아니라면 그런 일은 없습니다. 그래서 여기서 우리가 해야 할 일은 /etc/X11/xorg.conf 에서 참조 클록 속도를 설정하는 것입니다.

/etc/X11/xorg.conf 의 "Device" 섹션에 다음 줄과 유사한 내용을 추가할 수 있습니다:

파일 xorg.conf주파수 추가
Option      "reference_clock"   "28.636 MHz"

다른 일반 속도는 14.318 MHz와 29.5 MHz입니다. 문제가 있다면 동일한 설정을 우선 빼고 원하는 값을 막 넣어보십시오.

foo 꾸러미가 어떻게 SPARC에서 가려졌나요?

이번 일은 젠투/SPARC 개발자중에 이런 문제를 시험해볼 사람이 없기 때문이거나 꾸러미에 ~sparc 키워드(시험 단계를 의미)로 표시해놨기 때문입니다.

꾸러미를 여전히 설치하고 싶다면 포티지 핸드북에 나온대로 해결할 수 있습니다.

foo 꾸러미를 어떻게 안정 상태로 표시하죠?

꾸러미가 그때그때 유행에 따라 안정 버전으로 표시할 수 있도록 도와주려면, 소규모 사용자 기반의 프로그램(예: net-im/bitlbee)인 경우, 꾸러미를 설치하고 동작하는지 확인하십시오. 잘 동작한다면 젠투 버그질라에 버그로 자유롭게 제출하시고 젠투/SPARC 팀에 해결 과제로 할당하십시오.

꾸러미를 이머지하려는데요 이머지에서 의존 요소가 가려졌다고 하네요. 어떻게 고쳐요?

버그입니다. 젠투 버그질라에 젠투/SPARC 팀에게 어떤 꾸러미를 이머지하려고 했는지 어떤 오류 메시지가 났는지, emerge --info 출력 내용이 무엇인지 버그 보고서를 보내주세요.

커널을 컴파일 할 때 32/64비트 관련 오류가 왜 뜨는거죠?

SPARC/Linux 에서 크로스 컴파일러를 다루는 방법은 2.6.25(commit)에서 바뀌었습니다. 따라서 최근의 커널을 빌드할 때 다음 오류 메시지를 만날 수 있습니다:

코드 SPARC/Linux 컴파일 오류 메시지
CHK     include/linux/version.h 
CHK     include/linux/utsrelease.h 
CC      arch/sparc64/kernel/asm-offsets.s 
arch/sparc64/kernel/asm-offsets.c:1: error: -m64 is not supported by this configuration 
arch/sparc64/kernel/asm-offsets.c:1: error: -mlong-double-64 not allowed with -m64 
arch/sparc64/kernel/asm-offsets.c:1: error: -mcmodel= is not supported on 32 bit systems 
make[1]: *** [arch/sparc64/kernel/asm-offsets.s] Error 1 
make: *** [prepare0] Error 2

왜냐면 잠깐의 기간동안 (실험적인 multilib 프로파일이 있음), 젠투/SPARC 자체 컴파일러가 64비트 코드를 만들 수 없었기 때문입니다(이 때문에 sys-devel/kgcc64가 있습니다).

다음 명령을 실행하여 SPARC/Linux Makefile 에게 크로스 컴파일러 바이너리가 무엇인지 알려주어야 합니다:

root #cd /usr/src/linux
root #make CROSS_COMPILE=sparc64-unknown-linux-gnu-
root #make CROSS_COMPILE=sparc64-unknown-linux-gnu- image modules_install

기타

젠투/SPARC 프로젝트에 참여하고 싶은데요. 어떻게 해요?

프로젝트를 개선하는 방법은 다양합니다:

추가 자료

SPARC/리눅스에 대해 더 많은 도움이나 정보는 어디서 얻나요?

  • OBP 참조 안내 - 썬의 OpenBoot PROM 안내서
  • OSIAH - 온라인 썬 정보 저장소
  • Obsolyte - 오래된 SPARC 시스템 정보 및 SPARC 관련 사이트 중 대단한 곳을 연결한 링크 모음
  • 썬 마이크로시스템즈 문서 - OBP 플래싱 정보도 있는 SPARC 시스템용 추가 하드웨어 및 소프트웨어 정보
  • Sunsolve - 썬 하드웨어 문서의 보고
  • UltraLinux Homepage - SPARC/Linux 포팅 홈페이지
    This article is based on a document formerly found on our main website gentoo.org.
    The following people contributed to the original document: weeve, nightmorph
    They are listed here as the Wiki history does not allow for any external attribution. If you edit the Wiki article, please do not add yourself here; your contributions are recorded on the history page.