2014/10/31

Ubuntu 14.10 ibus 설정 및 한글 이슈


우분투 14.10에서는 ibus-hangul 설정이 완전히 바뀌었다. 한마디로 다른 패키지와의 의존성을 탈피하기 위해 독립선언을 했다고나 할까? 이에 따라 "Ubuntu 14.04 ibus 한영키 설정과 이슈"에서 다루었던 ibus 한영키 설정 방법들은 대부분 의미가 없게 되었다. 기본적으로는 사용자가 아무것도 건드리지 않아도 한글 언어팩이 설치됐으면 한영키로 한글 입력이 가능하도록 하자는 취지이다. 일단, 우분투 14.10 beta2에서 확인한 바로는 설치시 언어를 "한국어"로 설치하면 데스크탑 키보드 환경에서는 아무 설정없이도 우분투만 설치하면 한영키가 기본 한영전환키로 잘 동작한다.

그런데, 한국 우분투 커뮤니티의 최근 게시물을 보면 노트북에서는 잘 동작하지 않는 듯하다. 또한, 나처럼 데스크탑 키보드 환경에서 우분투 설치시 언어를 영어로 설치한 경우에도 ibus-hangul이 정상 동작하지는 않는다. 아마 영어 뿐만 아니라, 한국어가 아닌 다른 언어로 설치할 경우에도 비슷한 문제가 발생할 것이다.

우분투 14.10을 영어로 설치시 ibus 한영키 설정 방법

1. 한글 언어 팩 완전히 설치

"Ubuntu 14.10 Clean Install" 게시물에서 언급한 바와 같이 우분투 설치 시에 시간대(Time Zone) 설정을 Seoul로 했으면 한글 언어팩이 자동으로 추가된다. 이것 만으로는 안되고 우분투 설치 후 [System Settigs] > [Language Support] 아이콘을 선택하면 누락된 언어팩을 자동으로 설치해 준다. 설치 후 반드시 재로그인 해야 한다.

2. "Korean(Hangul)" input source 추가

ibus가 제대로 동작하기 위해, [System Settings] > [Text Entry] > [Input sources to use:] 에서 아래 화면과 같이 "Korean(Hangul)"을 추가하고 [^] 버튼으로 맨 위로 올려 놓아야 한다. 그리고 나서, 재로그인 하거나 Unity 상단 패널의 [input method] 아이콘을 선택해서 "Hangul"을 선택하면 태극 문양 아이콘 상태가 되는데 이 때부터 한영키가 동작한다.


참고로, 기본 우분투 설치후 화면을 위의 설정과 비교하기 위해 아래에 같이 올려 놓았다.


3. 한영 전환키 변경

한영 전환키 설정과 관련해서는 우분투 14.04와 달리 위의 화면에서 [Switch to...] 두 곳에 한영 전환키를 설정하면 절대로 안된다. 한영키 대신 다른 키를 사용하고 싶으면 Unity 상단 패널의 태극문양 아이콘을 선택해서 [Setup]을 누르거나 터미널에서 아래 명령을 사용하면 된다.

$ ibus-setup-hangul

우분투 14.10 한글 이슈

1. gedit 및 Google chrome 등 GTK 2 애플리케이션에서의 한글 입력 문제

위의 ibus 한영키 설정방법 만으로도 터미널에서 한영키로 한글 입력해 보면 별 문제가 없어 보인다. 그런데 gedit를 사용해 보면 새로운 문제가 발생한다. 단어나 문장을 Copy & Paste하고 나서 한글 입력이 "가나다"를 입력하면 "ㄱㅏㄴㅏㄷㅏ"와 같이 바뀐다.  또한, gedit에서 갑자기 Mouse Pointer가 사라지는 증상이 생긴다. 다른 Window를 선택했다가 gedit로 돌아오면 두가지 현상이 모두 해결되기는 한다.

gedit 뿐만 아니라, Google Chrome에서도 한글 입력이 안되거나 스페이스 키가 오작동하는 문제가 발생한다. 이는 Mint 17에서 나타나는 한글 입력 문제와 동일한 것이다.

$ sudo apt-get install ibus-gtk

우분투 14.10에는 ibus-gtk가 ibus와 함께 설치 되지 않았기 때문에 발생하는 문제이다. gtk 2를 사용하는 대부분의 애플리케이션에서 한글입력 문제가 발생할 것이다.

참고로, Mint 17에서는 ibus-gtk3 패키지도 누락된 것 같다.

$ sudo apt-get install ibus-gtk3

ibus-gtk나 ibus-gtk3를 설치한 후에는 GTK_IM_MODULE 환경변수가 올바로 동작하도록 하기 위해 재로그인해야 한다.

2. 한영 전환 상태 아이콘 필요

우분투 14.04 버전까지는 ibus 사용시 태극 문양이 한글 입력 상태를 의미했다. 우분투 14.10에서는 태극 문양이 ibus-hangul이 정상적으로 설치되었음을 의미한다. 즉, 우분투 14.10에서는글자를 입력한 후에야 한글입력 상태인지 영문 입력상태인지 알 수 있다는 뜻이다.

3. Qt 5.2+ 애플리케이션에서의 한글 입력 문제

Qt 쪽에서 관련 개발자들이 작업 중인데 언제 해결 될지는...

4. 기타 노트북 키보드 한영키 문제

나중에 기회가 되면 확인 필요...

우분투 한글 언어팩 설치 관련 개선 필요 사항

앞서 "Ubuntu 14.10 Clean Install" 게시물 중간에 언급한 바 있지만, 우분투 설치 프로세스 상에서 한글 언어팩 설치 여부를 언제 결정하는 것이 합리적인가 하는 문제와 "Korean(Hangul)" input source를 우분투 설치 후에 수작업으로 반드시 해 주어야 하는가 하는 문제 들에 대해서 개선이 필요하다. 이것은 우분투 14.10만의 문제가 아니고 우분투 설치 전반에 대한 문제이다.

1. 우분투 설치 프로세스 중 한글 언어팩 자동 설치 결정 시점

일단, 현재 한글 언어팩 설치 여부는 시간대를 서울로 설정할 때 결정하고 있는 듯 하다. 미국인이 서울에 거주하면서 한글을 사용하지 않는 경우도 있고, 한국인이 외국에 거주하면서 한글을 사용하는 경우도 있기 때문에 시간대를 가지고 한글 언어팩 설치 여부를 결정하는 것은 문제가 있다. 키보드를 한글 키보드로 설정했을때 한글 언어팩을 자동 설치하도록 해주면 될 것이다.

2. "Korean(Hangul)" input source 자동 추가

또, "Korean(Hangul)" input source를 추가하는 것도 한글 키보드를 선택했을 때 자동으로 추가되도록 하면 좋을 것이다.

3. 한글 언어팩 불완전 설치 문제

한글 언어팩이 완전히 설치되지 않는 문제도 남아 있지만 우분투 14.10에서는 처음 로그인 후 경고창도 뜨더라. 반자동인 셈인데 그럭저럭 참을만 하기는 하다.

[추가] ibus 사용시 게스트 가상머신에서의 한영키 사용 문제는 해결됨

우분투 14.04에서 ibus 사용시 별도의 입력 환경이 있는 Virtual Box guest 머신으로 한영키 시그널이 잘 전파되지 않아 한영키를 쓰기 어려웠던 문제가 있었는데 우분투 14.10에서는 발생하지 않는다. Windows 게스트나 우분투 게스트나 한영키를 쓰는데 문제가 없다.

Mac에 Ubuntu 14.10 설치 후 부팅 이슈


"Ubuntu 14.10 Clean Install"에서 언급했듯이 우분투 14.10 설치 후에 iMac에서 우분투로 부팅할 수 없는 문제가 발생했다. 현재, iMac은 Mac OS X Yosemite, Windows 8, Ubuntu 14.10의 Triple-OS가 EFI mode로 설치 되어 있다. 부팅은 "Apple Mac에서 EFI Multi-OS Booting"에서 다룬 바와 같이 Mac OS X의 boot manager를 사용하도록 설정되어 있다. 

우분투 14.10 설치 후 Mac 부팅시 나타나는 증상

일단, 우분투 14.10을 설치하고 나서 부팅하니 부팅 순서가 바뀌었다. Option키를 누르지 않으면 Mac OS X로 부팅하도록 했었는데 Windows로 부팅한다. 아마 UEFI 기본 boot loader(fallback bootloader)를 Windows boot manager로 해 놓아서 그런 것 같다. 나중에 우분투로 부팅해서 확인해 보니, NVRAM 정보가 reset 되어 있었다. 즉, 예전에 우분투의 efibootmgr로 설정했던 부팅 순서 정보도 모두 사라졌다.

또한,  부팅시 Option키를 누르고 우분투를 선택하면 grub> prompt로 떨어지고 거기서 아무 것도 할 수 없는 상태가 된다.

해결 방법

먼저, Windows로 로그인 한 후에 Boot Camp 제어판에서 "Mac OS X로 부팅" 설정 후 재부팅하면 이후부터는 Mac OS X로 부팅한다. 이제, Mac OS X로 재부팅 후, 반드시 우분투 ESP(EFI System Partiton) 파티션의 EFI 폴더를 다시 복사해 주고 grubx64.efi에 대한 boot.efi 하드 링크를 다시 생성해 주어야 부팅시 Option키 눌러서 우분투를 선택하여 부팅할 수 있게 된다. 우분투 14.04에서는 grubx64.efi 대신 shimx64.efi로 boot.efi 하드 링크를 생성해도 부팅이 잘 됐었는데 Bug 때문인지 부팅시 오류가 생긴다.

즉, Mac OS X 터미널에서 아래와 같이 해 주면 된다.

$ sudo mkdir /mnt
$ sudo mount -t msdos /dev/disk0s1 /mnt

$ cd /Volumes/MDATA
$ sudo rm -rf ./EFI/ubuntu/
$ sudo cp -R /mnt/EFI/ubuntu ./EFI/

$ sudo ln -f /Volumes/MDATA/EFI/ubuntu/grubx64.efi /Volumes/MDATA/System/Library/CoreServices/boot.efi

우분투 14.10에서 Security 관련해서 Grub이 뭔가 바뀐 때문인지는 확실하지 않다. 어쨌든, 우분투 재설치할 때 마다 이 작업을 해야하는 불편함이 생겼다. rEFInd를 Mac OS X 파티션에서 사용할 경우에 Mac OS X가 upgrade 될 때마다 rEFInd를 재설치해야 하는 번거로움과 비슷한 일이다.

Mac 사용자 들을 위한 권장 사항

Mac에서 Multi-OS를 사용하는 사용자들은 안전을 위해 boot manager로 rEFInd를 같이 사용하는 것이 좋겠다.

2014/10/30

Ubuntu 14.10 Clean Install


지난 주 말에 우분투 14.10이 출시되었다. 이번 버전은 데스크탑 보다는 서버 쪽의 Upgrade 내용이 주를 이루는데 Cloud Computing 관련 Upgrade가 많다. 데스크탑 쪽에서는 Mir와 Unity 8의 개발이 진행 중인데 내년이나 내 후년 쯤에야 일반 사용자들이 쓸만할 정도가 될 것이다. 그러다 보니 별로 Upgrade하고 싶은 생각이 들지 않았는데 나이가 들수록 밀려오는 귀차니즘 타파 차원에서 iMac에 설치된 우분투를 Clean Install 하기로 했다.

Clean Install vs. Upgrade

우분투 버전업할 때마다 고민하는 부분인데 경험상 Clean Install이 낫다. 설치 시간으로 보면 둘다 비슷하다고 볼 수 있다. Upgrade하면 1시간 반에서 2시간 정도 지가 알아서 자동 Upgrade 해 주니까 편리한 측면과 기다리는데 따른 지겨움이 있는데, 뭔가 문제가 생겼을 때 원인을 파악하기 어렵다. Clean Install의 경우에는 우분투 설치시간 자체는 10분 정도 밖에 걸리지 않지만 데스크탑 환경도 새로 설정해 주어야 하고, 자주 쓰는 프로그램들도 다시 새로 설치하고 환경 설정도 다시 해 주어야 한다. 결국 전체 시간은 비슷하고 Clean Install을 할 경우 사용자가 세세히 신경을 써야 할 부분이 많다.

뜬금 없지만 Mac OS X나 iOS의 자동 Upgrade는 매우 훌륭한 편이다. 문제가 거의 생기지 않더라는 것인데 우분투 자동 Upgrade는 뭔가 되던 것이 안되는 일이 꼭 생긴다.

Clean Install을 잘 하기 위해서는...

평소에 자주 쓰는 프로그램들에 대해 설정 변경 사항을 기록하거나 백업 받아 놓는게 좋다. 설치시에도 설치 순서나 과정을 정리해 둘 필요가 있고 이 글도 그런 차원이다. 그리고, 최초 OS 설치시에 사용자 데이터 파티션과 OS 파티션은 반드시 분리해 두는 것이 좋은 습관이다. OS만 다시 설치하면 되기 때문이다.

Clean Install을 위한 사전 준비

우분투가 이미 설치되어 있는 상황에서 Clean Install 할 경우에 가장 빠르고 쉬운 방법은 하드 디스크에 저장된 우분투 설치 iso 파일로 부팅해서 설치하는 것이다. USB 메모리도 필요 없다. "하드디스크의 우분투 설치 iso로 우분투 설치" 게시물을 그대로 따라가면 된다. 14.10을 설치하면서 내용 중에 일부 오류가 있어서 수정하였다. Grub 부트 메뉴 엔트리에서 iso 파일 경로만 자신의 환경에 맞게 수정해 주면 된다.
menuentry "HDD Ubuntu 64-bit iso" {
   set isofile="/boot-isos/ubuntu-14.10-desktop-amd64.iso"
   loopback loop (hd0,9)$isofile
   linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
   initrd (loop)/casper/initrd.lz
}
이제 우분투를 새로 설치하기 위해서 하드디스크의 우분투 설치 iso로 부팅한다. Grub 메뉴 중에 위에 새로 추가한 "HDD Ubuntu 64-bit iso"를 선택한 후, 다시 "Try Ubuntu without installing" 메뉴를 선택해서 우분투 live CD 환경으로 부팅한다. 부팅하고 나서 아래 스크린 샷에서 보듯이 두 가지만 해 주면 된다. 즉, 사용자 Data를 백업 받고 나서 사용자 Data 파티션을 unmount 해 주는 것이다.


기존 우분투 환경에서 사용자 aaa의 폴더는 /home/aaa 였고, 우분투 OS와 별개의 파티션인 /dev/sda9를 사용하고 있었다. 위의 스크린샷에서 우분투 설치 iso 파일도 같은 파티션에 복사해 놓았기 때문에 - 즉, 기존의 우분투 환경에서 /home/boot-isos 폴더 사용 - 하드디스크의 iso로 부팅하면 자동으로 /dev/sda9 파티션을 /isodevice 폴더에 mount 시켜 놓고 있음을 알 수 있다.

먼저, 아래와 같이 사용자 폴더에 사용자 데이터가 있기 때문에 폴더를 옮겨 백업을 받았다. 새로 우분투 설치시에도 동일한 사용자명을 사용할 것이기 때문이다.

$ sudo mv aaa aaa-14.04

그 다음은, 우분투 설치시에 기존의 우분투 OS 파티션을 포맷할 것이기 때문에 해당 디스크가 있는 파티션은 모두 unmount 해야만 파티션 테이블을 수정하여 설치를 진행할 수 있기 때문에 아래의 명령을 반드시 해 주어야 한다. USB 메모리로 설치할 경우에는 USB와 하드디스크가 분리된 물리적 장치이기 때문에 이 과정이 불필요하지만 여기서는 하드디스크의 iso로 설치하기 때문에 반드시 필요한 작업이다.

$ sudo umount -l /isodevice

우분투 14.10 설치

이제 바탕환면의 "Install Ubuntu 14.10" 아이콘을 선택해서 우분투 설치를 진행한다.이 과정은 일반적인 우분투 설치 과정과 동일하다. 다만, 기존의 우분투 OS 파티션만 새로 포맷하고 사용자 파티션만 다시 잡아 주면 된다. 기존에 사용했던 swap 파티션이나 UEFI 모드로 설치 시 사용하는 EFI System Partition(ESP) 들은 자동으로 우분투 설치 소프트웨어가 재사용하도록 설정한다. 설치 과정을 따라 아래 스크린샷 들을 참고하면 된다.

맨 처음 설치 언어 선택이 나오는데, "한국어"로 해도 되고 "English"로 해도 된다. 습관상 영어로 설치한다.


인터넷 속도가 빠르지 않다면 인터넷에 연결하지 않고 설치하면 설치시간이 10분도 안걸린다.


 이제 우분투 설치 파티션을 지정해야 하는데 아래와 같이 "Something else" 를 선택한다.


 아래와 같이 우분투를 설치하고 사용할 파티션을 선택하는 화면이 나온다.


먼저, 기존에 설치된 우분투 파티션을 선택해서 포맷해야 한다. 아래에서 /dev/sda8을 사용하고있었다. 이 파티션을 선택한 후, [Change] 버튼을 선택한다.


아래와 같이 우분투 OS 파티션을 포맷하도록 check해 주어야 한다. Mount 위치는 당연히 "/"이다.


그 다음은 사용자 데이터가 있는 /home 파티션을 지정한다. 나중에 사용자명(aaa)을 지정하면 이 파티션에 새로 /home/aaa 폴더를 만들 것이다. 우분투가 이 파티션을 사용하도록 하기 위해서 다시 [Change] 버튼을 선택한다.


이 파티션은 사용자 데이터가 들어 있는 파티션이므로 당연히 절대 포맷하면 안된다. Mount 위치만 /home으로 지정해 주면 된다.


추가적으로, 현재 /opt 파티션도 별개로 사용자 데이터 용도로 사용하고 있지만 /home 파티션과 동일하게 /opt 파티션을 우분투가 사용하도록 지정하면 되기 때문에 스크린샷은 생략한다.

우분투가 사용할 파티션을 모두 선택한 후의 스크린 샷을 아래에 보였다.


[Install Now] 버튼을 선택하면 아래와 같이 디스크에 Write 할 것인지 물어 보고,


아래와 같이 시간대 설정으로 넘어 간다. 설치 언어는 영어지만 시간대를 Seoul로 선택하면 한글 언어 팩을 자동으로 설치한다. 사실, 이건 좀 문제가 있다. 미국 사람이 서울에 거주할 수도 있고, 한국 사람이 미국에 살 수도 있기 때문이다. 그 다음 화면이 키보드를 선택하는 것인데 키보드를 Korean으로 선택했을 때 한글 언어팩을 자동설치하는게 설치 프로세스상 맞는게 아닌가 한다.


그리고, 키보드 설정에서 Korean을 선택해 준다. 노트북인 경우 101/104 키를 선택하면 된다. 여기서도 우분투 한글 문제에 대해 나중에 별개로 글을 올릴 예정이지만, ibus에서 한글을 사용하기 위해서는 설치 후에 "Korean(Hangul)" input source를 반드시 추가해야 한다. 여기서 Korean 키보드를 선택하면 자동으로 한글 언어팩을 설치하도록 하고, "Korean(Hangul)" input source도 같이 추가해 주면 되지 않나 싶다.


이제, 아래와 같이 기존 우분투에서 사용했던 동일한 사용자(aaa)를 추가한다. 컴퓨터 이름도 동일한 이름으로 지정해 주면 된다.


사용자 설정까지 마치면 본격적으로 우분투를 설치하기 시작한다.


설치를 끝내고 나서 새로운 우분투 14.10으로 재부팅하면 된다. 참고로, 여기에 있는 화면들은 우분투 live CD의 Screenshot 앱으로 캡춰해서 ~/Pictures 폴더에 저장해 놓은 것들이다. 그런데 재부팅하면 우분투 live CD 환경은 RAM에서 실행되고 있는 것이기에 모두 사라져 버린다. 터미널을 띄워서 사용자 파티션을 마운트해서 이미지들을 모두 하드디스크로 옮기고 나서 다시 unmount 해 준 후에 아래 화면에서 [Restart Now] 버튼을 선택하면 된다.


우분투 14.10 드라이버 설치

사실, iMac에서 우분투 14.10을 설치하고 나서 우분투로 부팅하지 못하는 사태가 발생했는데, iMac과 관련된 우분투 14.10 이슈에 대해서는 이 글의 주제에서 벗어나기 때문에 별개로 "Mac에 Ubuntu 14.10 설치 후 부팅 이슈"를 참고하면 된다. 참고로, 현재 iMac에는 Windows 8과 Mac OS X가 같이 설치되어 있다.

또한, 영문으로 우분투 14.10을 설치한 탓인지 ibus-hangul이 제대로 동작하지 않는 문제도 생겼다. 이것 역시 별개로 "Ubuntu 14.10 ibus 설정 및 한글 이슈"를 참고하면 된다.

우분투를 새로 설치 한 후 가장 먼저 해야 할 일은 하드웨어가 제대로 동작하도록 드라이버를 설치하는 일이다. 

iMac의 경우에는 우분투 설치할 때마다 WIFI가 동작하지 않는다. 하드디스크에 저장된 우분투 설치 iso 파일을 Archive Manager로 열어서 dkms와 bcmwl-kernel-source 패키지를 설치해 주어야 한다. 파일의 위치는 아래와 같다. 아래 파일을 double click 하면 설치할 수 있다.
  • dkms: /pool/main/d/dkms/dkms_2.2.0.3-1.1ubuntu5_all.deb
  • bcmwl-kernel-source: /pool/restricted/b/bcmwl/bcmwl-kernel-source_6.30.223.248+bdcom-0ubuntu1_amd64.deb
NVIDIA 드라이버는 nouveau 드라이버가 정상 동작하기 때문에 굳이 설치할 필요는 없지만, 이전 게시물을 참고하면 된다.

우분투 소프트웨어 Upgrade

우분투는 새 버전이 출시되고 나서도 버그 fix를 계속하기 때문에 소프트웨어 Upgrade를 반드시 해 주는 것이 좋다. 한글 언어팩이 설치된 경우에는 저장소 서버가 자동으로 KAIST FTP로 지정되어 있는데 [System Settings] > [Software Updates] > [Ubunt Software] > [Download from:] 에서 "Main Server"로 임시 교체해 주는 것이 좋다. 그리고 나서,

$ sudo apt-get update
$ sudo apt-get upgrade

사용자 데이터 복원

앞서 언급한 바 있듯이 우분투 14.10으로 부팅하면 aaa 사용자에 대한 /home/aaa 폴더가 새로 만들어 졌다. 설치 전에 백업 받아 놓은 /home/aaa-14.04의 내용물들을 /home/aaa로 옮겨야 한다. 단순히, /home/aaa 폴더를 삭제하고 /home/aaa-14.04 폴더를 /home/aaa로 옮기면 안된다. 왜냐하면 사용자 폴더에는 이전 버전의 우분투 환경에서 설정했던 정보들도 같이 저장되어 있기 때문에 Clean Install이라는 의미가 퇴색된다. 실제로 해봤더니 당장 작업 공간이 작동하지 않는다. GUI 환경의 데스크탑 설정이나 각종 프로그램 설정들이 새 버전에서의 설정과 다르기 때문에 발생할 수 있는 문제인 것이다.

먼저, 우분투가 기본으로 제공하는 폴더들 부터 옮겨와야 한다. 예를 들어 ~/Documents 폴더는새로 설치하면 비어 있지만 기존에 내가 작성했던 문서들을 거기에 저장해 놓았었다. 아래의 명령으로 한번에 대체할 수 있다.

 $ for i in Desktop Downloads Pictures Templates Documents Music Public Videos; do (rmdir ~/"$i"/) && (mv "/home/aaa-14.10/$i" ~/); done

그 다음은, 기존의 사용자 폴더에 내가 만들어 놓은 폴더나 파일들을 옮겨 온다. 아래 명령으로 한방에 끝~!

$ mv /home/aaa-14.04/* ~/

대부분의 우분투 데스크탑 설정이나 애플리케이션 설정 폴더/파일 들은 "."으로 시작하기 때문에 위의 명령으로 "."으로 시작하는 폴더/파일 들은 자동 제외된다. 물론, 드물게 일부 애플리케이션의 경우 "."으로 시작하지 않는 폴더/파일을 사용하고 있다면 다시 /home/aaa-14.04로 원위치 시켜 놓는게 좋다. 참고로 "."으로 시작하는 Unix/Linux 파일들은 숨겨져 있어서 "ls -a" 명령으로 볼 수 있다.

추가적으로 터미널을 자주 사용하다 보니 .bashrc 파일을 빨리 옮겨 오는 것이 좋다.

$  mv /home/aaa-14.04/.bashrc ~/

우분투 데스크탑 환경 설정

사용자 데이터를 복원하고 나서 해야할 일은 우분투 데스크탑 환경을 예전에 쓰던대로 맞추는 일이다. ibus 한글 설정, 데스크탑 한글폰트 설정, 배경화면 교체, Unity 환경 설정, 자주 사용하는 앱을 Launcher에 등록하기 등등을 수작업으로 해주어야 한다. 

한글 폰트설정은 Unity Tweak Tool을 설치해서 폰트를 한글 폰트로교체해 주면 된다. 유니티 환경 설정은 이전 게시물을 참조하면 된다. ibus 한글 설정에 대해서는 "Ubuntu 14.10 ibus 설정 및 한글 이슈"에 정리했다.

자주 사용하는 소프트웨어 설치 및 설정

자주 사용하는 소프트웨어는 개인 별로 다르기 때문에 여기서는 자주 사용하는 몇개 소프트웨어에 대해서만 언급한다.

Google Chrome

크롬은 구글에서 따로 다운로드 받아야 한다. 검색해서 다운로드 받으면 된다. 설치후에 자동으로 저장소가 등록된다. 중요한 것은 이전에 사용하던 bookmark나 plug-in을 옮겨 오는 일이다. 구글 크롬을 설치하고 나서 크롬을 실행하기 전에 아래와 같이 해 주면 된다.

$ mv ~/.config/google-chrome ~/.config/org.google-chrome
$ mv /home/aaa-14.04/.config/google-chrome ~/.config/

Virtual Box

버추얼 박스도 Oracle 버추얼 박스 홈페이지에서 하라는 대로 따라해서 설치하면 된다. 저장소를 추가하고 설치하는 것이 좋다. 단, 아직 우분투 14.10저장소가 없으므로 trusty(14.04) 버전 저장소를 이용하면 된다. 설치 후, 이전에 사용하던 설정을 옮겨 오는 것이 중요하다.

$ mv /home/aaa-14.04/.VirtualBox ~/

기타 소프트웨어

아래는 우분투 설치 후 습관적으로 설치하는 소프트웨어 들이다. 이전 우분투 환경에서 따로 설정했던 것들이 있다면 설치 후에 위의 예를 참조하여 해당 소프트웨어가 사용하는 폴더나 파일을 옮겨 주면 된다.

$ sudo apt-get install gparted synaptic dconf-tools
$ sudo apt-get install compizconfig-settings-manager
$ sudo apt-get install ghex deluge vlc
$ sudo apt-get install valgrind exuberant-ctags cscope

Unity Desktop이나 Gnome Desktop 환경에서 KDE application 들을 설치할 때는 불필요한 KDE 파일들이 설치되지 않도록 아래와 같이 옵션을 주는게 좋다.

$ sudo apt-get install --no-install-recommends kdiff3 kchmviewer

2014/10/07

Ubuntu USB WIFI adaptor


이전 글에서 아이맥에서 WIFI 드라이버로 Broadcom proprietary driver를 사용하면 된다고 했었다. 모델은 iMac13,2에서 WIFI는 Broadcom BCM4331을 사용하고 있다. 그런데, 우분투에서 가끔씩 네트워크 접속이 잘 안되거나 끊기는 문제가 있다. chrome에서 확인해 보면 웹사이트 접속시 아래 상태바에 Resolving host...라는 메시지가 뜨고 접속이 안될때가 종종 생긴다.

그동안 불편한 대로 참고 써왔는데 오래 전에 Anygate USB WIFI adaptor를 사놓고 쓸일이 없어서 보관하고 있는 것이 생각이 났다. 구형이라 IEEE 802.11bg까지만 지원된다. 그런데 어차피 Broadcom 드라이버도 우분투에서는 IEEE 802.11n을 지원하지 않기 때문에 속도는 매한가지다. 네트워크 접속의 안정성이 더 중요한 문제라서 이 놈을 우분투에서 사용해 보기로 하였다.

우선 Anygate 드라이버 구글 검색을 해보니 안잡힌다. 아래와 같이 리눅스 드라이버 명을 알아내야 한다. isl3887이다.

$ lsusb | grep -i wireless
Bus 003 Device 002: ID 0cde:0015 Z-Com XG-705A 802.11g Wireless Adapter [Intersil ISL3887]
구글링해 보니, linux-firmware-nonfree 패키지를 설치하고 p54usb 모듈을 사용하면 된다고 한다. 하지만, 아래 명령으로 확인해 보면, 우분투 14.04에는 이미 패키지도 설치되어 있고 p54usb도 이미 로딩되어 있다.

$ dpkg -l | grep linux-firmware-nonfree
$ lsmod | grep p54usb

아래 두 가지 명령으로 WIFI 드라이버가 정상 작동하는지 알 수 있는데, wlan0는 이미 사용하고 있으니 wlan1이 잡혀야 하는데 안잡힌다.

$ iwconfig
$ ifconfig

조금 더 찾아보니 debian wiki에서 해결책이 나왔다.

$ sudo -i
$ wget https://daemonizer.de/prism54/prism54-fw/fw-usb/2.13.25.0.lm87.arm --no-check-certificate
$ mv 2.13.25.0.lm87.arm /lib/firmware/isl3887usb
$ modprobe -r p54usb && modprobe p54usb

$ sudo reboot

위와 같이 firmware를 받아서 모듈을 다시 로딩해야 한다. 그런데, 재부팅까지 해 주어야만 잡힌다.
재부팅 후 iwconfig 해 보면 아래와 같이 wlan1이 잡힌다.

$ iwconfig
wlan1     IEEE 802.11bg  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=14 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          
eth0      no wireless extensions.

lo        no wireless extensions.

wlan0     IEEE 802.11abg  ESSID:"AAA"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 00:00:00:00:00:00   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
이제 Unity 상단 패널의 WIFI 아이콘을 클릭해서 SSID를 선택하고 비밀번호를 입력해서 Access Point에 접속하면 된다.

일단, 동작은 잘되는데 안정성 문제는 몇일 동안 써봐야 확인될 것이다. WIFI 안정성 문제가 WIFI 드라이버 때문인지도 사실 확실하지는 않다.

추가적으로, 기존의 Windows BCM4331 드라이버를 가지고 ndiswapper로 firmware 모듈을 로딩할 수 있는 방법도 있는데 나중에 시도해 볼만하다.


참고 사이트

https://wiki.debian.org/prism54#p54usb
https://wiki.sabayon.org/index.php?title=Using_Broadcom_wireless_and_ndiswrapper_w/Sabayon_miniEd

2014/10/02

Ubuntu 14.10 beta2 GUI login


우분투 14.10 beta2나 현재 daily-build iso 이미지로 설치하면 GUI 환경, 즉, X-window로 로그인이 안되고 콘솔 모드로만 로그인이 된다. 참고로, Virtual Box에 설치한 경우에는 부팅 후 먹통인 것처럼 화면에 아무것도 나타나지 않는다. 이 때에는 <Host>+<F1>키로 콘솔 로그인이 가능하다. Virtual Box에서는 <Host> key가 <Alt>+<Ctrl> key를 대신한다.

이 경우에 아래와 같이 수동으로 lightdm을 실행하여 Unity Desktop으로 로그인할 수 있다.

$ sudo lightdm start

실행 후, Virtual Box에서는 <Host>+<F7>키로 GUI 환경으로 로그인 할 수 있다.

또 다른 문제는 로그인 후, Unity Desktop에서 뭘 하려고 하면 아래와 같이 인증 창이 자꾸 pop-up 된다. 아래의 예는 배경화면을 바꾸는데도 인증을 요구하고 있다.


init가 필요한 프로세스 들을 제대로 구동하고 있지 않고 있다는 생각이 들어서 예전에 얼핏 upstart를 버린다는 기사를 본게 생각이나서 구글링했더니 추측이 맞았다. 이 모든 문제의 근원은 Ubuntu가 upstart를 버리고 systemd로 가는 과정에서 발생한 문제이다. 아래와 같이 /etc/default/grub 파일을 수정하여 Grub에서 kernel 파라미터로 systemd를 사용하도록 하면 모든 문제가 해결된다. nano 등 편집기를 이용하여 아래 부분과 같이 수정한다.

$ sudo nano /etc/defaul/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash init=/lib/systemd/systemd"
$ sudo update-grub
$ sudo reboot

위의 문제는 14.10 정식 버전이 나오면 upstart를 완전히 걷어냄으로써 해결될 것으로 기대한다.


참고 사이트

https://wiki.ubuntu.com/systemd
http://www.zdnet.com/after-linux-civil-war-ubuntu-to-adopt-systemd-7000026373
http://www.reddit.com/r/linux/comments/132gle/eli5_the_systemd_vs_initupstart_controversy