[Ubuntu] Capslock을 Esc로 키맵 변경하는 방법 (key remapping)

vim을 자주 사용하다보면 ESC키를 자주 사용하게 됩니다. 고가의 해피해킹 키보드가 아닌 보편적으로 사용하는 키보드를 사용하는 경우 멀리 떨어진 ESC키를 누름으로 인해서 손목이 부러질 수도 있겠다는 생각을 하게 되었습니다.

그래서 자주 사용하지 않는 Capslock키를 ESC키로 사용하기로 마음먹었습니다. Windows의 경우 KeyTweak이라는 프로그램으로 손쉽게 키맵을 변경하실 수 있습니다.

우분투의 경우 dconf편집기를 이용해서 변경이 가능합니다. Windows의 레지스트리 편집기와 비슷한 용도라고 보시면 됩니다.

dconf편집기는 기본적으로 설치되어 있지 않기 때문에 apt-get 등으로 설치하셔야 합니다. 전체적인 키맵 설정 방법은 아래와 같습니다.

 

dconf편집기 설치 : apt-get을 이용해 설치합니다.

 

dconf편집기 실행 : 좌측 상단 유니티 버튼 클릭 후 dconf 로 검색하여 클릭합니다.

설정값 위치로 이동org > gnome > desktop > input-sources > xkb-options 더블 클릭

설정값 추가 : ‘caps:swapescape’ 를 추가

  • 추가가 되었다면 이런 형태일겁니다. [‘compose:ralt’, ‘caps:swapescape’]

변경이 완료되었다면 dconf 편집기를 닫고 ESC키를 눌러 capslock으로 동작하는지 확인 합니다.

[Ubuntu] 터미널 테마 Solarized로 바꾸는 방법

처음에는 vim colorscheme만 바꾸려고 알아보던 중 간단하게 터미널 전체 테마를 변경할 수 있는 방법이 있었네요.

요즘 유행하는  dark 테마류와 더불어 간지(?)에 한 몫을 하면서 유닉스 전통의 역사가 있는 Solarized 테마 입니다. desert 테마를 사용하다 좀 더 눈에 부담이 덜한 테마를 찾다보니 이 테마 만한게 없네요.

적용 방법은 간단합니다.

 

1. git 저장소에서  clone 받기

 

2. 테마 install

install.sh를 실행시켜 설치를 시작하면 3가지 물음이 출력됩니다.

1. 컬러 테마 선택 (Please select a color scheme:)

1) light (밝은 계통), 2) dark alternative (부분적으로 어두운?), 3) dark (어두운 계통)

=> 2) 항목은 과거엔 없었는데 새로 생긴 것 같습니다. 저는 3번 선택

2.  적용할 터미널 프로파일 선택 (Please select a Gnome Terminal profile:)

=> 따로 터미널 프로파일을 만들지 않았다면 default 밖에 없을 겁니다. 1번 default 선택

3. 설정 확인

      => YES 입력 시  바로 적용됩니다.

[Ubuntu] 한영키 전환 방법

* 이 포스트는 Ubuntu 14.04 LTS 버전 기준으로 작성되었습니다.

 

방법이 간단해서 부연 설명없이 알려드리겠습니다.

“시스템 설정 > 키보드 > 바로가기(탭) > 자판 입력” 으로 이동

1. 구성 키를 “오른쪽 Alt” 로 변경

2. 다음 입력 소스로 전환에서 한영키 누름 (Multi_key로 표시됩니다.)

3. 한영키를 눌러서 키전환이 되는지 확인

[Python] pip로 모듈 설치 시 빌드 에러나는 경우 해결 방법

* Ubuntu 14.04 LTS 버전 기준입니다.

일반적으로 빌드 에러는 의존하고 있는 모듈 설치가 되어있지 않아 발생합니다.

무식하지만 확실한 한 방으로 해결할 수 있습니다. 아래 명령을 실행해주세요.

 

[Ubuntu] 화면 해상도가 1024 * 768을 넘지 못하는 경우

아주 간단하지만 치명적인 삽질 요소가 있어 짧게나마 포스팅 합니다.

저도 이 문제 때문에 그래픽 드라이버도 설치했다가 재설치를 반복하며 3시간을 날렸는데 결과는 허탈합니다.

 

문제 확인 방법

PC와 모니터에 연결된 케이블의 타입을 눈으로 확인합니다.

 

해결 방법

만약 모니터 케이블이 RGB라면 뽑아버리고 DVI나 HDMI로 교체합니다.

 

결론

RGB 케이블로 연결하면 무슨 짓을 해도 1024해상도를 초월 할 수 없습니다.

[Ubuntu] grub rescue 진입 시 복구 방법

* Ubuntu 14.04 LTS 버전을 기준으로 포스팅 했습니다.

그래픽 카드 드라이버 문제로 우분투를 설치와 삭제를 반복.. 결국 부트 로더를 찾지 못하고 grub resque 프롬프트 창이 출력되는 상황이 되었습니다.

복구 모드에서는 부트 로더가 설치가 되어있는 파티션을 찾아주면 해결이 되는데 이런 경우는 부트로더를 가지고 있는 파티션이 없는 상황입니다.

아래와 같이 부트 파티션을 잡을 수 있겠습니다.

1. 우분투 설치 USB 또는 DVD를 삽입 후 재부팅

2. 우분투 설치 화면으로 집입

3. 설치 옵션에서 기존 우분투를 지우고 설치할지 삭제하고 새로 설치할지를 묻는데 맨 아래 수동으로 파티션 설정 옵션을 선택한 후 다음 클릭

4. 기존 파티션을 삭제하고 다시 잡아 줍니다. 일반적으로 ext4 저널링 파티션과 스왑파티션을 생성해주면 됩니다.
(스왑 파티션의 경우 시스템 환경에 다양해 정확히 몇 기가면 충분하다라고 단정 짓기 어렵습니다.)

5. 우분투를 설치 완료합니다.

여기까지는 일반적인 우분투 설치 과정이었습니다.

재부팅이 되면 이전에 설정된 부트로더 정보로 인해 잘못된 파티션을 부트로더로 참조하게 되고 다시 grub resque 모드에 진입합니다.

여기서는 이렇게 부트로더 파티션을 지정합니다.

 

1. 파티션 확인

이렇게 확인 해보면 ext 포맷으로 구성된 리눅스 파일시스템 구조를 가진 파티션을 확인 할 수 있습니다. 여기서는 (hd0, msdos5)로 예를 들겠습니다.

 

2. 부트로더 세팅

이렇게 부트파티션을 지정하고 부트메뉴를 로딩까지 했습니다. 그럼 OS로 진입합니다. 여기서 한 가지 과정이 더 남아 있습니다.

 

3. 부팅 후 터미널을 이용해 변경된 설정을 저장합니다.

예제에서는 디바이스가 sda로 되어있으나 하드의 갯수에 따라 우분투가 설치된 하드가 sdb이거나 sdc일 수도 있으니 상황에 맞게 명령을 수정해주시면 됩니다.

 

[Ubuntu] .deb(패키지) 파일 설치 및 삭제 방법

우분투에서 패키지 파일(.deb) 파일을 설치하고 삭제하는 방법을 간략하게 설명합니다.

app.deb 라는 패키지 파일이 /home/account/에 존재한다고 가정하겠습니다. 그리고 패키지 명은 app입니다.

1. 설치

 

2. 설치된 패키지 상태를 확인

 

3. 설치된 패키지 삭제 (설정 파일은 삭제 안함)

 

4. 설치된 패키지 삭제 (설정 파일까지 모두 삭제)

 

[Ubuntu] node.js 설치 방법

개발 환경으로 우분투 14.x 버전을 설치하고 node.js를 설치해봤습니다. CentOS와는 조금 다른 방법이기에 포스팅합니다.

1. 저장소 업데이트

 

2. 필요한 모듈 설치

 

3. nvm 다운로드

https://github.com/creationix/nvm 에 접속하여 install script를 복사하여 쉘에 wget이나 curl를 실행합니다.

 

4. node.js 설치

https://nodejs.org/ 접속하여 Current version 즉, Stable 버전을 확인하여 해당 버전을 nvm 을 통해 설치합니다. (포스팅 시점에서의 Current Version은 v0.12.3)

* nvm 다운로드 후 바로 쓸 수는 없고 현재 터미널을 종료 후 다시 새 터미널을 실행해야 합니다.

 

5. 설치 버전 활성 및 확인

nvm은 node.js를 여러 버전으로 설치가능합니다. 그렇기 때문에 많은 설치 버전 중 사용하고자 하는 버전을 선택해주셔야 합니다.

설치된 node.js와 버전확인은 아래와 같이 할 수 있습니다.

 

6. expressjs 설치

express를 전역에서 사용하려면 -g 옵션을 넣어줍니다.

 

7. express 심볼릭링크 생성

심볼릭 링크를 아래와 같이 생성하면 계정 루트(~/)에 node_modules 라는 디렉토리가 생성됩니다.

 

이후 express 프로젝트를 생성하는 방법은 이전에 포스팅된 CentOS에서 node.js 설치 편에서 express 설정 부분과 동일하니 참고바랍니다.