A Small Step Forward 유학, 연구, HCI, 정보와 사람, 창의성

17Jan/080

[이벤트] 열씨미와 게을러의 리눅스 개발 노하우 탐험기 시즌 2

임베디드 개발자로 3년을 일하면서 임베디드 리눅스에 대해 가장 먼저 접했던 책이 바로 '임베디드 리눅스'이다.  jhrogue 님이 쓰신 이 책을 보고 여러 모로 도움을 많이 받았었다. 책을 쓰시는 방식도 상당히 꼼꼼해서 기억에 남았던 기억이 난다. 그 이후로는 IBM developerWorks에서의 개발자 책꽂이 column 이나 블로그를 통해 접할 수 있었다.

이번에 새로 책을 쓰셨다는 소식을 RSS를 통해 듣고는 가봤는데 이벤트를 하신단다. 책 제목은 '열씨미와 게을러의 리눅스 개발 노하우 탐험기'라고 하는데, 좀 길기는 하지만 참신한 느낌이다. 아무튼 이벤트 참여가 재밌어 보여서 죽어가던 내 블로그에 이런 식으로라도 간만에 글을;; 우선 책의 디자인이나 목차를 보고는 상당히 맘에 들었다. 우리나라에 더 있어줬으면 하는 부류의 책이겠구나 하는 생각 때문에. Well-written 책이라고 생각하는 유닉스, 리눅스 프로그래밍 필수 유틸리티' 와 약간은 비슷한 접근을 하고 있으면서도 보다 프로그래밍 흐름 자체에 초점을 맞춘 느낌이 들었다. 리눅스 환경에서 프로그래밍을 하는 데에 있어서 모르면 괴롭거나 안되는 것들, 알면 정말 도움되는 핵심 요소들을 모아 놓은 느낌이다. 타겟은 초급 혹은 초중급 개발자인 것 같다.

이 책의 후속편을 만든다면 어떤 내용을 담으면 좋을까? 우선 나의 경험을 생각해 보았다. 나의 경험에서는 오픈소스 패키지들을 내가 작업하는 시스템에 통합시키는 작업이 가장 많은 시간을 요하고 또 삽질을 유발하는 작업이었다. 시즌 1에서 기본적인 프로그래밍 환경과 툴들을 다루었다면, 시즌 2에서는 오픈소스 패키지 활용에 대한 내용을 엮으면 어떨까 하는 생각이 든다. 프로그래밍 과정도 결국에는 여타의 과학 분야처럼 뉴턴의 말마따나 '거인의 어깨 위에 서서' 하는 것이니 말이다.

독창적인 프로그램을 만드는 것만큼이나 기존에 구현되어 있는 특화된 기능 block 들을 어떻게 조립하느냐가 요즈음과 같은 모듈화와  API(Application Programming Interface) 시대에 필요한 스킬이 아닐까 싶다.

요약하면, 시즌 2에서 다루어 주었으면 하는 내용은

  • 다양한 오픈소스 패키지 활용법 (웹서버, FTP, SSL, SSH 관련)
  • 오픈소스 라이브러리 활용법 (내 프로그램에 integrate 하기)
  • 다양한 모듈 / 패키지 통합해서 하나의 완성된 시스템 만들기

등이 되겠다. 이거 보통 일이 아니겠는데 -_-;;; 좀 더 욕심을 내면 오픈소스 개발에 참여하기라든가 커뮤니티 활동하기 등도 다루어볼 수 있지 않을까 싶다.

13Mar/060

PC 갈아엎은 이야기

회사 PC 문제 해결
11시까지 고생고생하여 간신히 문제를 해결했다.

발단
- 전원의 문제, 혹은 OS의 자동 재시작 설정으로 인한 상습적인 재부팅 문제
- 특정 홈페이지 (Interpark, cyworld 등)에 접속이 안 되는 문제 발생
- 구성: 120기가 하드에 80기가 윈XP, 40기가 Fedora Core 4 설치 후 듀얼부팅 중 (Lilo boot loader 사용)

MSIE 삭제
- 이를 해결하기 위해 SP2를 삭제하고 MSIE를 재설치했으나 문제 계속 발생
- 오히려 자동 재부팅되는 문제가 더욱 심각해져 사용이 어려울 정도가 됨

시스템 복원
- 이를 해결하기 위해 시스템 복원을 시도 (인터넷 접속 문제가 일어나기 전으로)
- 그러나 윈도우의 시스템 부분이 손상되어 부팅이 안 되는 문제 발생
- 지속적인 재부팅 문제로 인해 파티션의 윈도우 시스템 부분이 손상된 것으로 추정
- 리눅스로는 부팅 가능, 윈도우 파티션 접속도 가능

파워 교체
- Power Supply의 수명으로 인한 문제라고 판단하여 파워를 교체함
- 완전 복구된 현재까지는 재부팅 문제 미발생

윈도우 재설치
- 윈도우를 재설치하기 위해 CD를 넣으면 하드웨어 검색 후 다운됨
a. 프라이머리의 MBR에 있는 Lilo가 문제가 생겨 윈도우 설치가 안되는 것이었음!
- 윈도우 파티션을 날리기 위해 98 부트 디스크를 쓰려 했으나 NTFS 미인식으로 실패

fdisk
- 리눅스의 rescue disk의 fdisk로 파티션 삭제 후 NTFS 로 재구성
- 그러나 a를 생각 못하였기 때문에 계속 설치 CD 미작동

잘못된 해결
- 다른 하드를 가져와 마스터로 잡고 현재 하드를 슬레이브로 잡으니 설치 가능
- XP를 설치하여 부팅 되었으나 마스터를 제거하고 슬레이브를 마스터로 잡으니 부팅실패
- 오히려 잘 되던 원래 하드까지 문제 발생!

근본적 해결
b. 결국 하드를 다시 날리고 리눅스 rescue disk를 통해 /boot 파티션을 제거
- 윈도우 설치CD가 동작을 했고, 설치가 되었다.
- 윈도우 재설치 후 My Computer - Properties - Advanced - Startup and Recovery - System failure - Automatically restart 옵션 해제 함 (이것도 원인이었는지는 아직 불명확한 상태)

교훈
- OS 설치 후 마스터, 슬레이브 변경은 위험하다
- Linux와 Windows를 같은 하드에 설치하는 것은 위험하다
- boot loader에 대해 더 잘 알자

19Aug/052

Fedora Core 4

idea : 자주 건드릴법한 설정 파일에 대해 주소를 죽 달아 놓는건 어떨까?

Font
- Fixedsys install
- Microsoft TTF install
- Termibus install

IIIMF
- Allow Korean input method (no more Ami, Nabi...)
- Add Gnome Input Method Switcher (GIMLET) to desktop panel
- locale을 ko_KR로 놓고 아래의 명령을 수정하니 en_US locale에서도 원하는대로 작동!
- 아직 한영키는 안 먹는듯..

Q: Can I manually enable IIIMF for other locales or all locales so that I can use [insert your favorite language engine name]?

Yes. To enable IIIMF regardless locale in your current user environment. Please do:

$ mkdir ~/.xinput.d
$ ln -s /etc/X11/xinit/xinput.d/iiimf ~/.xinput.d/default

To enable IIIMF in your current user environment on specific locale (i.e. en_US). Please do:

$ mkdir ~/.xinput.d
$ ln -s /etc/X11/xinit/xinput.d/iiimf ~/.xinput.d/en_US

Then restart X.

http://fedora.redhat.com/projects/i18n/iiimf-faq.html

http://www.openi18n.org/modules.php?op=modload&name=Sections&file=index&req=viewarticle&artid=30&page=1

한영/한자키 사용
커널 2.6.x에서 한영키 사용하기
블로그 너무 멋있다.. 벤치마킹해야지..

http://people.kldp.org/~krisna/blog/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8/2004/11/12/364.html

http://barosl.com/blog/index.php?pl=200

http://vent.sejong.ac.kr/np/

터미널 한글 출력

http://php.chol.com/~uypia/tt/index.php?pl=31

그래도 안되면

http://blog.daum.net/rainman7/2213390

한글화 싸이트

http://wiki.kldp.org/wiki.php/FedoraCore4/%C7%D1%B1%DB%C8%AD

http://home.gagme.com/greg/linux/fc4-tips.php

Tagged as: , 2 Comments