2009년 9월 23일 수요일

Lab Computer를 Hachintosh로 만들자

설치 대상 Computer의 중요 사양은 다음과 같습니다.

Mainboard: P5LD2 - i945P, ICH7R
CPU: PentiumD presler 930
Sound: ALC882M
Lan: Marvell 88E8053
Graphic: Sapphire ATI Radeon HD3650 256mb
Keyboard, Mouse: USB
HDD, ODD: Sata

자, 설치를 해볼까요?

부팅은 boot-132로 USB에 넣어서 했습니다.
중요한 드라이버만 준비해서 initrd.img를 제작했구요.

설치용 OSX는 배포본으로 iPC와 XxX를 준비했었습니다. 주로 iPC를 가지고 계속 했었는데요, 이게 생각만큼 잘 되지는 않았습니다. 뭐, 그래도 어느정도 준비는 했던터라 부팅은 가능한 상황까지는 갔습니다.

그래도 부팅은 할 수 있었으니까, Mac은 느껴볼 수 있었습니다. 하하하~
가장 큰 문제는 Graphic였지요. 이게 그래픽 드라이버를 선택해서 설치하면 화면이 깨져서 검은 화면에 깨 뿌린 것마냥 나오더군요. 그 상태에서 안전모드로는 부팅이 가능했기 때문에 그렇게 부팅을 해서 집에서 설치할 것들을 준비했습니다.

일단 집의 Computer 설치를 계속 준비하는 터라 Lab PC는 뒤로 미뤄뒀었는데, 그래픽이 너무 아쉬웠던 터라 다시 삽을 집어 들었습니다. 하지만 역시나 그래픽은 넘기 어려운 산이더군요. 이래저래 kext들을 구해봤으나 죄다 똑같은 상황이 벌어졌습니다. 드라이버를 모두 삭제하면 기본 정보로 standard 부팅은 잘 되는 상황이었습니다.

그때쯤 ideneb 10.5.8 version을 구했었고, 요것도 금방 다시 설치를 했고 꿈을 안고 부팅을 했으나.....음하하하하~ 안되더군요... OTL..
그래도 해상도를 수정하는 방법을 통해서 아쉬운데로 해상도만 높여서 사용하다가 EFI String이나 dsdt로 하려했으나...어렵더군요. 정보는 인식하지만 Mac의 최고봉~ QE/CI가 안되었습니다. 그대로 포기할까 하다가 검색을 해서 그전과는 다른 이름인 드라이버(사실 완전히 다른 건 아니라 단어가 추가된)를 구해서 설치했는데!!!!!!!


드디어!!!!!!!! 드디어~!!!!!!!!! 인식!!!!!!!! 으하하하하~ 기쁨의 환호성~ 예예~~

흐흐~ 지금 상태는 E/E는 사용하지 않고 다 S/L/E에 다 들어있고요, 타임머신 픽스해서 잘 되고 있습니다.

자~ 이제는 리테일로~ 고고~~

x86 PC를 Hackintosh로 만들자- 현재까지의 요약

얼마 전부터 Mac을 써보겠다고 용을 쓰고 있다고 했었습니다.
괜히 주위에 Mac을 쓰고 있는 사람들 때문에 이렇게 된건데요.

Mac을 살 돈은 없으니까, 자연히 Hachin으로 눈을 돌렸더랬지요.
처음의 시도는 무모함이기에 보란듯이 실패!!! OTL....

하하하~ 당연한 일이니 크게 낙심하지 않았습니다.
약간의 준비가 필요하니 자료 수집과 설치 공부를 해서 나름 준비를 했습니다.

부팅방법이나 설치방법, 설치 자료 등을 준비했고요.
일단 배포판 부터 시작했습니다.

학교 Lab에 있는 것부터 시작했습니다.
일단 얘는 설치가 됐고, 부팅도 했습니다. 즐겁더군요~ 되니까~~
그러나 뭐 완벽한 것은 아니고, 그래픽과 사운드는 아직...

이상태에서 집에서 설치할 것들을 준비했고, 집에서는 약간의 삽질 끝에 설치했습니다.
허나 여기도 문제는 있었구요. 불안불안 상태로 설치되었습니다.

나중에 안 사실이지만 집의 Computer나 Lab Computer,
둘다 기본적으로 Mac의 vanilla kernel이 사용불가한 펜티엄D 프레슬러 CPU 였습니다.

voodoo kernel이나 뭐 그런 걸 썼어야 했던 겁니다.
Lab에서는 그냥 우연찮게 설치했던 것을 집에서는 바닐라를 설치 해보겠다고
엄청 고생을 했던 겁니다. 이 사실도 나중에 우연히 부두커널을 설치하고 나서
검색하다가 알아낸 거죠.

그 때만 생각하면 눈물이...ㅠ.ㅠ


어쨌든 결론은 둘 다 부팅은 가능한 상태까지는 갈 수 있다는 겁니다~~~

2009년 9월 9일 수요일

Aaron Minick - The Gospel



CD1
1. He Lives
2. Amazing Grace
3. Cleanse Me
4. Sing Low, Sweet Chariot
5. Had It Not Been For Jesus
6. Jesus Is The Sweetest Name I Know / There's Something About That Name
7. His Hand In Mine
8. Just A Closer Walk With Thee
9. Pass Me Not
10. That's Just Like Jesus
11. Wayfaring Stranger

얼마전에 구매한 앨범입니다.
처음 나왔을 때, He Lives의 1분 듣기를 들어보고
'이거...좋은데?' 이러고 살 듯 하면서 말았다지요~

시간이 좀 지나서 20%가 10%(ㅠ.ㅠ)로 바뀌었을 때... 구매했습니다.

음악 평론가도 아니고, 단지 음악을 좋아하는 사람이기 때문에
그냥 전 1번 트랙이 좋아요! 이런 느낌~?

재즈라 한다해도 현란, 자유한 재즈가 아니라서
가벼운 마음으로, 재즈를 잘 몰라도 들을 수 있습니다.

재즈는 언젠가는 꼭 해보고 싶은 음악입니다.

2009년 9월 7일 월요일

해킨, 그거 별거 아니더군!

일전에 포스팅했듯이

해킨토시를 시도하고 있었습니다.


별다른 준비 없이, 무모한 시도는 실패를... 좌절하고 말았지요.

그래서 몇일간 자료 수집과 공부를 통해 차근차근 준비를 했더랬습니다.


부트로더와 몇개의 배포판들,  최종적으로 넘어갈 리테일 버젼까지.

또, 충돌이나 패닉이 날 상황, 드라이버 종류들을 알아보고

메뉴얼이나 팁 등을 찾아보면서 나름 준비를 했습니다.


대망의 9월4일.

집에 돌아와 설치시작!!

실패! 실패! 실패!  OTL...


나름 준비했다고 생각했으나, 별다른 방법을 알아내지 못한체 좌절...


그러다가 다시 마음을 가다듬고, 재설치!!

이때는 iPC 배포판으로 설치를 시작했고, 커널 종류를 변경했습니다.

그리고 몇가지 드라이버들을 잘 살펴보면서 기본적으로 필요한 것만 설치했습니다.


오오!!

성공입니다!!!!

이래저래 추가 드라이버를 설치하고 나니 아주 마음이 흡족합니다.

물론 아직 ODD 불능, 잠자기 불능, 가끔 커널 패닉이 일어나지만

그래도 그래픽이나 사운드 잘 되고 씽씽 돌아갑니다.


흐흐흐.

이제는 다음 산으로 넘어갈 때인 듯!


2009년 9월 4일 금요일

Hachin의 길은 멀고도 험하다.

일전에 밝혔듯이

현재 hachin을 시도하고 있는 보드는 intel p43, ich10인 보드다.

요것이 그닥 해킨에 좋은 칩셋은 아닌 듯 싶다.


가장 큰 어려움은 이 칩셋으로 성공했다는 보고가 거의 없는 터이고,

이 것에 관련된 좋은 내용들도 그닥....잘 보이지 않는다.


P43 칩 자체가 P45와 크게 차이가 없는 것이고,

ich10 도 ich10R과 크게 차이가 없으니 해킨에 무리없는 것 같기는 한데..

이상하게 잘 안되고 있다.


지금은 한발 물러서서 성공을 위한 자료 수집과 연구 중이다.

배포판 version은 iPC, XxX 두가지를 준비했고, Retail을 시도하기 위해 하나 준비했다.

boot-132로 부팅하기 위해 적절한 kext를 모아 전용 bootloader 만들었다. 으하하~

그래픽카드가 지원이 잘 안되는 경향이 있는 듯하고, 사운드칩이 via 것이라 없는듯..


이번 주말에 다시!!!




2009년 9월 1일 화요일

공인인증서 변환 시 openssl의 파싱 문제

현재 만들고 있는 Credential Management Service는 Globus의 simple CA를 통해 발급한 인증서를 인식하도록 되어있다.  이 인증서는 x509 v3를 따르고 있다.
 이 서비스가 좀 더 general하고 tool로 자리잡기 위해서는 직접 발급한 인증서가 아닌 공인 인증서를 사용할 수 있어야 했다.

 대부분의 기능이 구현된 상황에서 이러한 부분을 무시할 수 없기 때문에 공인 인증서 사용을 테스트하기로 했다.

공인 인증서의 변환은 다음과 같다. ( 변환된 파일들은 pem 형식이다. )

1. 인증서 관리도구를 사용하여 공인 인증서를 내보내기 한다.
2. 내보낸 파일을 openssl을 사용하여 변환한다.
3. 이 파일을 인증서 파일과 키 파일로 분리해야 한다.
$ openssl pkcs12 -in export_file.pfx -nokeys -out usercert.pem
$ openssl pkcs12 -in export_file.pfx -nocerts -nodes -out userkey.pem
4. 분리된 파일에서 필요없는 헤더를 삭제한다.
 - BEGIN HEADER 전의 내용
5. 사용하려는 인증서의 issuer를 hash.0, hash.signing_policy 파일을 만들어야 한다.
6. der형식의 인증서로 pem 형식으로 바꾼다. 여기에서는 yessign을 사용했다.
 - CA file path: /program files/NPKI/yessign/yessign.der
$ openssl x509 -inform DER -in yessign.der -out yessign.crt
7. 변환된 인증서로 부터 해쉬값을 얻는다.
$ openssl x509 -hash -in yessign.crt
8. crt파일을 hash.0로 변경하고 hash.signing_policy 파일을 만든다.
9. signing_policy는 다른 파일을 참조하여 구성한다.
 - 중요: access_id_CA, cond_subjects

이러한 과정을 거친 후 공인인증서를 확인해본다.
$grid-proxy-init -verify -debug

이때, 다음의 error가 발생되었다.
이 error에서는 extension, numeric id 89 등의 keyword를 발견 할 수 있다. 역시 우리의 친구, google은 해결책을 알려주었다. openssl의 pasing이 제대로 되지 않는다는 것이다.

이미 비슷한 일을 하고 있는 사람들이 꽤 있었기 때문에 쉽게 알아낼 수 있었던 것인데, kldp.org는 확실히 우리나라에서는 좋은 사이트인 것 같다. 흐흐흐~
http://kldp.org/node/104403 <- 요것은 링크~

diff -ru openssl-0.9.8b/crypto/x509v3/v3_purp.c openssl-0.9.8b.new/crypto/x509v3/v3_purp.c
--- openssl-0.9.8b/crypto/x509v3/v3_purp.c 2005-04-10 01:07:10.000000000 +0900
+++ openssl-0.9.8b/crypto/x509v3/v3_purp.c 2008-06-02 17:05:48.000000000 +0900
@@ -285,7 +285,9 @@
NID_key_usage, /* 83 */
NID_subject_alt_name, /* 85 */
NID_basic_constraints, /* 87 */
+ NID_certificate_policies, /* 89 */
NID_ext_key_usage, /* 126 */
+ NID_policy_constraints, /* 401 */
NID_proxyCertInfo /* 661 */
};
이것은 중요한 부분! 위에 보면 89번이 보인다~ 쟤가 없어서 그런거다.
소스를 고치고 다시 컴파일 하면 될껄? 아직 안하고 있다.

==============================================================================================

......실패했다.. ㅠ.ㅠ 엉엉