[ETC] USB를 부팅 시디로 만들기

Apple 2011. 1. 25. 13:37 Posted by galad
해킨토시 설치한 SLX110으로 OSX로 들어가서 파티션 나눠놨던 거 포맷하고 나왔더니 갑자기 부팅이 안된다...
예전에도 이랬던 적이 있어서 아마도 HDD의 Activated 된 파티션이 없으리라 생각하고 해결하려 했으나
마침 외장ODD가 없던 관계로 다른 PC로 1G USB에 XP/고스트/파티션 매직이 담겨있는 XP 설치 시디를 심기로 결정.

구글링해보니 USB를 시디처럼 쓸수있게 변환 가능하다는 걸 봐서 검색을 거쳐 발견.
http://alcong.textcube.com/1
VID/PID가 중요하다는데 싸구려라 그런지 그런건 모르겠고, 기존 USB 정보도 잘못해서 날려먹었는데도 멀쩡히 잘 되는걸 보니 운이 좋았던듯.

암튼 첨부한 check를 이용해서 USB의 정보를 확인/백업해놓고, SMI 툴을 이용해서 좀더 자세한 정보도 확인/백업 해놓고 시작하기.

1. SM툴 실행
2. 우측 하단의 Factory Driver and HUB 체크를  Scan USB 클릭!
   (Post1 항목에 안나타나면
상단의  HUB 클릭- Config 클릭.Scan USB (Automatic) 버튼  - OK 버튼 클릭)
  
(여전히 Post1 항목에 안나타나면 3번으로)
3. 반대로 이번에는 Factory Driver and HUB 체크를 해제하신후, Scan USB 
   (
2번과 동일한 방법으로 Config  클릭 - Config 클릭, Scan USB (Automatic) 버튼 클릭 -  버튼 클릭)
4. 스캔된 USB를 하단의 포트(정사각형 네모)를 클릭하면 USB정보가 뜬다. 백업 필수!(적던가 스샷 뜨던가)
5. 여기서부터 부팅 시디로 만들기 시작
(1)
USB 메모리가 인식된후에, 우측 하단의 Factory Driver and HUB 에  하신후 Setting 버튼 클릭
(2) 입력란에 스페이스 2개 넣고 OK
(3)
default.ini 파일을 불러서 아까 적어놨던 USB 정보 설정.
  다른 건 크게 문제 없고, Serial Mask = USB 시리얼 번호. 이거 넣으면 자동으로 Begin Serial, End Serial이 설정됨.
  Bad Block에도 아까 봤던 배드 블럭 정보 입력
  DBF Method에는 IC Version 정보 입력 - 내 경우엔 이 정보가 날아가서 그냥 T..... Standard? 로 했음
(4) 우측 중단의 Make Auto Run 체크하고 옆의 파일찾기 버튼 이용해서 USB에 심을 시디 이미지 선택.

    체크를 하면 CD영역 없이 USB 메모리를 초기화
(5)
Save To File을 클릭해서, 다음에도 사용할 수 있도록 적당한 이름을 부여한 후 저장.
 
저장했다면 다시 Setting  클릭, 방금전에 저장한 파일을 불러오기한 후에 OK 클릭.
(6)
Start 버튼을 클릭. 알아서 포맷~시디 이미지 심기까지 완료.
   USB 분리했다 꽂아보면 시디로 인식된다.

결국 이렇게 해서 만든 usb cd로 부팅해서 파티션 매직 실행해서 XP 파티션을 액티브로 설정해서 부팅했다는...

주의) xp, osx 멀티로 만들어 놓으면 부팅 시디로 파티션 매직 실행시에 extend 어쩌구 경고가 뜨면서 yes/no를 묻는다. NO 할 것!!!
   지난 번에 yes했다가 파티션 날아갔던 것 같은 기억이...

참고) 사용한 xp 설치 이미지는 magguli_xp_Final_loader.iso.
   블랙에디션 중에도 파티션 매직이랑 고스트가 들어있던게 있었던거 같은데 이미지를 못찾겠다.
0. SLX110 이나 110R이나 시퓨만 다르고 N270->N280 나머지는 동일하다고 한다.
   일단 무선랜이 intel 뭐시기 인데 이건 절대로 잡을 수 없다고 하니 따로 무선랜을 준비하던가 할 것.

1. 기존 Dell XPS M1210에 설치할때 사용했던 방법으로 시도하였으나 실패. 부팅 자체가 안됨 ㅡ.ㅡ;;
 - 기존 방법 : Windows가 설치되어 있으며(XP) OSX와의 듀얼 부팅을 사용하고자 할 때 유용하다.
   (1) XP에서 Acronis Disk Director Suite 로 OSX를 설치할 파티션을 생성/선택하고 Change Type으로 Shag-Swap 형식으로 변환.
   (2) Hazard판 Snow Leopard 10.6.1-10.6.2 SSE2 SSE3? DVD로 부팅. 설치 화면에서 메뉴의 디스크 유틸리티를 이용하여 1에서 만든 OSX 설치용 파티션을 OSX확장 저널링 타입으로 지우기
   (3) 설치할 파티션 선택하고 사용자화에서 10.6.1, 10.6.2 update, intel kernel 등을 선택하고 설치
   (4) 경우에 따라 다르겠지만, 내 경우에는 부팅 시 F8로 부팅 옵션 설정.
      -v(로그보기) arch=i386(시퓨 32bit. 필수! 나중에 com.apple.Boot.plist-OSX부팅 옵션 설정 파일-수정해서 항상 적용가능) cpus=1(듀얼코어이나 시퓨 간 동기화가 안되서 오히려 버벅대는 현상이 발생할 경우)
   (5) 부팅 시 still waiting 발생 시에는 ahci 설정 확인할 것(HDD 관련). IOATAFamily 관련 커널 패닉 시에는 해당 커널 삭제 또는 fix 설치해보기(노트북에서는 지원 안하는 커널이라고 함)
   (6) 부팅되면 검색해서 kext를 수정해가며 완성도를 높이기

- OSX를 먼저 깔고 Windows를 설치하고자 할 때는 OSX 해킹판 설치 시 카멜레온을 설치해 주면 될 듯

2. iATKOS의 Snow Leopard S3가 리얼맥과 거의 같은 방식으로 설치를 하여 업데이트 시에 커널 패닉이 일어나지 않는다하여 이 이미지로 설치 시도.
- 정말 일주일간 엄청난 삽질 끝에 설치하였다…
- 결과적으로 현재 안되는 것들 : 무선랜(절대 안된다고 함), CE/QE?(아무튼 그래픽 가속 안됨), 잠자기/재부팅 잘 안됨(이건 그냥 패스했음)
(1) 외장  USB DVD가 있었던 관계로 배포판 이미지를 구워서 설치하기로 함.
(2) 우선 XP 설치. 파티션은 4개. 1-XP, 2-OSX, 3,4-데이터용.
  XP 설치 시디로 부팅하여 파티션 나누고 1번 파티션에 설치.
 -> OSX를 1번에 설치하려면 하드의 부트 영역을 MBR이 아닌 GUID방식으로 변경해야 하는 등의 작업이 필요. WIN7은  GUID도 지원한다 하나 XP는 안되므로 이와 같이 설치
(3) XP 설치 후 하드 각 파티션 포맷해주고,  OSX 배포판 설치 시디로 부팅
(4) 설치 화면 나오면 디스크 유틸리티로 2번 파티션을 OSX 확장(저널링)으로 포맷
(5) 설치 디스크 선택하고 사용자화에서 다음의 옵션을 선택. 내 경우엔 최소한의 옵션만 선택해서 일단 부팅 가능하게 하는 것이 목표였음.
 - 부트로더 등 기본 선택값 모두 선택 해제.
 - 아톰 커널 선택. 시피유에 따라서 적절한 선택 필수. 중요!!!
 - 부두 파워, 부두 배터리, 32bit(부팅 시 arch=i386 옵션 넣는 것)만 선택
(6) 설치 후 부팅 시 F8 후 부팅 옵션 -v arch=i386 cpus=1 넣고 부팅
(7) 이상 있으면 로그 확인하고 수정(커널 재설치 또는 완전 재설치). 이상 없으면 사용자 생성 후 부팅 완료
(8) 여기서 삽질이 시작되는데 문제는 그래픽 카드를 못잡는게 아니라 SLX110에 달린 모니터를 제대로 인식하지 못하는 것인 듯
  - SLX110/110R의 경우 그래픽 카드가 내장 GMA950 27AE라는 모델인데 설치한 OSX10.6.3에 맞는 것을 찾아서 /S/L/E의 기본 커널을 변경해주고 권한복구 해준다.(커널은 첨부파일 또는 구글링)
  - 떄에 따라서는 com.apple.Boot.plist 수정도 필요할 듯?(이건 osx86사이트에서 검색해 볼 것)
  - 재부팅 전에 심봉사 신공이라고 검색해보고 여기서 연습해보기. 그리고 입력자판을 한글로 변경해 놓을 것
  - 커널 설치하고 재부팅하면 화면이 안나온다. 이게 정상임. 나오면 재설치해 볼 것
  - 종료하고 외부화면 연결하고 재부팅. 부팅 시에는 화면이 둘 다 나오다가 둘 다 안나오는데 fn + f3 으로 화면 전환해보면 해상도 깨진 화면이 나온다.
  - 내부/외부 모두 나오게 해 놓고 심봉사 신공 시작.
  - Ctrl + F2(애플 마크에 포커스) > 화살표 아래로 5번 하고 엔터(시스템 환경설정) > 한글로 "모니터"라고 치고 엔터 두번(영문으로 깔았으면 displays. 화면이 안보여서 현재 한글인지 영문인지 알 수가 없으므로 아까 미리 설정해 놓으란 얘기였음) > 탭 한번 화살표 아래로 이동(해상도 설정화면)하면 외부 화면의 해상도가 변경되면서 정상적으로 표시된다. > 윈도우 모음을 클릭하여 내부 화면 해상도 설정화면을 외부화면에 표시한다 > 내부 화면의 해상도를 1024x768x100MHz로 변경하면 찌그러졌지만 일단 내부화면이 표시됨
(9) 재부팅. 외부 화면 연결 끊고 부팅(내부화면 여전히 잡힘 ㅠ.ㅠ) 후, SwitchResX를 깔고 커스텀에서 1366x768x60MHz 추가하고 재부팅
(10) 화면 정상 표시됨 ㅠ.ㅠ 이거할라고 일주일 걸렸음.
(11) 리얼텍의 맥용 커널을 깔면 유선랜 정상작동.
(12) 기세를 타고 소프트웨어 업데이트 시도(10.6.6으로)하고 재부팅 했다가 시퓨 커널 패닉… ㅡ.ㅡ;;;
 이제와서 생각하면 당연한 것을… 리테일에서는 아톰 시퓨를 지원하지 않는다. 아톰 커널을 수정해야함(mach_kernel).
(13) 구글링해서 10.6.6용 아톰 커널을 받고 다른 커널 수정하듯이 싱글모드로 부팅하여 수정하려 했으나 부팅 자체가 안됨
  version mismatch between kernel and cpu… 발생.
(14) OSX 인스톨 시디/이미지로 부팅, 터미널 열고 /의 mach_kernel을 교체, 권한 복구 후 재부팅
(15) 똑같은 오류. 잘 보니 darwin 10.3이 로드됨.(10.6.6은 10.6이어야 함). com.apple.Boot.plist를 보니 kernel이 custom으로 되어 있음.
   설치 시디 부팅, 터미널, / 확인하니 custom이라는 이름으로 시퓨 커널이 들어가 있음 ㅡ.ㅡ;;; 배포판이라 그런 듯. 10.6.6용 아톰 커널을 custom으로 이름 변경.(터미널서 com.apple.Boot.plist 수정하려 했더니 에디터가 없는 건지 못했음)
(16) 시퓨 커널만 변경하고 재부팅. 정상 부팅됨 ㅠ.ㅠ. SleepEnabler.kext 때문에 안된다는 얘기도 있음. 그럴땐 해당 커널 지우고 해볼것.

* 넷북의 경우엔 시퓨 커널 문제로 리테일을 깔더라도 업데이트 시 커널을 계속 교체해야 하지 않을까?
* 부트로더 + 리테일로 설치하면 부트로더가 해킨에 필요한 커널들을 로드하므로 나머지는 리테일처럼 유지가능?
* /Extra/Extentions를 활용할 것. 부트로더가 로드하는 영역

알면  알수록 오묘한 해킨의 세계임……

[Book] 1일 30분

감상문 2011. 1. 3. 18:05 Posted by galad
예전에 봤던 책인 것 같은데, 내용이 전혀 기억나지 않아서 다시 읽어보았다.
2007년도 책임에도 불구하고 도움이 되는 내용이 많더라...

- 마음가짐이 중요
 동기부여 : 장차 자신이 되고 싶은 모습을 상상하라. 그 상상을 이루기 위해 지금 무엇을 해야할지 생각하자.
-> 내가 되고 싶은 모습을 아직도 명확하게 그려내질 못하겠다. 이것부터 해결해야 할 듯.

- 독서
 책은 한권씩 사기.
 사면 바로 읽기 시작하기
 출퇴근 시간, 욕조 안에서, 공부 중 휴식 시간 등 활용할 수 있는 시간은 있다.

- 공부한 절대량이 중요하다.
 시간 확보하기
  : 일찍 출근해서 회사에서 공부하기. 일찍/늦게 나와서 전철에서 앉아가며 공부하기. 업무을 빨리 마치고 공부할 시간 확보하기 등

- 집중력 끌어올리기
 공부 + 휴식을 1세트로.
 30분 공부 + 15분 휴식처럼 자신에게 맞게 시간 배분하기
 독서는 최고의 휴식 : 공부할 때와는 뇌의 다른 부분을 사용하므로 문제없다.
 집중력이 떨어지면 즉각 그만두자. 무리해서 하면 뇌가 공부 = 고통으로 인식한다.
 집중력이 떨어질 때는 장소, 방법을 바꿔보자.

- 목표세우기
 목표를 명확하게 세울 수록 성공 확률이 높아진다.
 무리하지 않게 설정하기
 반드시 종이에 써서 보이는 곳에 붙여두 기
 세세한 계획표를 세우자. : 최종 목표 달성일 > 장기 목표 설정 > 1일 목표 설정

- 목표를 써서 가지고 다니기

- 장기계획형
 하루 공부로는 조금 적다고 생각될 만큼의 공부량을 날마다 꾸준히 하는 것이 요령이다.

- 아침형 인간이 되자
 일어나서 따뜻한 물로 샤워하면 뇌가 깨어난다.

내가 하고 싶은 것 3가지를 1일 30분씩 1년 동안 공부하면 170시간 * 3가지가 되는군.
절대량으로 보아서는 많아 보이지는 않지만, 아예 하지 않는 요즘의 나태한 생활과 비교해보면 1년 후에는 엄청난 차이가 되겠지...
열심히 살자~!!

'감상문' 카테고리의 다른 글

[Book] 부부항해 내비게이터  (0) 2011.02.20
[Book]그들이 말하지 않는 23가지  (0) 2011.02.13
[Book] 시골의사의 부자경제학  (0) 2010.12.12
[Book] 서른과 마흔 사이  (0) 2010.12.11
[Book] Chasing Cool  (0) 2010.12.11

[struts2] <s:if> 사용법3

프로그래밍/Framework 2011. 1. 3. 14:08 Posted by galad
<s:set var="isTvAppAdmin"><%=isTvAppAdmin%></s:set>

<s:if test="!{isTvAppAdmin}">
<s:if test="{isTvAppAdmin != 'true'}">
<s:if test="{isTvAppAdmin.equals('true')}">
<s:if test='{isTvAppAdmin != "true"}'>
<s:if test='%{#isTvAppAdmin.equals("false")}'>
...
...
</s:if>

isTvAppAdmin에 true를 넣고,
거짓이면 if문 내의 것이 실행되도록 했음.

test = !{...} 에서 {} 안의 것이 참 또는 거짓을 판별하는 조건이 되고, !는 NOT 임.

(수정)
위와 같은 경우, s:set 으로 isTvAppAdmin 에 넣은 값이 문자열 "true" 또는 "false" 라서 s:if 에서 boolean 으로 사용되지 않음.
즉, {문자열} 일 경우에는 무조건 참. 그래서 문자열 비교로 수정하였음.

(수정2)
문자열 비교이므로 equals 사용할 것. ㅡ.ㅡ;;;;

(수정3)
문자열 비교인데 equals 안됨.
수정1에서 안되었던 것은 문자열 비교이므로 ""로 묶어야 하는데 ''으로 묶어서 안되었던 것인 듯.

(수정4)
역시 equals로 해야만 함!.
단, s:set으로 밸류 스택에 넣었기 때문에 #변수명으로 불러와야만 함!
그리고 !{조건} 은 성립하지 않는 듯. 결과값이 생각과 다름.  <s:if test='%!{#isTvAppAdmin.equals("true")}'> 가 안되서 위와 같이 했음.