일요일 9월 06, 2009

처음 vi를 접했을 때를 기억하면, 정말 두 달 동안은 적응하느라 머리를 쥐어뜯었던 기억이 납니다. 하지만 :help를 보면서 하나하나 기능을 익혀나가니 이 에이터의 위대함이 느껴지는 그런 기분을 느낀 기억이 있는데... 여러분은 어떨지 모르겠습니다. vi가진 기능의 20%만 자유롭게 사용해도 오히려 두뇌 회전이 에디터를 못 따라 간다고 느낄정도로 편리한 기능들을 제공합니다.

이상하게도 OpenSolaris 에서는 vi에서 아무리 syntax on을 해줘도 화려한(?) syntax coloring 기능을 사용할 수가 없었습니다. 오랫동안 터미털 환경을 쓰긴 분들의 경우 오히려 coloring이 없는게 편하신 분들도 계시겠지만,,, 이전에 OpenSolaris전에는 sunfreeware.com에서 직접 vim관련된 소스나 태키지를 받아 직접 컴파일해서 쓰면 coloring을 사용할 수가 있었습니다. 하지만 이미 OpneSolaris에는 vim이 자연스럽게 설치가 되어 있습니다. 하지만 컬러!가되지를 않습니다.

버그라고 하기는 그런 부분이지만, OpenSolaris의 vim은 TERM=xterm에서 color를 보여주지 못합니다. 즉, env값 중 TERM 값을 변경해 주어야만 합니다. 하지만 전 xterm을 쓰면서 syntax highlighting 기능도 쓰고 싶은데, 어찌할까 하다 간단하게 alias를 ~/.bashrc에 넣주고 해결하였습니다. 즉, vi가 실행될 때만 xtermc로 변경하도록 하였습니다. vi를 종료하고 나오면 다시 xterm그대로겠죠

alias vi='/usr/bin/env TERM=xtermc vim'



월요일 8월 31, 2009

Summary in English : How to use a happy hacking keyboard on OpenSolaris without broken layout ! (may work in Solaris)

아마도 다른 USB 키보드도 해결이 되지 않을까 합니다. 우선 전 Laptop에 OpenSolaris Build 118 을 현재 사용하고 있습니다. 집에서 사용하던 최고급(?) 키도브인  HHB2(Happy Hacking Keyboard Professional 2)를 붙여서 사용하 하려고 연락 하였으나, 알파벳과 숫자를 제외한 부분에서 키보드 layout이 맞지 않아 사용하기 힘들었습니다. 예로 키의 quotation을 누르면 colon 이 나오는 식이었습니다.

OpenSolaris도 JDS(GNOME)를 사용하면서 많은 부분에서 GUI환경은 Linux의 내용을 참조하여 수정하거나, 참조할 수 있습니다. 그와 관련된 검색 등으로 알아보던 중 방법을 알아내었습니다.

$ setxkbmap us

위와 같이 실행을 하시면, HHB2의 Layout이 X 환경에서 Keyboard mapping을 US keyboard layout으로 설정하여 USB로 연결한 HHB2에게 us keyboard map이 설정되어 키보드를 정상적으로 사용할 수 있습니다.



일요일 8월 30, 2009

Summary in English : Opensolaris 118 pkg bug workaround

118 빌드로 업데이트 한 후에 pkg로 업데이트나 package를 다운로드 하는 경우 이상하게 다운로드를 실패할 경우가 있습니다.
아마 에러 메시지는 아름아닌 timeout이었을 것입니다. . 물론 아직 Opensolaris의 repository server는 아주 빠른 속도로 다운로드를 할 수는 없지만 이전에는 이런 문제가 없었는데, 갑자기 이런 문제가 발생하고 있습니다.

이 문제는 버그로 알려져 있고, workaround는 간단하게 TIMEOUT 값을 늘려주면 가능합니다.

쉘 환경 변수로 다음과 같이 설정해 줍니다.

export PKG_CLIENT_TIMEOUT=900

그리고 다시 pkg 를 시도하시면 문제 없이 다운로드되어 설치됩니다.

일요일 7월 19, 2009

다들 업데이트 자주 하고 계시나요. Development build는 금방금방 나오내요. 이 글은 좀 늦게 올리지만, 전 나오자 마자 업데이트해서 쓰고 있습니다. 주로 bug fix한 내용이고, 한 가지 주의할 사항이 있어 알려드립니다.

update방법은 제 블로그에 글이 있어, 쉽게 하실 수 있으실 텐데요. 이번 update에서는 잘 못하면 update하고 reboot하다 fail이 발생할 수 있다고 합니다. 그걸 막기 위해서는 update하고 reboot전에 아래와 같이 조치를 취해 주시면 됩니다.

	1. Note the name of the new boot environment (BE) that was created (for example, opensolaris-#)
        -> update할 때 마다 image 이름의 번호가 하나씩 올라갑니다 전 이번에 opensolaris-6이 되었습니다. 올라간 새로운 이미지 번호를 생각해둡니다.

 	2. Using a Terminal window, execute the following commands
        -> 아래와 같이 임의의 디렉토리에 새롭게 update한 os를 마운트하고, repository 내용중 하나를 clean-up! 시켜주면 간단하게 끝납니다.

    		$ pfexec beadm mount <new BE name> /mnt
    		$ pfexec svccfg
    		svc:> repository /mnt/etc/svc/repository.db
    		svc:> delete network/fcoe_config
    		svc:> end
    		$ pfexec beadm unmount <new BE name>

beadm mount 라는 유용할 것 같은 command를 알아낸 것도 중요하겠내요.

첨부로 새로 들어간 Package 리스트를 올립니다.
SUNWaudiocmi			C-Media 8738 Family Audio Driver
SUNWbfe				Broadcom BCM4401 Fast Ethernet Driver
SUNWdosbox			DosBox - DOS Emulator
SUNWejabberd			ejabberd - Jabber/XMPP instant messaging server
SUNWiozone			iozone - a filesystem benchmark tool
SUNWlibxmlrpc-c			XMLRPC C/C++ Library
SUNWlogilab-astng		logilab-astng - Python Abstract Syntax Tree New
SUNWlogilab-common		common python libraries for logilab applications
SUNWmptsas			LSI MPT SAS 2.0 Controller HBA Driver
SUNWpython-pycurl		Pycurl - Python interface to libcurl
SUNWshmux			shmux - Shell Multiplexor
SUNWsnort			snort - Network Intrusion Detector
SUNWxwfs			X Window System Font server
developer/openjdk7/demo		OpenJDK 7.0 Demo Programs (1.7.0)
developer/openjdk7/demo-64	OpenJDK 7.0 64-bit Demo Programs (1.7.0)
developer/openjdk7/tools	OpenJDK 7.0 Dev. Tools (1.7.0)
developer/openjdk7/tools-64	OpenJDK 7.0 64-bit Dev. Tools (1.7.0)
system/openjdk7/manual		OpenJDK 7.0 Man Pages (1.7.0)
system/openjdk7/manual-ja	OpenJDK 7.0 Man Pages: Japan (1.7.0)
system/openjdk7/runtime		OpenJDK 7.0 Runtime Env. (1.7.0)
system/openjdk7/runtime-64	OpenJDK 7.0 64-bit Runtime Env. (1.7.0)





This blog copyright 2009 by Ilho Kim