현재 최신 버전(2012년 11월 1일 기준)의 데비안을 가지고서 X40 노트북에 설치 방법을 설명한다. 데비안 버전은 6.0.6 이다.
예전 같았으면 600MB 남짓한 이미지 파일을 다운 받아야 했지만, 그럴 필요가 없다. 특히 인터넷에 연결이 되어 있다면, Net Install 이미지(200MB)를 받으면 된다.

http://ftp.kr.debian.org/debian-cd/6.0.6/i386/iso-cd/debian-6.0.6-i386-netinst.iso

다운로드 후에는 CD 로 구울 필요없이 USB 메모리를 부팅 디스크로 만들어주는 프로그램을 사용해서 USB 로 설치한다.

데비안 및 프로그램 설치

데비안 설치는 기존의 문서들을 참조하면 된다. 참고로 여기서는 가능한 최소한의 설치로 가벼운 환경을 만들도록 할 것이다. Base 와 Laptop 패키지를 제외한 모든 패키지는 설치하지 않는다. X 윈도우도 마찬가지다.
설치를 마쳤으면, 이제 프로그램을 설치해보자!

가장 성능에 영향을 많이 미치는 것이 윈도우 매니저다. 가장 가볍다고 소문난 openbox 를 설치한다.

#apt-get install openbox obconf build-essential

폰트 설치 및 한글 설정 관련 설정은 다른 문서를 참고한다.

openbox 는 무척 가볍기 때문에 실행하면, 바탕화면만 덜렁하니 보인다. 메뉴라고는 마우스 오른쪽 버튼의 메뉴가 전부다. 여기 나오는 메뉴를 수정하기 위해서는 /etc/X11/openbox/menu.xml 파일을 고치면 된다.

가장 대표적인 한글 입력기로 나비가 있다. 데비안 소스리스트에서 설치할 수 있지만, 최신버전이 아니다.
여기서는 현재(2012월 11월 21일) 가장 최신 버전인 nabi-0.99.11.tar.gz 과 libhangul-0.1.0.tar.gz 을 설치한다.
설치에 앞서 필요한 라이브러리를 설치해야 한다.

#apt-get install libgtk2.0-dev

libhangul 를 설치할 차례다.

#tar xzf libhangul-0.1.0.tar.gz
#cd libhangul
#./configure
#make
#make install

나비의 압축을 푼다.

#tar xzf nabi-0.99.11.tar.gz
#cd nabi-0.99.11

컴파일하고 설치하기 전에 소스코드를 수정할 필요가 있다. src/main.c 파일을 아래와 같이 수정한다.

...
   nabi_server = nabi_server_new(display, screen, xim_name);
    nabi_app_setup_server();
    }   
 
    widget = nabi_app_create_palette();
    gtk_widget_show(widget);
 
    nabi_app_show_palette(FALSE);       // 추가
 
    if (nabi_server != NULL) {
    nabi_server_start(nabi_server);
...

참고로 이 코드는 실행 이후 나비의 패널을 숨기는 기능을 한다.

#./configure --prefix=/usr/local/program/nabi
#make ; make install

config 파일을 다운받아서, ~/.nabi/ 아래에 복사한다.

다음은 가장 많이 쓰이는 터미널을 설치한다.

#apt-get install lxterminal

폰트 설정등을 하고 난 뒤에 실행시키면 설정 전의 모습으로 되돌아가는 경우가 있다. 이때는 환경 설정 파일을 복사해주면 된다.

#cp ~/.config/lxterminal.conf /usr/share/lxterminal/

마우스 설정과 한글 입력기 설정을 위해 /etc/X11/xinit/xinitrc 파일에 다음을 추가한다.

!/bin/sh
 
# /etc/X11/xinit/xinitrc
#
# global xinitrc file, used by all X sessions started by xinit (startx)
 
#  추가 시작
 
export XMODIFIERS="@im=nabi"         
export XIM_PROGRAM=/usr/local/program/nabi/bin/nabi  
export GTK_IM_MODULE=xim         
export QT_IM_MODULE=xim        
 
exec /usr/local/program/nabi/bin/nabi &
exec /usr/bin/xmodmap -e "pointer = 3 2 1" &
 
exec /usr/bin/lxterminal --geometry=80x56 &
exec /usr/bin/lxterminal --geometry=85x26 -e mc &
exec /usr/bin/lxterminal --geometry=85x26 -e mocp &
 
# 추가 끝
 
# invoke global X session script
. /etc/X11/Xsession

apt-get 명령어로 firefox 를 찾으면 없다고 나온다. 자세한 내용은 모르겠지만, 이름과 관련한 저작권 문제 때문에 다른 이름으로 불리어 진다고 한다. 그런데 문제는 현재 데비안 소스리스트에 올라있는 firefox 버전이 턱없이 낮다는 것이다. 따라서 최신 버전을 사용하기 위해서는 apt 가 아닌 firefox 홈페이지에서 직접 다운 받아야 한다.

리눅스용 파일을 받아 압축을 풀면, 소스코드가 아닌 바이너리 파일이 나온다. 이를 실행해보면, 다음과 같은 에러메세지가 뜬다.

#./firefox &
XPCOMGlueLoad error for file /opt/firefox/libxpcom.so:
libxul.so: cannot open shared object file: No such file or directory
Couldn't load XPCOM.

구글링한 결과, 특정 라이브러리가 없어서 발생하는 에러이고, 아래와 같이 설치해주면 된다.

#apt-get install libdbus-glib-1-2

만일, 이미 설치되어있다면 추가로 패키지를 설치한다.

#apt-get install liboss4-salsa-asound2

기본으로 설치된 브라우저에서는 Flash 로 된 페이지가 제대로 보이지 않는다. 이를 설치하기 위해서는 별도로 설치를 해줘야 한다.
플러그인 설치을 클릭하면 자동으로 Adobe 홈페이지로 연결되면서, 다운받을 수 있다. 먼저 압축을 풀고, firefox 디렉토리로 복사하면 된다.

#tar xzf install_flash_player_11_linux.i386.tar.gz
#mkdir ~/root/.mozilla/plugins
#mv libflashplayer.so ~/root/.mozilla/plugins

firefox 를 재실행하면, Flash 페이지가 보일 것이다.

웹 서핑을 하다보면, 특정 페이지에서 마우스 오른쪽 버튼이 실행되지 않는 경우가 있다. 이럴때, Firefox 에서 지원하는 플러그인 중에 그리스몽키라는 프로그램을 설치해야 한다. 설치 후에 http://userscripts.org/ 에 접속하여 'right click enabler' 로 검색하여 'Right-Click Enabler for some WebPortals' 를 설치한다.

무선랜 접속하기

기존의 문서(x40 에 데비안 설치하기)에서 다뤘던 내용은 암호가 걸려있지 않은 AP 에 접속하는 방법이었다.

현재는 암호를 설정한 상태였고, 그때와는 환경 설정이 다르다(SSID : linux / WPA1 / AES / 암호 11111111). 최신의 데비안을 설치하면, WiFi 드라이버는 자동으로 잡아준다. 또한 wpa_supplicant 가 설치되어 있다.
다시말해 접속을 위한 준비운동은 끝난 상태다. 접속을 위해 몇가지 작업만 필요하다.

#ifconfig wlan0 up
#iwlist wlan0 scan       // 스캔을 통해 접속하려는 AP 의 정보를 얻는다
wlan0     Scan completed :
          Cell 01 - Address: 00:30:3F:51:16:C2
                    Channel:9
                    Frequency:2.452 GHz (Channel 9)
                    Quality=60/70  Signal level=-50 dBm
                    Encryption key:on
                    ESSID:"linux"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s
                    Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
                    Extra:tsf=0000000b8c56a79b
                    Extra: Last beacon: 8ms ago
                    IE: Unknown: 00056C696E7578
                    IE: Unknown: 010882848B968C129824
                    IE: Unknown: 030109
                    IE: Unknown: 0706415420010D14
                    IE: Unknown: 2A0100
                    IE: Unknown: 3204B048606C
                    IE: WPA Version 1                                # proto
                        Group Cipher : CCMP                      # group
                        Pairwise Ciphers (1) : CCMP           # pairwise
                        Authentication Suites (1) : PSK
                    IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00
                    IE: Unknown: DD0E001091010300A80C020200000400

원래 설정된 비밀번호를 암호화 시켜 키 값을 얻어야 한다.

#wpa_passphrase linux 11111111
network={
ssid="linux"
psk=343d2d1159e30de1ebe2ae50e1c502987f2366f462cc6561895b6542d24dcfd3  
}

비밀번호(11111111)가 암호화되어 나온 값이 출력되었다. 지금까지 나온 결과를 바탕으로 /etc/wpa_supplicant/wpa_supplicant.conf 를 작성해야 한다.

ap_scan=1
ctrl_interface=/var/run/wpa_supplicant
 
network={
        ssid="linux"
        scan_ssid=0
        proto=WPA
        key_mgmt=WPA-PSK
        pairwise=CCMP
        group=CCMP
        psk=343d2d1159e30de1ebe2ae50e1c502987f2366f462cc6561895b6542d24dcfd3
}

이제 모든 작업이 끝났다. 아래와 같이 실행하면 된다.

#iwconfig wlan0 essid linux
#wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf -dd &
#dhclient wlan0

에러없이 실행되었다면, ifconfig 를 통해 IP 가 할당되었는지 확인한다.

기존의 드라이버를 기본 커널(2.6.32)에서 컴파일하면 구조체가 다름으로 인해 에러가 발생한다.
아마도 드라이버에 최적화된 2.6.26 과 2.6.32 사이에 네트워크 디바이스(net_device) 코드가 변경된 듯 보인다.
아래와 같이 현재 컴파일 환경과 Wi-Fi 드라이버가 컴파일 되어야 할 환경이 다르기 때문에, 각각 구축해야 한다.

데비안(6.0.6) 기본 컴파일 환경 커널(2.6.32-5-686) 컴파일러(4.4.5)
WiFi 드라이버 컴파일 환경 커널(2.6.26) 컴파일러(4.1.3)

이를 위해 아래의 순서에 따라 설명하도록 한다.

  1. 커널을 컴파일해서 2.6.26 커널로 부팅 가능하도록 한다.
  2. 컴파일러를 설치한다(apt-get 패키지로).
  3. 2.6.26 커널로 부팅하여 컴파일한다.

다른 문서를 참고하여 설치한다.

현재 패키지에 있는 컴파일러 버전을 검색한다.

#apt-cache pkgnames gcc

목록 중 4.x 대의 가장 낮은 버전을 선택해서 설치했다. 한가지 이상의 컴파일러가 설치되면 꼬이지 않을까 걱정할 수도 있겠지만, 전혀 그럴 필요가 없다.

#cd /usr/bin/
#ls -al gcc*
lrwxrwxrwx 1 root root      7 2013-01-01 02:25 gcc -> gcc-4.1
-rwxr-xr-x 1 root root 194052 2010-04-12 00:31 gcc-4.1
-rwxr-xr-x 1 root root 217068 2010-11-14 21:31 gcc-4.4
-rwxr-xr-x 1 root root  16280 2010-04-12 00:31 gccbug-4.1

gcc 는 심볼릭 링크로 되어 있기 때문에, 원하는 컴파일러 버전을 지정할 수 있다.

5_14_58_10_media_premium.tar.gz 를 사용한다.

#cd src/wl/linux
#vi Makefile

아래와 같이 파일을 수정한다.

ifeq ($(LINUXDIR),)
  ifeq ($(LINUXVER),)
    # LINUXVER is  not specified, use temporarily uname for version
    LINUXVER := $(shell uname -r)
  endif
  ifneq ($(wildcard /lib/modules/$(LINUXVER)/build/include/linux/version.h),)
#    LINUXDIR := /lib/modules/$(LINUXVER)/build                             // 삭제
      LINUXDIR := /usr/src/linux                                                       // 추가
  else
    ifneq ($(wildcard /tools/linux/src/linux-$(LINUXVER)/include/linux/version.h),)
      LINUXDIR := /tools/linux/src/linux-$(LINUXVER)
    else
      LINUXDIR := /usr/src/linux
    endif
  endif
endif # LINUXDIR

wl_linux.c 파일에 다음을 추가한다.

...
#endif
 
MODULE_LICENSE("GPL");    // 추가
 
/* BMAC Note: High-only driver is no longer working in softirq context as it needs to block and
...

dbus_usb_linux.c 파일의 마지막에 다음을 추가한다.

struct urb *
priv_usb_alloc_urb(void ){
        return usb_alloc_urb(0,GFP_ATOMIC);
}
 
int
priv_usb_submit_urb( struct urb *urb ){
        return usb_submit_urb(urb,GFP_ATOMIC);
}
 
void
priv_usb_free_urb( struct urb *urb ){
        usb_free_urb(urb);
}
 
void
priv_usb_kill_urb( struct urb *urb ){
        usb_kill_urb(urb);
}
 
void
priv_usb_register( struct usb_driver * usbdev){
        usb_register(usbdev);
}
 
void
priv_usb_deregister( struct usb_driver * usbdev){
        usb_deregister(usbdev);
}

위 함수들을 추가함으로서, usbabs.ko 파일을 별도로 생성할 필요가 없어졌다. wl.ko 파일만 올려주면 된다. 빌드하자.

#make nodebug-native-embed

에러없이 빌드가 되었다면, 이제 Wi-Fi 를 설정할 명령 실행파일을 만든다.

#cd src/wl/exe
#make

wl 파일이 만들어졌다. 이에 대한 사용법은
이제 WPS 접속을 위한 명령어를 만든다.

#cd src/wps/linux/enr
#make

wpsenr, wpsreg 파일이 만들어졌다.
이들 명령어들에 대한 사용법은 [“Broadcom Wi-Fi 드라이버 메뉴얼”] 문서를 참고한다.

사운드 설정

데비안 설치 시, 자동으로 사운드카드 드라이버와 펌웨어가 설치된다. 하지만, 어찌된 일인지 소리가 들리지 않았다. 몇 시간의 삽질 끝에 원인을 알 수 있었다.
일단 사운드 디바이스에 대한 설정을 하기 위해 alsa 를 설치한다.

#apt-get install alsa
#alsamixer

콘솔 창에 각 부분 별로 볼륨을 조절할 수 있는 그림이 나오는데, 이때 중요한 것은 커서로 움직이면서 Mute(MM 으로 표시)를 풀어주어야 하는 것이다.
'여기서는 Master 와 PCM 만 Mute 를 풀어준다.' 나머지는 모두 Mute 상태로 둔다. 해당 부분에 가서 'm' 을 누르면 Mute 가 풀린다. 이제부터 소리를 들을 수 있을 것이다.

대표적인 동영상 재생 프로그램인 MPlayer 를 설치해 보겠다.
http://www.mplayerhq.hu/design7/dload.html 에서 다운 받을 수 있다. MPlayer 소스코드 말고도, 코덱과 스킨을 함께 받도록 한다.
먼저 코텍을 설치한다. 바이너리 형태이므로 따로 컴파일할 필요는 없다.

#mkdir -p /usr/local/program/mplayer
#tar xf essential-20071007.tar
#mv essential-20071007  /usr/local/program/mplayer/codec

이제 MPlayer 를 빌드하자.

#apt-get install yasm
#tar xf MPlayer-1.1.tar
#cd MPlayer-1.1
#./configure --enable-gui --codecsdir=/usr/local/program/mplayer/codec --prefix=/usr/local/program/mplayer
#make
#make install

이제 스킨을 설치할 차례다. 마음에 드는 것을 골라 다운 받아 해당 디렉토리에 넣기만 하면 된다.

#tar xf proton-1.2.tar
#mkdir -p ~/.mplayer/skin
#mv proton-1.2 ~/.mplayer/skin/default

실행하여 확인해보자!

#/usr/local/program/mplayer/bin/gmplayer             # GUI 버전
#/usr/local/program/mplayer/bin/mplayer               # 커맨드 버전

동영상을 보기 위해 mplayer 를 설치했는데, 아래와 같은 에러가 발생하면서 소리가 나오지 않았다.

#mplayer test.mp3
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or directory
...

구글링을 통해 역시 해결할 수 있었다. 위 에러의 원인은 실제 /dev/dsp 라는 디바이스 파일이 없는 것이었다.

#modprobe snd-pcm-oss

해당 모듈을 올려주면, 신기하게도 디바이스 파일이 생긴다. 이젠 영상과 함께 소리를 들을 수 있다.
부팅할 때 자동으로 실행하기 위해 /etc/rc.local 파일에 추가한다.
특정 동영상 재생 시에 'Can`t put VSCREENINFO: Invalid argument' 에러가 발생한다면, '-vo fbdev2' 옵션을 추가한다.

응용 프로그램 설치하기

흔히 리눅스에서 사용했던 오피스 프로그램은 오픈오피스(openoffice)였다.
어느덧 시간이 흘러 이런저런 이유로 리브레오피스(Libreoffice)가 그자리를 차지하게 되었다.
설치에 앞서 만일 기존에 libreoffice 가 설치되어 있다면, 미리 삭제하기 바란다.
데비안 패키지에 등록된 것은 옛날 버전이다. 여기서는 최신버전을 설치하는 방법을 설명한다. 먼저 http://ko.libreoffice.org/ 에 접속해서, 데비안 패키지(.deb)를 다운로드 받는다.

  1. LibO_3.6.3_Linux_x86_install-deb_en-US.tar.gz
  2. LibO_3.6.3_Linux_x86_langpack-deb_ko.tar.gz
  3. LibO_3.6.3_Linux_x86_helppack-deb_ko.tar.gz

위 순서대로 하나씩 압축을 풀고 설치한다. 설치 순서는 'install → langpack → helppack' 순으로 진행한다.

#tar xzf LibO_3.6.3_Linux_x86_install-deb_en-US.tar.gz
#cd LibO_3.6.3.2_Linux_x86_install-deb_en-US/DEBS
#dpkg -i *.deb

3개의 파일을 모두 설치했다면, 이제 실행해보자! Path 가 안 걸려 있기 때문에, 실행파일을 찾기 어려울 수도 있다.

#cd /opt/libreoffice3.6/program
#./soffice &

위와 같이 실행한다.

MC 라고 불리는 이 프로그램은 DOS 시절 사용했던 Mdir 과 유사하다. 윈도우 상이 아닌 콘솔 상에 거의 모든 작업을 할 수 있다.
패키지(apt)를 이용해서 설치하지말고, 소스코드를 직접 받아 설치한다. 좀 더 최신버전을 사용할 수 있다.

파일 및 디렉토리의 생성, 수정, 삭제, 복사 같은 기본적인 기능 외에 사진이나 음악 파일을 바로 실행 할 수 있도록 플러그인을 추가할 수 있다.

  1. 사진 파일(.jpg, .gif) - gqview(X 윈도우용), zgv(콘솔용)

쓸만한 PDF 뷰어 프로그램을 찾다가 발견했다. 나름 가벼우면서도 왠만한 기능을 갖췄다. xpdf 는 가벼운 대신 너무 기능이 빈약했다.
최신버전을 설치하기 위해 http://www.foxitsoftware.com/pdf/desklinux/download.php 에서 다운받았다. 바이너리 형태이기 때문에 컴파일도 필요없다.

ZIP 파일을 풀다보면, 한글 파일이 깨져서 풀리는 경우가 있다. 이를 방지하기 위해 기존의 unzip 대신 kozip 을 사용한다.

#apt-get install libarchive-zip-perl
#touch /usr/local/bin/kozip
#chmod 755 /usr/local/bin/kozip
#vi /usr/local/bin/kozip

다음을 입력한다.

#!/usr/bin/perl
use strict;
use Encode;
use Archive::Zip;
my $zip = Archive::Zip->new();
$zip->read($ARGV[0]) == 0 or
   die "$0: couldn't read $ARGV[0]\n";
foreach my $mref ($zip->members) {
    my $n = decode("cp949",$mref->fileName);
    print "Extracting $n\n";
    $zip->extractMember($mref,$n) == 0 or
   die "$0: couldn't extract $n\n";
}

사용법은 'kozip 파일명.zip' 이다.

MP3 재생 프로그램 중 가장 가볍다고 할 수 있는, 콘솔에서 실행 가능한 프로그램이 MOC 이다. 현재 최신버전 2.5.0-alpha4 을 설치했다.

#apt-get install moc
#mocp

MP3 파일에 저장된 Tag list 의 인코딩 때문일 것이다. 현재 시스템은 UTF-8 로 지정되어 있기 때문에 EUC-KR 이나 CP949 같은 charset 으로 인코딩되어 있다면, 곡명이 깨지는 문제가 발생한다.
방법은 기존의 인코딩(EUC-KR)을 현재의 인코딩(UTF-8)로 변환시키는 것이다. 이를 위해서는 별도의 프로그램이 필요하다.

#apt-get install easytag

easytag 2.1.6 버전이 설치되었다. 이를 실행시켜 설정 항목을 아래 그림과 같이 설정한다.

그리고 변환시킬 MP3 파일이 있는 곳으로 경로를 옮겨 모든 파일을 선택한 후, 'File → Force Saving Files' 를 선택한다.
이제 moc 를 설정해줄 차례다. 우선 config 파일을 다운로드한다. 그리고 ~/.moc 아래에 복사한다.

#cd ~/.moc/cache
#rm -rf *

기존에 캐싱되어 있던 데이터를 삭제한다. 그리고 mocp 를 다시 실행한다. 제대로된 한글 제목이 보일 것이다.

어디까지나 만약이지만, 깨진다면, easytag 프로그램으로 UTF-8 로 변환된 파일을 다시 EUC-KR 로 변환한 뒤에 다시 UTF-8 로 바꾸어 시도한다.

간편한 화면 캡쳐 프로그램이다. 굳이 gimp 를 사용할 필요없이 이 프로그램만으로도 필요한 작업을 할 수 있다.

#apt-get install shutter

윈도우의 경우, PrintScreen Key 를 누름으로써, 화면 캡쳐를 간단하게 할 수 있다. 리눅스에서도 가능하다. 그전에 약간의 수정이 필요하다.
~/.config/openbox 아래의 rc.xml 파일을 아래와 같이 수정한다.

    <!-- Take a screenshot of the current window with gnome-screenshot when Alt+Print are pressed -->
    <keybind key="A-Print">
      <action name="Execute">
        <command>shutter -f</command>                  // 수정
      </action>
    </keybind>
...
    <!-- Launch gnome-screenshot when Print is pressed -->
    <keybind key="Print">
      <action name="Execute">
        <command>shutter -f</command>                 // 수정
      </action>
    </keybind>

openbox 에서는 PrintScreen Key 와 Alt + PrintScreen Key 를 각각 눌렀을 때의 정의를 지정하고 있다. 수정을 완료하였다면, 다음을 실행하자.

#openbox --reconfigure

이제 PrintScreen Key 를 눌러서 제대로 동작하는지 확인하자. 참고로 'shutter -f' 는 현재 바탕화면의 전체화면을 캡쳐하는 실행 옵션이다.

가벼운 이미지 뷰어 프로그램이다.

#apt-get install gqview

블루투스

X40 노트북에는 Bluetooth 모듈이 탑재되어 있다. Windows 나 리눅스의 X-Window 기반이라면 간단하게 설정하겠지만, 여기서는 콘솔 기반으로 블루투스 헤드셋을 사용하는 방법을 설명한다.
블루투스를 사용하기 위해서는 드라이버(.ko 파일)만 설치되어 있다고 해서 사용할 수 있는 것이 아니다. 이를 이용할 수 있는 미들웨어 및 Application 이 필요하다.
아래와 같이 해당 프로그램을 설치한다.

#apt-get install bluez-utils bluez-alsa

X40 노트북의 경우, 기본적으로 Bluetooth 기능이 비활성화 되어 있다. 윈도우라면, 간단하게 단축키(Fn + F5)로 활성화를 시킬 수 있지만, 리눅스라면 단축키를 사용할 수 없다. 따라서 마치 단축키를 사용했을 때와 같은 효과를 내기 위해 아래와 같이 명령어를 실행한다.

# echo 1 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable              // 활성화
# echo 0 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable              // 비활성화

활성화를 시키면, Bluetooth 아이콘에 불이 들어온다.
이제 본격적으로 Bluetooth 설정을 해보자!
여기서는 Bluetooth 헤드셋을 연결하여 음악을 들어보는 것을 목표로 한다. 참고로 Bluetooth 헤드셋의 정보는 아래 표와 같다.

제품명 Sony DRC-BT15
주소(address) 00:1D:BA:C8:E9:3A

Bluetooth 헤드셋을 페어링 모드로 설정하고, 아래처럼 명령을 실행한다.

#hcitool scan
Scanning ...
	4C:B1:99:0D:20:BB	ugie의 iPad
	8C:2D:AA:51:17:B2	mobile-iMac
        00:1D:BA:C8:E9:3A      DRC-BT15

주변의 Bluetooth 장치들을 스캔하여, 접속할 디바이스가 출력되었다면, 이제 페어링을 해보자.

#bluez-simple-agent 00:1D:BA:C8:E9:3A

비밀번호가 설정되어 있는 디바이스라면, 페어링 시, 비밀번호를 물어볼 수도 있다. 접속이 성공적으로 이루어졌는지, Bluetooth 장치의 LED 를 통해 확인할 수 있다.
현재 연결된 프로파일을 저장해야 하는데, '~/.asoundrc' 파일을 아래와 같이 추가한다.

pcm.btheadset {
   type plug
   slave {
       pcm {
           type bluetooth
           device 00:1D:BA:C8:E9:3A
           profile "auto"
       }   
   }   
   hint {
       show on
       description "BT Headset"
   }   
}
ctl.btheadset {
  type bluetooth
}  

페어링에 성공했다고 해서, 바로 음악을 들을 수 있는 것은 아니고, 별도의 설정이 필요하다.
예를들어, A 라는 재생 프로그램으로 음악을 들으려한다면, A 에 대한 별도의 설정을 해주어야 한다. 여기서는 mplayer, moc 라는 2개의 재생 프로그램을 설명한다.

mplayer 가 Bluetooth 모듈을 지원하는지 아래의 방법으로 확인한다.

#aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
btheadset
    BT Headset
default:CARD=I82801DBICH4
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    Default Audio Device
sysdefault:CARD=I82801DBICH4
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    Default Audio Device
front:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    Front speakers
surround40:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    4.0 Surround output to Front and Rear speakers
surround41:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
iec958:CARD=I82801DBICH4,DEV=0
    Intel 82801DB-ICH4, Intel 82801DB-ICH4 - IEC958
    IEC958 (S/PDIF) Digital Audio Output

'btheadset' 가 보인다. 이제 mplayer 로 음악을 들을 준비가 모두 끝났다.

#mplayer -ao alsa:device=btheadset /usr/local/data/music/001-San\ E-아는사람\ 얘기.mp3

moc 의 설정 파일인 '~/.moc/config' 파일을 아래와 같이 수정한다.

# ALSA output device
#AlsaDevice     = default
AlsaDevice      = btheadset                           // 추가

이제 moc 를 실행하여 음악을 들어보자.

FAQ

패키지를 설치하려고 하는데, 이름이 헤깔릴 경우가 있다. 이럴때는 검색어를 통해 데비안 홈페이지(http://www.debian.org/distrib/packages) 에서 알아볼 수 있다.

소스리스트는 데비안에서 지원하는 패키지를 검색하고 설치할 수 있도록 참조하는 사이트이다. 이것은 처음 데비안을 설치할 때, 지정하게 되는데 데비안 공식 미러 소스리스트가 아닌 일반 미러 사이트의 경우, 도중에 없어지거나, 최신으로 업데이트되지 않는 경우가 있다.

이럴 때는 최신정보를 가지고 있는 미러 소스리스트를 찾아 등록시켜줘야 한다. /etc/apt/sources.list 파일을 직접 수정하여 추가하는 방법도 있지만, 좀더 쉽게 할 수 있는 방법을 소개한다.
이를 위해서는 netselect-apt 라는 프로그램을 설치해야 한다. 실행하면, 친절하게도 가장 빠른 미러 소스 리스트 사이트를 검색하여 찾아준다. 이후에는 검색된 사이트를 추가하여 sources.list 파일을 만들어준다.

#apt-get install netselect-apt
#netselect-apt

이 파일을 기존의 /etc/apt/sources.list 파일로 변경해주면 된다.

현재 최신 데비안 버전인 7.3 의 경우, X1 에 장착된 wifi 드라이버를 포함하고 있지 않다. 따라서 설치 시, 무선랜을 사용할 수 없고 usb to ethernet 을 사용하여 설치해야만 한다.

참고로 우분투 최신버전의 경우, 자동으로 무선랜을 인식한다. X1 에 장착된 무선랜 디바이스의 이름은 'Intel Corporation Centrino Advanced-N 6205' 이다.
인텔 무선랜 드라이버의 경우, 오픈소스가 아닌 firmware 형태로 배포한다. 따라서 데비안의 기본 패키지에 포함되지 않은 것으로 보인다.

firmware 를 다운받기 위해 아래의 주소로 접속한다.

http://wireless.kernel.org/en/users/Drivers/iwlwifi

무선랜 디바이스의 모델명인 '6205' 로 검색해보자. 'iwlwifi-6000g2a-ucode-17.168.5.3.tgz' 를 다운받는다.

#tar xzf iwlwifi-6000g2a-ucode-17.168.5.3.tgz
#cd iwlwifi-6000g2a-ucode-17.168.5.3
#cp iwlwifi-6000g2a-5.ucode /lib/firmware

위와 같이 설치 후, 재부팅 해보자. wlan0 인터페이스가 보인다면, 제대로 인식한 것이다.

  • computer/os/x40_에_데비안_설치하기_-_제2판.txt
  • Last modified: 4 years ago
  • by likewind