'ubuntu'에 해당되는 글 29건

  1. 2013.11.09 :: 그놈 터미널에서 작업 이력 기록 하기
  2. 2011.11.28 :: 우분투에서 특정 버전의 프로그램 설치하기
  3. 2011.01.11 :: 우분투 리눅스에서 USB 키보드에 달린 터치패드를 disable 하고 싶을 때 (2)
  4. 2010.06.08 :: Empathy에서 Network Error가 날 때
  5. 2010.06.04 :: 리눅스에서 UPnP/Bluetooth 가지고 음악 재생하기 기본 지식
  6. 2010.02.02 :: bash 명령 줄에서 편집 기능 쓰기
  7. 2010.01.15 :: 우분투 리눅스에서 이클립스가 말을 안들을 때
  8. 2009.06.10 :: 64bit 우분투 리눅스 환경에서 이클립스로 자바 Midlet 개발환경 설정하기
  9. 2009.03.11 :: Ubuntu 버전을 아는 간단한 방법
  10. 2009.03.03 :: Thinkpad에서 우분투를 쓰는데 화면 밝기 조절이 안될 때
  11. 2009.02.19 :: 우분투 리눅스에서 구글 비디오 업로더 실행하기
  12. 2009.02.18 :: ThinkPad로 우분트를 쓸 때 배터리 수명을 늘이는 방법
  13. 2009.01.16 :: 우분투에서 구글 데스크탑을 쓸 때 Microsoft Office 문서도 제대로 찾으려면
  14. 2009.01.15 :: 우분투에서 대기모두에서 되돌아 왔을 때 USB 마우스/키보드 복구하기
  15. 2008.12.22 :: Doxygen으로 한글 코멘트를 RTF로 출력하기
  16. 2008.12.20 :: 우분투에서 여러 개의 네트워크 인터페이스가 있는 것 처럼 만들기
  17. 2008.12.11 :: Ubuntu에서 ffmpeg을 이용해서 PSP용 비디오 변환하기 (1)
  18. 2008.12.02 :: Ubuntu에서 openssh 클라이언트를 이용한 ssh 터널 만들기
  19. 2008.12.02 :: Ubuntu에서 캡스락이 깜빡일 때
  20. 2008.11.25 :: 우분투에서 PSP용 비디오 변환 하기 (8)
  21. 2008.11.12 :: Ubuntu에서 USB 메모리가 바보짓을 할 때
  22. 2008.11.06 :: 리눅스 하드를 외장 USB 하드 케이스에 넣고 리눅스에서 마운트 하기
  23. 2008.11.03 :: 우분투 8.10 + X61 환경에서 Fn+F7로 듀얼 스크린 제대로 쓰기
  24. 2008.11.03 :: 가상 머신과 충돌을 일으키는 키보드 보안 프로그램 해결책 (2)
  25. 2008.10.24 :: VirtualBox 에서 인터넷 뱅킹 / 카드 결제하면 죽어버리는 현상 (7)
  26. 2008.10.22 :: 우분투의 보수적인 팬 속도 관리
  27. 2008.10.16 :: VirtualBox의 shared folder 기능 쓸 만한가?
  28. 2008.10.16 :: 윈도 XP를 돌리기 위한 최소한의 하드 디스크 크기는? (11)
  29. 2008.10.16 :: X61 + 우분투에서 컴퓨터 끄기 / 최대 절전 / 절전 모드 시간 비교

리눅스 계열 서버에서 작업을 하다보면 작업 이력을 캡처하고 싶어진다. 예전 같으면 별도의 터미널 에뮬레이터를 많이 썼고 거기에는 대개 캡처 로깅이 메뉴로 있었는데 요즘은 주로 그놈 터미널(gnome-terminal)을 쓰다보니 화면 캡처를 어떻게 하나 궁금했다. 그러다 오늘 대략으로 캡처를 해야 할 일이 생겨서 확인해보니 헉... "전체 선택" 해서 복사 & 붙여 넣기를 하면 스크롤 백 버퍼에 있는 전량이 복사가 된다. 물론 스크롤 백 버퍼의 크기는 줄 수로 지정할 수도 있고 무한대로 할 수도 있다. 별도의 캡처 로깅이 메뉴에 없어서 그런 기능이 없는 줄 알았는데... 있어서 다행이다.

저작자 표시
신고
posted by 신묘군
특별한 이유가 없으면 소프트웨어 업데이트는 항상 최신 버전을 깔아준다. 살다보면 최신 버전 말고 구 버전이 필요한 경우가 있다. 내 경우에는 firefox 8.0 에서는 오픈 뱅킹이 되지 않아 7.0 을 깔아야 했다. 그런 경우에는 다음과 같이 하면 된다.

$ sudo apt-get purge firefox
$ sudo apt-get install firefox=7.*

신고
posted by 신묘군
기술을 얘기한다 2011.01.11 16:58
우분투 리눅스에 포함되어 있는 X 윈도는 워낙 훌륭해서 USB  키브드와 잘 연동된다. 예를 들어, 내가 현재 사용하고 있는 IBM Ultranav 키보드의 경우 키보드에 빨콩이라고 불리는 스틱 형태의 포인터와 터치패드가 동시에 내장되어 있다. 따라서, 이 키보드를 연결하면 이들 모두가 인식되어 빨콩으로든 터치패드로든 모두 마우스 포인터 옮기기와 클릭 등을 할 수 있다.

그런데, 가끔 키보드를 치다가 터치패드를 건드려서 엉뚱한 윈도가 활성화 된다든지 하는 맘에 안드는 경우가 생겨서 나는 항상 터치패드는 disable 시켜놓고 쓴다. 윈도의 경우 Ultranav 용 드라이버를 설치하면 선택적으로  enable/disable 할 수 있지만 우분투에서는 어떻게 할까?

물론 항상 그렇지만 여러가지 방법이 있다. 그리고 그 방법은 현재 사용하고 있는 X 윈도의 버전 등과도 관련이 있다. 어쨌든 최신판의 우분투를 기준으로 하면 다음과 같이 해결된다.

우선, 입력 장치가 뭐가 달려 있는지 본다.

newcat@newcat:~$ xinput list
⎡ Virtual core pointer                        id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ Synaptics Inc. Composite TouchPad / TrackPoint    id=12    [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                       id=14    [slave  pointer  (2)]
⎜   ↳ Macintosh mouse button emulation            id=16    [slave  pointer  (2)]
⎜   ↳ Synaptics Inc. Composite TouchPad / TrackPoint    id=11    [slave  pointer  (2)]
⎣ Virtual core keyboard                       id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
    ↳ Power Button                                id=6    [slave  keyboard (3)]
    ↳ Video Bus                                   id=7    [slave  keyboard (3)]
    ↳ Sleep Button                                id=8    [slave  keyboard (3)]
    ↳ Lite-On Tech IBM USB Travel Keyboard with UltraNav    id=9    [slave  keyboard (3)]
    ↳ Lite-On Tech IBM USB Travel Keyboard with UltraNav    id=10    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard                id=13    [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                      id=15    [slave  keyboard (3)]
포인터로는 시냅틱 터치패드/트랙포인트가 두개 (id 11번과 12번) 그리고 TPPS/2 IBM 트랙포인트가 하나 보인다. (후자의 경우 현재 사용하는 노트북에 내장된 빨콩인 듯) 키보드로는 울트라나브 키브드가 두개 보이는데 하나는 외장 USB이고 하나는 IBM ThinkPad 노트북에 내장된 키보드인 것으로 추정된다.

그렇다면 내가 disable 하고 싶은 터치패드가 11번인지 12번인지 어떻게 알 수 있을까? 다행히도 해당 장치가 발생시키는 이벤트를 볼 수 있는 기능도 xinput 이 제공한다.
newcat@newcat:~$ xinput test 11
motion a[0]=2316 a[1]=549
motion a[0]=2320 a[1]=545
motion a[0]=2325 a[1]=541
...
이런 식으로 각 장치 id 를 바꿔가면서 해보면 어느 장치가 몇 번인지를 알게 된다. 나의 경우는 11번을 disable 해야 한다는 걸 알게되었고 이제는 disable 시키려고 한다. 그럼 각 장치가 제공하는 기능이 무엇이 있는지 검사한다.
newcat@newcat:~$ xinput list-props 11
Device 'Synaptics Inc. Composite TouchPad / TrackPoint':
    Device Enabled (135):    1
    Device Accel Profile (265):    0
    Device Accel Constant Deceleration (266):    1.000000
    Device Accel Adaptive Deceleration (268):    1.000000
    Device Accel Velocity Scaling (269):    10.000000
    Evdev Reopen Attempts (250):    10
    Evdev Axis Inversion (270):    0, 0
    Evdev Axes Swap (272):    0
    Axis Labels (273):    "Rel X" (143), "Rel Y" (144)
    Button Labels (274):    "Button Left" (136), "Button Middle" (137), "Button Right" (138), "Button Wheel Up" (139), "Button Wheel Down" (140)
    Evdev Middle Button Emulation (257):    2
    Evdev Middle Button Timeout (258):    50
    Evdev Wheel Emulation (259):    0
    Evdev Wheel Emulation Axes (260):    0, 0, 4, 5
    Evdev Wheel Emulation Inertia (261):    10
    Evdev Wheel Emulation Timeout (262):    200
    Evdev Wheel Emulation Button (263):    4
    Evdev Drag Lock Buttons (264):    0
옳지. 첫 줄에 있는 "Device Enabled" 가 눈에 번쩍! 이걸 1 -> 0 으로 바꿔주면 되겠다.
newcat@newcat:~$ xinput set-int-prop 11 "Device Enabled" 8 0
0 앞에 있는 8은 8 비트짜리 데이터라는 뜻.






신고
posted by 신묘군
아마 MSN을 지원하는 telepathy-butterfly 에 문제가 있는 모양. 일단 Empathy를 종료하고

killall telepathy-butterfly

를 해준뒤 다시 empathy를 시작하면 된다. 어떤 사람의 블로그를 참조하였음.
신고
posted by 신묘군
1. 블루투스

블루투스를 다루려면 bluez 를 이용하면 된다. Bluez를 이용하는 법에 대한 기본 정보는 An Introduction to Bluetooth Programming 참조. 샘플 프로그램은 여기에 있다.

리눅스 커맨드 라인에서 어떤 식으로 블루투스를 다룰 수 있는지에 대하여는 Manually Using Bluetooth 참조.

2. UPnP

UPnP를 다루기 위한 기본 라이브러리는 libupnp 이다. guPnP는 UPnP를 객체지향 스타일로 다룰 수 있게 해주는 프레임워크이다.

UPnP를 다룰 수 있는 기본 도구로서 우분투 리눅스에 설치할 수 있는 것으로는 upnp-tools 라는 패키지가 있으나 AV Control Point 는 무슨 이유에서인지 최근 버전에서 빠져있고 소스를 받아서 build를 해도 필요한 헤더 파일이 없어서 빌드가 되지 않음. (우분투의 버그 리포팅 사이트에 버그로 등재되어 있으니 해결 시한은 알려진 바 없음.)

UPnP를 지원하는 프레임워크로서 Coherence가 있다. 예를 들어, 음악 재생 프로그램인 Rhythmbox의 경우 Coherence Plug-in을 설치하고 enable 시켜주면 원격지의 UPnP 미디어 서버의 음악을 찾아 재생할 수 있다.

UPnP를 지원하는 여러 소프트웨어 패키지, 프로젝트에 대한 소개는 별도의 사이트에 있는데 이 사이트의 샘플 소스인 play-next-pause는 상당히 코드가 짧아서 이해하기 좋다. UPnP-inspector 라는 코드가 제일 좋은 소스인 듯.

추가된 이야기 : 안드로이드 환경에서는 CyberLinkForJava를 사용할 수 있다. 그 외 AndroMoteTwonkyServer mobile 가 있으나 소스가 공개되어있는지는 확인하지 못하였다.

3. Audio control

리눅스에서 오디오를 다루는 제일 좋은 라이브러리는 GStreamer 이며 Python binding이 있어서 간단히 다룰 수 있다. GStreamer는 souce / sink 라는 개념이 잘 정리되어 있다. 다음의 예는 mp3 파일을 재생하는 것을 필요한 source / sink 를 연결해서 하는 방법을 보여준다.

gst-launch-0.10 filesrc location=파일이름.mp3 ! mad ! audioconvert ! alsasink

리눅스에서 오디오 입/출력을 다루는 가장 잘 정리된 도구는 PulseAudio이며 특히 PulseAudio Volume Control 과 PulseAudio Device Chooser는 필수 도구.
신고
posted by 신묘군
자세한 내용은 별도의 매뉴얼을 참조할 것.

자주쓰는 것
^A : 줄의 처음으로
^E : 줄의 끝으로
Alt-F (또는 Alt-오른쪽 화살표): 한 단어 앞으로 이동
Alt-B (또는 Alt-왼쪽 화살표) : 한 단어 뒤로 이동


신고
posted by 신묘군
우분투 리눅스에서 이클립스를 쓰는데 갑자기 어떤 버튼이 안 눌러지는 등 이상한 증세가 있다. 한참을 해메이다가
Fixing Eclipse for Ubuntu Karmic Koala 9.10 라는 글을 발견하고 따라하니 해결되었다.
export GDK_NATIVE_WINDOWS=1
라고 환경변수를 잡아주고 그 창에서 이클립스를 실행하면 된다.
신고
posted by 신묘군
기술을 얘기한다 2009.06.10 00:25
핸드폰에서 돌아가는 자바 프로그램을 만들기 시작했다. 음... 첨 시작하는 거라 모르는게 너무 많다. 일단, 간단한 프로그램이 돌아가게 하는 것 부터 해본다.

(1) 자바 개발 환경 설치

이클립스를 설치하면 된다. 다들 많이 쓰는 (하지만 나에게는 생소한) 환경이므로 자세한 설명은 생략한다. J2ME용 개발 플러그인인 EclipseME를 설치하려고 하는데 그러려면 우선 Wireless 툴킷이 있어야 한단다. EclipseME의 설치의 전제조건은 여기에 (http://eclipseme.org/docs/prereqs.html) 나와 있다.

(2) Wireless 툴킷 설치

여러 곳에서 구할 수 있다고 하는데 그냥 썬에서 제공하는 것을 쓰기로 한다. 다운로드는 여기서 (http://java.sun.com/products/sjwtoolkit/download.html) 받아서 적당히 설치하면 된다.

(3) EclipseME 설치

여기에 (http://eclipseme.org/docs/installation.html) 설명되어 있는대로 하면 된다.

(4) 샘플 Midlet 만들어보기

우선 프로젝트를 만든다. 보통의 프로젝트와는 달리 File -> New -> Other -> J2ME -> J2ME Midlet Suite 로 선택해서 만든다.

그 안에서 클래스틀 추가한다. 보통의 자바 클래스와는 달리 File -> New -> Other -> J2ME -> J2ME Midlet로 선택해서 만든다. Midlet 샘플 소스는 여기의 (http://today.java.net/pub/a/today/2005/02/09/j2me1.html?page=2) 것을 이용했다.

이렇게 하면 deployed 라는 디렉토리 아래에 jad 와 jar 파일이 생긴다. (Midlet 프로젝트를 선택하고 오른쪽 클릭 -> J2ME -> Create Package해야 두 파일이 생긴다. 이건 확실치 않음) 이 중에서 jar 파일을 핸드폰에 옮겨서 적절한 java vm에서 (나는 JBed를 이용했다. IBM의 J9 도 괜찮다고 하는데 아직 입수 하지 못하였다) 올려서 실행하면 된다.

(5) 폰 없이 테스트 하기

앞의 (2) 단계에서 설치한 wireless toolkit은 폰 환경에서의 JVM을 흉내내는 기능을 해준다. 특히 우리가 사용할 도구는 ktoolbar 라는 프로그램이다. (wireless toolkit이 설치된 디렉토리 아래의 bin 디렉토리 밑에 있다.) 이를 실행하고 Create project from JAD/JAR를 선택한뒤 앞에서 설명한 deployed 디렉토리 아래의 jad 파일을 선택해주면 전화기 모양의 그림이 뜨고 프로그램을 실행해 볼 수 있다.

마찬가지로 이클립스 안에서도 실행환경을 Wireless Toolkit Emulator 로 지정해주면 에뮬레이터가 떠서 마찬가지의 실행을 해볼 수 있다.

(6) 64 비트 리눅스에서 에러가 날 때

만약 설치된 java sdk가 64비트 리눅스 용인 경우 대충 다음과 같은 메시지가 포함된 에러가 난다.
/bin/sublime.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
아마도 wireless toolkit은 64비트용 java sdk와는 짝이 맞지 않는 모양이다. 이런 경우에는 32비트용 sdk를 구해서 별도의 디렉토리에 설치하고 (물론 64비트 sdk를 쓸 일이 없다면 덮어 깔아도 되지만...) wireless toolkit 설치를 다시 하면서 sdk 디렉토리를 32비트가 깔린 bin 디렉토리로 지정하면 된다. 굳이 다시 깔기 귀찮으면 .../WTK2.5.2(또는 해당버전)/bin 디렉토리에 가서 파일의 내용 중에
javapathtowtk=/usr/bin/
이런 식으로 된 것으로 모두 32비트가 깔린 bin 디렉토리로 바꿔줘도 되는 것 같다.
신고
posted by 신묘군
몇 가지 방법이 있다.
$ cat /etc/issue
Ubuntu 8.10 \n \l

$ cat /etc/issue.net
Ubuntu 8.10
$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 8.10
Release:    8.10
Codename:    intrepid


신고
posted by 신묘군
기술을 얘기한다 2009.03.03 17:07
틀림없이 2.6.27-10 버전의 커널을 쓸 때까지만 해도 문제가 없었다. 그런데 11 버전 이후 오늘 현재 버전 (13) 에 이르기까지 갑자기 Fn+Home / Fn+End 키를 이용하여 화면 밝기를 조절하는 기능이 안되고 있다. 이 문제를 우분투 포럼에 제기 했더니 나만 그런게 아닌 모양이다. --> 우분투 포럼에 문제를 제기한 글

그동안 답을 찾지 못하고 있었는데 오늘 드디어 해결책을 찾았다. (해결책을 언급한 링크) 뭐 해결책이라고 해봐야 간단하다. /etc/modprobe.d/options 파일에 다음 한 줄을 추가하면 된다.
options thinkpad_acpi brightness_enable=1
오늘 현재 버전의 커널 (2.6.27-13-generic) + Thinkpad X61 조합에서는 잘 된다. 다른 버전의 커널에서는 테스트 하지 않았다. 만약 이걸로 해결되지 않는다면 -10 버전의 커널로 생활하는 수 밖에 없다. 예전 버전의 커널로 부팅하고자 한다면 /boot/grub/menu.lst 파일에 가서 default 값을 원하는 버전의 커널 이미지로 지정해주면 된다.
신고
posted by 신묘군
$ cd 업로더가 깔린 디렉토리
$ java -cp ./GoogleVideoUploader.jar com.google.uploader.Uploader *

그리고 주의할 사항!!! 사용자 이름 칸에 @gmail.com 을 붙이면 안된다. 그냥 @ 앞 부분까지만 써주고 암호는 구글 메일 암호와 같다.
신고
posted by 신묘군
기술을 얘기한다 2009.02.18 11:52
/* 개인적으로는 배터리는 소모품이니 그냥 완전 방전에만 주의하고 쓰면 된다라는 설을 신봉하고 있었다. 그런데 여러가지 경제 사정이 어려워지니 별 걸 다 신경 쓰게 된다. */

ThinkPad 에는 배터리를 정교하게 관리하는 기술이 내장되어 있다. 이 기능을 윈도에서 이용하고자 할 때에는 Power Manager 라는 프로그램을 이용하면 된다. 예를 들어, ThinkPad 에서 사용하는 Li-Ion 배터리의 경우에는 너무 많이 충전 방전을 반복하면 수명이 단축된다. 따라서, 충분히 배터리가 떨어졌을 때만 충전을 시작하고 그리고 충전도 100% 가 아닌 약간 미달되게 충전하는 것이 더 좋다고 한다. (항간에는 이를 놓고 실로 다양한 설이 난무하고 있으므로 나도 어느 것이 정설인지는 모르겠다. 일단은 thinkwiki 에 있는 배터리 관리 관련 글을 믿어보기로 하자.)

그런데 리눅스에는 해당 프로그램이 없어서 안되는 줄 알고 있었는데 우연히 smapi 라는 것을 이용하여 할 수 있다는 것을 알게 되고 이를 설치해보았다. smapi 에 관한 상세한 설명은 thinkwiki의 smapi 관련 기사 를 참조하면 되고 우분투 리눅스에서 설치하는 방법은 ubuntu forum 의 관련 글을 참조하면 되겠다.

글에 다 나와 있지만 그래도 기록을 위하여 절차를 설명하면 다음과 같다.

synaptic 이나 aptitude 등을 이용해서 필요한 패키지(tp_smapi_src, build-essential, linux-source-현재버전)를 설치한다. ubuntu forum 의 글에서는 source forge 에서 thinkpad smapi 소스를 받으라고 되어 있지만 Intrepid 에서는 해당 패키지가 들어 있는 듯 하다. 그냥 synaptic 에서 설치하였다.

smapi 소스 패키지는 /usr/src 디렉토리 아래에 설치되는데 그곳으로 가서 소스를 풀어준다.
$ cd /usr/src
$ sudo tar jxvf tp-smapi.tar.bz2
풀린 소스에서 커널 모듈을 빌드 한다.
$ cd tp-smapi/
$ sudo make install HDAPS=1 KSRC=/usr/src/linux-headers-현재리눅스버전
다음 번 부팅 부터는 자동으로 해당 모듈이 로드 되도록 /etc/modules 파일에 tp_smapi 라는 줄을 추가한다.
$ sudo -s;
$ echo "tp_smapi" >> /etc/modules
리부팅을 하느니 이번에는 그냥 해당 모듈을 로드해보자.
$ sudo modprobe tp_smapi
그리고 충전을 시작할 시점 (즉, 이 수준 이하로 배터리가 떨어지면 충전이 시작된다) 과 충전을 중단할 시점을 지정한다.
$ sudo -s;
echo "30" > /sys/devices/platform/smapi/BAT0/start_charge_thresh;
echo "85" > /sys/devices/platform/smapi/BAT0/stop_charge_thresh;
척 봐서 알겠지만 /sys/devices/platform/smapi 아래에 배터리에 관련된 정보가 들어 있기도 하고 필요한 컨트롤을 할 수 있는 파일이 들어 있기도 하다. 그럼 현재 배터리 정보를 보려면 어떻게 하나? 파일 하나 하나를 뒤질 수는 없으니 이걸 정리해주는 스크립트가 있다. --> 이 링크 <-- 를 클릭해서 쉘 스크립트를 받은뒤 실행해보면 배터리 상태를 보여준다.
$ ~/bin/thinkpad-smapi.bash -b 0
BATTERY 0 INFORMATION
=====================

Battery slot:
  Battery present: yes
  Battery state: idle

Embedded info:
  FRU P/N: 42T4505
  Barcoding: 1ZDA078729D
  Serial number: 2929
  OEM Manufacturer: SANYO
  Chemistry: LION
  Manufacture date: 2007-08-07
  Design capacity & voltage: 37440 mWh, 14400 mV

Battery health:
  First use date: 2007-09-05
  Cycle count: 148
  Last full capacity: 28770 mWh
  Average current / power (past 1 minute): 0 mA, 0 mW

Battery status:
  Remaining capacity: 28430 mWh (99 %)
  Remaining running time: [not discharging]
  Running current & power: 0 mA, 0 mW
  Temperature: 34700 mC
  Voltage: 16256 mV
  Remaining charging time: [not charging]

Battery charging control:
  Start charging at: 30 %
  Stop charging at: 85 %
  Prevent charging for: 0 min
  Force battery discharge: no
눈여겨볼 수치에 색칠을 했다.

우선 148. 대략 충전 싸이클 500 여회가 되면 배터리는 망가진다는 설이 있다. 그렇게 본다면 벌써 수명을 1/3 은 쓴 셈이다. 으 아까워라. 진작에 신경 써 줄껄...

그 다음에 볼 수치는 28430 / 37440. 원래는 3만7천 정도가 충전되던 배터리 였는데 이제는 완전히 충전해도 2만 8천 밖에 안 들어간다는거다. 어째 요즘 버티는 시간이 좀 줄었다 싶더라...

그리고 30 / 85. 그래 이제는 설정을 해줬으니 충전 싸이클도 쉽게 안 늘어나고 현 상태로라도 오래 버텨주겠지.

그런데 30 / 85 설정 값은 리부팅하면 없어진다. 이를 계속 유지시키려면 다음과 같은 추가 작업을 해줘야 된다.

$ sudo aptitude install sysfsutils
$ sudo -s;
echo "devices/platform/smapi/BAT0/start_charge_thresh=30" >> /etc/sysfs.conf
echo "devices/platform/smapi/BAT0/stop_charge_thresh=85" >> /etc/sysfs.conf


신고
posted by 신묘군
wvware와 catdoc을 깔아야 된단다. 관련 링크 --> http://desktop.google.com/support/linux/bin/answer.py?hl=en&answer=76816
신고
posted by 신묘군
왜 그런지 모르지만 usb 마우스/키보드가 복구가 되지 않는 경우가 있다. 그럴 때는 해당 커널 모듈을 다시 올려주면 되더라.
$ sudo rmmod uhci_hcd
$ sudo modprobe uhci_hcd

신고
posted by 신묘군
기술을 얘기한다 2008.12.22 01:44
Doxygen을 설치하고 아무런 한글 관련 패치를 하지 않은 상태에서 한글로 된 코멘트를 RTF 파일로 생성하면 한글이 몽땅 깨져서 나온다. 그 이유는 두 가지. 첫째, 파일의 폰트 정보에 한글 코드 페이지, 한글 폰트 정보가 들어있지 않다는 것. 둘째, 한글이 UTF-8 인코딩으로 되어 있는데 이는 한글과 같은 코드를 RTF에서 표현하는 방법과 맞지 않다는 것.

둘째 문제를 먼저 풀어보자. 우선 UTF-8 인코딩을 EUC-KR 인코딩으로 바꾼다음 이를 RTF 의 표현 방식으로 바꿔주면 된다. RTF 표현 방식으로 바꿔주는 것은 간단한 프로그램으로 구현할 수 있는데 예를 들면 다음과 같다. (비몽사몽간에 짠 코드라 허접...)
$ cat babo.c
#include <stdio.h>

void main(int argc, char * argv[])
{
        int ch;
 
        while((ch = getchar()) != EOF) {
                if(ch & 0x80) {
                    printf("\\'%x%x", ch >> 4, ch & 0x0F);
                } else {
                    printf("%c",ch);
                }
        }
}
그렇다면 리눅스에 기본으로 깔리는 툴인 코드 변환 툴 iconv와 결합해서 간단히 변환을 할 수 있다. 이렇게 말이다.
$ iconv -f utf8 -t euc-kr refman.rtf | babo > refman-euc-kr2.rtf
이렇게 하면 한글이 깨지는 refman.rtf 파일이 제대로된 RTF 용 한글 코딩으로 된 파일로 바뀐다. 이제는 한글 폰트를 파일에 심어줄 차례다. 이것도 역시 간단하다. 파일의 맨 앞에 있는 폰트 정보를 갈아끼우면 된다. Doxygen에서 생성한 RTF 문서의 맨 앞부분은 이런 식이다.
$ head refman.rtf
{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033
{\comment Begining font list}
{\fonttbl {\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}
{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}
}
{\comment begin colors}
{\colortbl;
여기서 colortbl 어쩌고 하는 앞 부분 (코멘트 포함) 까지가 폰트 정보이다. 이 부분을 한글 폰트 정보로 엎어 쓴다. 제대로 된 한글 RTF 파일의 앞 부분은 이렇게 생겼다.
$ head refman-euc-kr2.rtf
{\rtf1\ansi\kis94\deff1\deflang1042\ansicpg949
{\fonttbl
{\f0\fnil\fcharset0\fprq0 \'b9\'d9\'c5\'c1;}
{\f1\fnil\fcharset129\fprq2 \'b9\'d9\'c5\'c1;}}
{\comment begin colors}
{\colortbl;
적당한 편집기로 원래 파일의 앞부분을 지우고 아래의 내용으로 넣어주면 한글을 제대로 볼 수 있다.

신고
posted by 신묘군
단순히 Ethernet card를 여러 개 있는 것 처럼 하는 거나 loopback 장치를 여러 개 만드는 것은 "ifconfig" 명령 만으로 간단히 할 수 있지만 내가 원하는 것은 진짜로 여러 개의 인터페이스가 있는 것 처럼 동작하게 하는 것이다. 시나리오는 이렇다. 특정한 고정 포트에서 수신을 기다리는 데몬 프로세스가 있는데 이런 데몬 프로세스가 컴퓨터마나 한 개씩 떠 있고 이들 간의 통신을 통해서 뭔가 일을 처리하는 프로그램을 만들었다고 하자. 그것을 여러 대의 컴퓨터가 아니라 한대의 컴퓨터에서 실험을 하고 싶은데 한 컴퓨터에서 띄우면 두번 째 데몬부터는 해당 포트를 잡을 수가 없다. (이미 처음의 데몬이 그 포트를 잡고 있으니까.)

네트워크 카드가 여러 개 있다면 각 네트워크 카드를 지정해서 데몬을 띄우게 함으로써(자바의 경우 NetworkInterface.getByName 메쏘드로 이것을 구현할 수 있다.) 해결이 되지만 컴퓨터에 네트워크 카드도 하나 뿐이다. 그럼 어떻게 해야 하나?

자세히 알지도 못하고 자세히 쓸 힘도 안 남아 있으므로 간단히 요약한다. 리눅스에서는 가짜 인터페이스를 만드는 기능이 있는데 이를 tap 이라 한다. tap을 하나 만들고 또 브리지를 만들고 이 브리지에 tap과 진짜 네트워크 카드를 연결한 뒤 한 데몬은 tap 인터페이스에서 다른 데몬은 진짜 네트워크 카드 위에서 실행하면 된다. 설정하는 과정은 다음과 같다. (tap은 여러 개 만들 수 있으므로 여러 개의 데몬으로도 가능할 것 같다. 안해봤음.)
$ sudo tunctl -u newcat -t tap0
Set 'tap0' persistent and owned by uid 1000
$ sudo ifconfig eth0 <주소> up promisc
$ sudo ifconfig tap0 <주소> up promisc
$ sudo brctl addbr br0
$ sudo brctl addif br0 eth0
$ sudo brctl addif br0 tap0
eth0 (진짜 네트워크 카드)의 주소를 DHCP로 받아온다면 ifconfig에서 주소를 주지말고 대신
$ sudo dhclient eth0
라고 해주면 된다. 이 상태에서 만약 데몬이 자신이 동작할 네트워크 인터페이스 이름을 인자로 가지고 실행된다고 하면 다음고 같이 실행하면 된다.
$ daemon eth0
$ daemon tap0
(주의: 무슨 이유에서인지 이렇게 해 놓으면 외부 네트워크와는 연결이 안되는 증세가 나타났다. 뭘 잘못 한건지... 실험이 끝나면 다음과 같이 브리지에서 인터페이스를 떼내어 주면 되살아 난다.)
$ sudo brctl delif br0 eth0
신고
posted by 신묘군
Ubutun 에서 바이너리로 공급되는 ffmpeg 은 x264 지원에 문제가 있어서 PSP용 동영상을 만들어낼 수 없다. 따라서, 새로 빌드를 해야 되는데 그 과정은 다음과 같다.

You have to download the latest revision from svn:

svn co svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

Once that downloads, follow the same steps above (even the hardy patch still works). Before you run the configure statement, you must install the latest x264 version first (this revision asks for a version of x264 >= 0.65, while Ubuntu only offers at most version 0.59). To do this, grab the latest version from http://www.videolan.org. You can install either via tarball or git repository (I used git).

Then, once you’ve completed installation of x264 and finally get to the “configure” portion, use this configure statement:

./configure—enable-gpl—enable-postproc—enable-libvorbis—enable-libdc1394—enable-libgsm—disable-debug—enable-libmp3lame—enable-libfaad—enable-libfaac—enable-libxvid—enable-pthreads—enable-libx264

Before you type “make” there are a few other things that it looks for. I had to install both libpostproc-dev and libavdevice-dev, and also do the following:

sudo ln -s /usr/include/postproc/ /usr/local/include/libpostproc
sudo ln -s /usr/include/ffmpeg/ /usr/local/include/libavdevice
sudo ln -s /usr/include/ffmpeg/ /usr/local/include/libavformat
sudo ln -s /usr/include/ffmpeg /usr/local/include/libavcodec
sudo ln -s /usr/include/ffmpeg /usr/local/include/libavutil
sudo ln -s /usr/lib/vhook /usr/local/lib/vhook
출처의 글에서는 Hardy에서 설치하는 법을 다루었고 그 아래로 내려가면 Intrepid에서 설치하는 법은 누군가 덧글로 올려두었다. 하라는대로 하면 되고... (주의: 뭘 내가 잘못했는지는 모르겠지만 이미 libx264-dev 패키지가 설치된 경우에는 ffmpeg 의 configure 에서 그 놈을 참조해서 문제가 되는듯. 디렉토리를 잘 정해주면 될 것 같은데 나는 그냥 해당 패키지를 삭제하고 내가 빌드한 libx264를 설치한 뒤 ffmepg을 빌드했다.)

그리고 비디오 파일을 PSP 용으로 변환하려면 다음과 같은 명령을 쓰면 된다.

<경로>/ffmpeg -i <입력 비디오 파일 이름> -acodec libfaac -ab 128kb -ac 2 -ar 48000 -vcodec libx264 -level 21 -b 640kb -coder 1 -f psp -flags +loop -trellis 2 -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -g 250 -s 480x272 <만들어질 비디오 파일 이름>


신고
posted by 신묘군
두 기계 사이의 ssh 터널을 만들어서 이쪽의 특정 포트를 원격지의 특정 포트와 연결할 수 있다.
ssh -fNT newcat@superman -L 5900:127.0.0.1:5901
로컬의 5900번 포트를 원격지 기계(즉, superman)의 5901번 포트로 연결한다. 그리고 -f 옵션 때문에 ssh 실행 자체가 백그라운드로 숨어버린다. 따라서, 그 프로세스를 찾아서 kill 하지 않는한 그 터널은 유지된다.


신고
posted by 신묘군
기술을 얘기한다 2008.12.02 10:42
ThinkPad X61에 Ubuntu 8.10을 설치해서 쓰고 있는데 아무런 문제를 못 느끼다가... 오늘 아침 뚜껑을 열었는데 되살아나지 못하고 (뚜껑을 닫으면 suspend to ram을 하도록 설정되어 있음) 캡스락이 깜빡인다. 전원 버튼을 길게 눌러서 다시 부팅을 했는데 뭐가 문제인지 기록은 안 남아 있다.

구글링을 해보니 캡스락이 깜빡이는 것은 kernel panic이 났다는 뜻이고 X61과 같이 인텔 4650 무선랜 어댑터를 쓰는 경우 8.10에 들어 있는 커널이 그런 문제를 일으킨단다. 해결책은 일부 모듈을 업데이트 해주는 것. 간단히 말해서 linux-backports-modules-intrepid 라는 패키지를 추가 설치하면 끝.

관련 글 --> ubuntu 8.10 hangs, maybe a wireless problem


신고
posted by 신묘군
기술을 얘기한다 2008.11.25 14:00
난데없이 사버린 PSP. 별로 게임은 즐기지 않는지라 PMP로 쓰고 있는데 우분투로 전향하기 전에 윈도에서 변환해둔 비디오가 많이 있어서 그걸보다가 다 떨어져서 우분투에서 비디오 변환을 하게 되었다. 우분투(더 정확히는 리눅스)에도 비디오를 갖고 노는 도구는 많이 있기 때문에 트랜스코딩을 하는 것은 별로 어려운 일이 아니다.

내가 사용한 트랜스코딩 겸 자막 익히기 프로그램은 avidemux . 기능도 많고 다 좋은데 더욱 좋은 점은 PSP용 변환이 auto 기능으로 내장되어 있어 비디오에 대한 많은 지식 없이도 변환을 할 수 있다는 것이다. 고화질 비디오를 PSP로 변환하는 방법에 대해서는 관련된 글을 참조하면 된다.

그런데 문제는 한글 자막.

1. 한글 인코딩

avidemux는 자막을 입힐 때 쓸 폰트를 지정할 수 있으므로 한글을 지원하는 적절한 폰트를 지정해주면 된다. 문제는 자막 파일의 인코딩으로 몇 가지를 지원하는데 불행히도 euc-kr (우리가 인터넷에서 구하는 대부분의 한글 자막은 이 인코딩으로 되어 있다.) 을 지원하지 않는다. 따라서, utf-8으로 바꾸기로 하였다. 이 작업은 간단하다.

iconv -f euc-kr -to utf8 자막파일1 > 자막파일2

이렇게 하면 자막파일1 을 utf8으로 변환하여 자막파일2 로 만들어준다. 여기까지는 간단한데... avidemux는 SMI 파일을 지원하지 않는다. 물론 대부분의 한글 자막은 SMI 파일이구. avidemux가 지원하는 자막 포맷은 상당히 다양한데 대략 훑어보니 SRT 라는 포맷을 많이 쓰는 모양이다.

2. SMI 를 SRT 로 변환

우분투에 자막 변환 툴이 여러 개 있으나 SMI를 읽을 수 있는 것은 없는 것 같았다. 한참을 뒤지고 여러 개를 깔아 보았으나 모두 실패. 그래서 마지막으로 생각한 것이 자막 처리 프로그램을 개발할 수 있는 라이브러리를 설치하고 직접 개발하기로 결심. libsubtitles-perl 을 설치했다. 그런데 이게 웬일. 이 라이브러리에 기본으로 따라오는 응용 프로그램으로 subs  라는 놈이 있는데 이게 SMI --> SRT 변환을 지원한다. 허걱. 지성이면 감천. 쓰는 법도 간단하다.

subs -c srt 자막파일.smi -o 자막파일.srt

여기서 -c 는 만들어질 자막 파일의 포맷을 지정하는 것이고 -o는 만들어질 파일 이름을 지정하는 것이다. 이렇게 2단계 변환을 거쳐 utf-8  으로 인코딩된 srt 포맷을 자막 파일이 있으면 이것을 avidemux에 넣고 자막을 입히면 된다. 인증 샷. (엄청 화질도 이쁜데 폰카로 찍었더니 영...)

사용자 삽입 이미지

3. 그래도 해결 안된 문제

자막을 중간 중간 꺼주기 위해서 &nbsp; 를 사용하는데 이게 그대로 자막으로 인식되어 화면에 나온다. 아마 srt 로 변환하는 과정에서 뭘 해주던지 해야 할 듯.
신고
posted by 신묘군
기술을 얘기한다 2008.11.12 14:14
집에서 작업할 파일을 학교에서 USB 메모리로 옮기는데 파일이 커서 그런지 뭔가 이상한 문제가 생겼다. 그래서 unmount 했다가 다시 껴서 해도 잘 카피가 안되고 우회적인 방법으로 했는데 이번에는 파일을 접근하면 read only 라고 하면서 이상한 에러를 내고 어쨌든 그 파일을 건드리기만 하면 이상한 증세를 낸다. 큰 파일을 복사하는데 문제가 있나해서 구글링을 한참 했는데 결론은... 파일 시스템이 부분적으로 망가진 것이다. 복구하는 방법은 간단하다.
$ sudo dosfsck -av /dev/sdb1
이렇게 했더니 해당 파일의 크기와 할당된 클러스터가 맞지 않아서 고쳐준다구 뭐라고 뭐라고 나온다. 다시 카피를 해보니 잘 되기만 한다.

구글링을 통해 얻은 정보를 종합해보면 처음에 파일을 카피하는 과정에서 내가 USB 메모리를 unmount 하거나 카피를 이상하게 중단했거나 어쨌든 문제가 생겨서 USB 메모리의 파일 시스템에 문제가 생겼고 이 상태에서 그 파일을 접근하려고 하면 Ubuntu는 시스템을 보호하기 위해서 read only로 다시 마운트를 해버린다.

알고 보면 간단한 것을...

신고
posted by 신묘군
우분투 8.10 환경에서 USB로 외장 하드 디스크를 연결한 경우 외장 하드 디스크의 파일 시스템이 ntfs 나 fat 인 경우에는  자동으로 마운트를 해주면서 막상 리눅스 파일 시스템인 경우에는 자동으로 마운트 하지 않는다. 물론 적당한 옵션을 주면 자동으로 마운트 하겠지만 수동으로 마운트 하려면 이렇게 하면 된다. 우선 어디 디바이스로 잡혔는지 본다.
$ tail /var/log/kern.log
Nov  6 17:00:45 ubuntu kernel: [55546.077715] sd 8:0:0:0: [sdb] Write Protect is off
Nov  6 17:00:45 ubuntu kernel: [55546.077722] sd 8:0:0:0: [sdb] Mode Sense: 03 00 00 00
Nov  6 17:00:45 ubuntu kernel: [55546.077727] sd 8:0:0:0: [sdb] Assuming drive cache: write through
Nov  6 17:00:45 ubuntu kernel: [55546.077736]  sdb: sdb1 sdb2 < sdb5 >
Nov  6 17:00:45 ubuntu kernel: [55546.108081] sd 8:0:0:0: [sdb] Attached SCSI disk
Nov  6 17:00:45 ubuntu kernel: [55546.108296] sd 8:0:0:0: Attached scsi generic sg1 type 0
이 로그 메시지에 의하면 /dev/sdb 로 붙어있다는 것을 알 수 있고 파티션은 세 개다. 무슨 파티션이 있는지 보려면 다음과 같이 한다.
$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000440d0

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1       19119   153573336   83  Linux
/dev/sdb2           19120       19457     2714985    5  Extended
/dev/sdb5           19120       19457     2714953+  82  Linux swap / Solaris
얼른 봐서 내가 원하는 파티션은 /dev/sdb1 인 것 같다. 그리고 파티션 타입은 Linux 다. 아마 ext2 이거나 ext3 인 모양이다. 그래서 ext2로 마운트를 해보았다.
$ sudo mount -t ext2 /dev/sdb1 /media/ttt
마운트도 되고 접근도 된다. 그런데 로그 메시지를 보니...
$ tail /var/log/kern.log
...
Nov  6 17:04:56 yangwooko-ubuntu kernel: [55797.380680] EXT2-fs warning (device sdb1): ext2_fill_super: mounting ext3 filesystem as ext2
허걱. ext3 랜다. 그래서 다시 ext3로 다시 마운트 한다.
$ sudo umount /media/ttt
$ sudo mount -t ext3 /dev/sdb1 /media/ttt
그랬더니 이번에는 제대로 된 모양이다.
$ tail /var/log/kern.log
...
Nov  6 17:06:15 yangwooko-ubuntu kernel: [55876.417125] kjournald starting.  Commit interval 5 seconds
Nov  6 17:06:15 yangwooko-ubuntu kernel: [55876.418018] EXT3 FS on sdb1, internal journal
Nov  6 17:06:15 yangwooko-ubuntu kernel: [55876.418029] EXT3-fs: mounted filesystem with ordered data mode.


신고
posted by 신묘군
기술을 얘기한다 2008.11.03 16:29
Lenovo Thinkpad X61에 우분투 8.10을 쓰는 환경에서 grandr을 이용해서 스크린을 윈도에서처럼 여러 모드로 전환하게 하는 스크립트는 다음의 링크를 이용하면 된다. 이전에는 잘 안되더니 점점 버전이 올라가면서 안정화가 되는 것 같다. 야호... 참고로 나는 두번째 방법 (즉, Alternative script using .Xauthority rather than su) 를 활용했다. 그리고 스크립트 내의 EXTERNAL_LOCATION은 자기 상황에 맞춰 바꿔줘야 한다. 나처럼 외장 모니터를 왼쪽에 놓고 쓰는 사람은 "right"를 "left"로 고쳐줘야 된다.

Thinkwiki의 Sample Fn+F7 script
신고
posted by 신묘군
기술을 얘기한다 2008.11.03 13:52
(2009년 6월 24일 업데이트: 소프트포럼의 Xecureweb 의 경우에는 키보드 보안을 위해서 nProtect 솔루션을 쓰다가 최근에 자체 솔루션으로 바꾸었다고 한다. nProtect 솔루션을 쓰는 사이트에서는 아래의 설명대로 최신 버전을 설치하는 것으로 해결이 되고 자체 솔루션을 쓰는 사이트의 경우에는 해결책이 없다. 소프트포럼에 연락하면 설치 프로그램을 주는데 이를 설치하면 된다. 아마, nProtect 솔루션을 쓰면서 최신 버전인 것으로 속여서 최신 솔루션이 다운로드 되는 것릉 막아주는게 아닌가 싶다. 아님 말구. ^^)

(2008년 11월 10일 업데이트 주의: 소프트포럼에서 제공하는 Xecureweb의 경우 아직은 화상 키보드 외의 해결책은 못 찾았습니다.)

리눅스를 쓰는 사람들도 인터넷 뱅킹을 위해서는 어쩔 수 없이 윈도를 써야 되는데 (안 써도 되는 은행이 생겨나고는 있다고 하지만 아직은 소수) 문제는 리눅스에서 윈도를 띄우기 위해 사용하는 가상 기계 프로그램들(vmware, virtualbox 등)이 인터넷 뱅킹에 필수적으로 따라오는 키보드 보안 프로그램과 충돌을 일으킨다는 것이다. 이에 대한 해결책으로는 화상 키보드를 사용하는 법과 기능을 bypass 하게 하는 방법이 있다. 그런데 오늘 모 사이트를 사용하다보니 둘 다 안되는 것이다. 이런... 그 사이트에서는 잉카의 nProtect를 쓰고 있었는데 여기 저기 전화를 찔러서 결국 상담을 받은 결과 문제는 해결되었다. 해결책은 무척 간단. 최신 버전을 깔면 된다. 문제는 이 프로그램은 인터넷 뱅킹 사이트를 접속하면 ActiveX 설치 방식으로 설치되는데 모든 인터넷 뱅킹 사이트에 최신 버전이 올라가 있는게 아니라는 점이다. 따라서, 해결책은 nProtect를 삭제한 후 (또는 아직 한번도 설치 안한 상태에서) 최신 버전이 있는 사이트에가서 최신 버전을 먼저 설치한 후 인터넷 뱅킹을 접속하는 것이다. 이렇게 간단한 것을... 몇 시간이나 허비하다니...

이상은 잉카의 nProtect 키보드 보안을 쓰는 경우이고 그 외 소프트캠프의 Secure Keystroke 를 쓰는 경우에는 해당 기능을 bypass 하는 프로그램을 친절히도 소프트캠프에서 제공하고 있다. 이를 설치하면 된다.
신고
posted by 신묘군
기술을 얘기한다 2008.10.24 15:18
주의!!! 이 방법은 불편하니 이후 업데이트 된 글을 참조하시기 바랍니다.

현재 우분투 8.0.4 에서 대부분의 생활을 하지만 인터넷 뱅킹이나 카드 결제를 필요로하는 온라인 쇼핑은 윈도를 쓰지 않을 수 없어서 VirtualBox 2.0.2 를 설치하고 그 안에 윈도 XP를 깔아서 쓰고 있는데 역시나 인터넷 뱅킹 또는 카드 결제에 쓰이는 키보드 보안 프로그램이 말썽이다. 이 녀석들이 얼마나 꼼꼼이 체크하는지 몰라도 VirtualBox 안에서 키보드 보안 프로그램이 동작 중일 때에는 아무 키나 누르기만 하면 홀라당 죽어버린다. 윈도 식으로 얘기하면 블루스크린이 뜬다. 인터넷을 뒤져보니 여러 해결책이 있으나 가장 확실한 것은 화상 키보드를 쓰는 것이다.

사용자 삽입 이미지

화상 키보드는 이렇게 생겼다


화상 키보드란 윈도에 내장된 프로그램으로서 마우스 클릭을 이용하여 키보드 입력을 대신할 수 있다. 일단, 키보드 보안 프로그램이 동작되지 않는 상황에서는 키보드로 쭉 진행을 하다가 키보드 보안 프로그램이 트레이에 뜨면 그 때부터는 "무조건" 화상 키보드로 입력하면 된다. 물론 무지하게 감갑하다. 그래도 안되는 것 보다는 백만배는 더 낫다.

화상 키보드가 어디에 있냐구?

사용자 삽입 이미지

화상 키보드는 여기에 있다



신고
posted by 신묘군
기술을 얘기한다 2008.10.22 17:06
사용자 삽입 이미지
오늘 노트북에 좀 심한 일을 시켰다. 한편으로는 큰 프로그램을 컴파일을 돌려놓고 다른 한편으로는 VirtualBox 내부에서 마이크로소프트 오피스 설치를 시켰다. 그랬더니 CPU가 100% 즉 2 GHz로 동작을 하면서 온도가 올라것 100도를 넘었다. 깜짝 놀라서 스크린 샷을 찍었는데 어째 스크린 샷에서는 99도일 때가 찍혔네. 어쨌든 중요한 점은 이렇게 온도가 올라갔는데도 팬 속도는 평소와 별다를 바 없는 3천대의 RPM을 찍고 있다. (평소에는 3500 RPM 전후) 윈도 XP에서는 이 정도로 온도가 올라가면 팬 소리가 커지면서 오히려 팬 때문에 온도가 올라가는게 아닐까 싶을 정도로 팬이 빨리 돌았는데 아마 우분투의 기본 팬 설정이 매우 느리게 반응하도록 되어 있는 모양이다. 인터넷을 뒤져보면 ThinkPad 의 이전 모델에서는 96도 전후에서 시스템이 셧다운 된다고 하고 내가 쓰는 모델인 X61에서는 120도에서 셧다운 된다고 한다. 그래서 아직은 버틸만 하다고 이렇게 팬이 천천히 도는건가? 걱정이 된다.

일단 팬을 수동으로 돌릴 수 있는 프로그램을 구해서 설치해 두고 나중에 같은 일이 생기면 돌리던지 해야겠다. 왜냐하면 만약 큰 무리가 없는 것이라면 차라리 온도가 높은 것이 팬소리 시끄러운 것 보다는 참을만 하니까 말이다.
신고
posted by 신묘군
기술을 얘기한다 2008.10.16 14:27
현재 우분투 리눅스에서 살아가려다보니 윈도가 필요한 경우가 있어 할 수 없이 VirtualBox를 설치하고 그 안에 윈도 XP를 설치해서 쓰고 있다. 그런데 리눅스쪽 파일을 윈도쪽에서 접근할 일이 있어서 shared folder 기능을 썼다. 이 기능은 호스트쪽 (내 경우에는 우분투) 의 특정 폴더를 게스트쪽 (내 경우에는 윈도) 에서 네트워크 폴더로 접근할 수 있게 해준다. 그럭 저럭 쓸 만은 한데... 속도가 문제다. 무슨 이윤지 모르겠지만 큰 파일을 읽고 써 보면 속도가 상당히 느리다.

그래서 대안으로 호스트쪽에 삼바(samba) 서버를 설치하고 파일을 공유해보았더니 VirtualBox의 shared folder 기능보다 훨씬 더 빠르다. VirtualBox 쪽 설정에 문제가 있었던 것인지 아니면 원래 그런 것인지는 몰라도 당분간은 삼바의 파일 공유 기능을 이용해야 겠다.

그런데 한가지 단점은 삼바의 경우 네트워크로 파일을 공유하는 것이므로 내가 원하지 않는 외부 컴퓨터에서도 접근을 할 수도 있다는 것이다. 뭐, 그게 꼭 필요한 사람은 그렇게 해야 겠지만 그렇지 않다면 smb.conf 에 hosts allow, hosts deny 기능을 이용해서 접근을 제한하는게 좋겠다.

신고
posted by 신묘군
기술을 얘기한다 2008.10.16 11:15
우분투 리눅스로 옮겨탔는데 여전히 윈도를 써야할 경우가 생긴다. 아래아 한글로 된 공문서라던지 인터넷 뱅킹 그리고 IE 밖에 허용을 하지 않는 인트라넷까지... 그래서 VirtualBox를 설치하고 그 안에 윈도 XP를 설치하는데 하드 디스크는 당연히 최소 용량만 잡으려고 4기가 바이트를 할당했더랬다. 왜냐하면 마이크로소프트사의 공식 설명에 의하면 최소 필요 용량은 1.5 기가 바이트이까 좀 넉넉하게 잡은 셈이다. 그런데, 넉넉은 개뿔... 어제 SP3로 업데이트 하려다가 용량이 부족해서 난리를 쳤다. 아래아 한글이나 MS 오피스 등은 별도의 하드 파티션을 할당했기 때문에 괜찮을 줄 알았는데 SP3 를 내려받아서 설치할 정도의 공간이 없다는거다. 그래서 휴지통 크기를 아예 0 바이트로 줄이고 조금이라도 안쓸 것 같은 응용 대부분 다 지우고 쌩 난리를 쳐서 겨우 공간 확보를 해서 SP3로 업그레이드 했다. 그래서 현재 4.17 기가 바이트로 할당된 C 드라이브에는 390 메가 바이트가 겨우 남았다. SP4 나오면 아마 설치할 수 없을 듯 하다.

내가 뭘 잘못하고 있는 걸까요? 아니면 마이크로소프트의 1.5 기가 바이트 주장이 틀린건가요?

신고
posted by 신묘군
기술을 얘기한다 2008.10.16 10:27
예전에 X61에 윈도 XP를 깔아서 쓸 때 최대 절전 (hibernate) 가 아닌 다른 모드로 대기를 시키면 가끔 이상한 동작을 하는 경우가 있어 (특히, 듀얼 스크린의 복구가 안되는 문제는 치명적) 항상 최대 절전 기능으로 썼다. 이번에 XP를 버리고 우분투로 갈아타면서도 본능적으로 그렇게 설정했는데 오늘 아침 문득 이게 정말 좋은 선택인지 궁금해졌다. 그래서 그냥 컴퓨터를 끄기 (shutdown), 최대 절전 모드 (hibernate), 절전 모드 (suspend) 로 들어가고 나올 때 시간이 얼마나 걸리는지 간단히 실험했다. 시간 관계상 두세번 정도 반복을 했고 공평한 비교를 위해 부팅후 추가 응용을 실행하지 않은 화면을 기준으로 측정을 했다.

  • 컴퓨터 끄기 : 꺼지는 데 걸리는 시간 20초 내외 / 다시 켜지는 데 걸리는 시간 1분 20초 내외
  • 최대 절전 모드 : 꺼지는 데 걸리는 시간 36초 내외 / 다시 켜지는 데 걸리는 시간 50초 내외
  • 절전 모드 : 꺼지는 데 걸리는 시간 10초 내외 / 다시 켜지는 데 걸리는 시간 7초 내외

주목할 점은 최대 절전 모드에 들어가는 시간이 의외로 길다는 것이다. 물론 응용이 많이 떠 있다면 시간이 더 걸릴 수도 있을 것 같다. 따라서, 집에 가려고 최대 절전 모드로 해놓고 제대로 꺼지는지 쳐다보고 있으면 꽤 지루하다는 느낌이 든다. (신발 갈아 신고 옷 챙겨 입어도 아직도 안 끝나 있는 경우가 많다.) 한편, 컴퓨터를 완전히 끄는 경우에는 시간이 별로 안 걸리지만 다시 켜는데 시간이 많이 걸린다. 즉, 최대 절전 모드는 켜는데 시간을 30초 정도 단축하는 효과가 있으나 완전히 전원을 끄는 것에 비하여 그 효과가 충분히 큰지는 의문이 있다. 한편, 절전 모드는 전원이 계속 공급되어야 한다는 한계가 있다.

따라서, 절전 모드는 충분히 짧은 시간에 왔다 갔다 할 수 있으므로 잠시 자리를 옮기는 경우에는 절전 모드로 집에 가거나 좀 먼거리를 옮기는 경우에는 컴퓨터 끄기로 설정하는 것이 적절하다는 것이 내 결론이다.

최대 절전 모드는 아주 많은 응용을 띄워놓고 동시 작업 중에 갑자기 전원의 공급없이 한참을 있어야 하는 경우에 적절할 수 있느나 노트북 컴퓨터 환경이 과연 그런 경우가 얼마나 있는지 그리고 아직 증세가 정확히 파악이 되지는 않았지만 virtualbox 에 XP를 설치해서 쓰고 있는데 이 XP가 가동 중인 상태에서는 최대 절전 모드로 들어가지 않는 문제가 있으므로 더더군다나 최대 절전 모드는 활용가치가 떨어지는 것 같다.



신고
posted by 신묘군