'분류 전체보기'에 해당되는 글 342건

  1. 2012.10.19 간단하지만 유용한 쉘스크립트. 2
  2. 2012.10.16 Linux Kernel 3.x.x 에서 Virtualbox돌릴시 생기는 문제점 해결 8
  3. 2012.06.02 슈퍼패미콤 에뮬레이터로 고전게임 해보기! 4
  4. 2012.05.25 삭제된 파일 파일 복구기 4
  5. 2012.05.23 Nabi를 버리고 IBus를 설치하다! 4

간단하지만 유용한 쉘스크립트.

엄청나게 간단하지만, 꽤 쓸만한 녀석들 모음입니다.


소스는 하도 간단해서 별로 설명할것도 없네요...


첫번째 스트립트는 터미널 영한사전처럼 간단하게(앞부분만) 위키 내용을 보여주는것.


다음 상황에서 문제가 발생하긴 해요...


1, 동의어가 발생했을때

(뭐, 이럴경우는 그냥 웹브라우저로 연결해서 보면 되긴 합니다)

2, 느리다. 특히 데이터가 많은 페이지일 경우...

(모바일페이지를 read하면 속도 향상이 있긴하겠지만, 귀찮아서...)

3, 사전에 단어가 별로 없다

(위키백과라고 해도, 단어수만 따지자면 백과사전(책)에 비해서 단어수가 후달려서 그런지 검색안되는 단어가 좀 있습니다)


[~/bin/script]$ cat wikipedia_ko.sh

#!/bin/bash

# 위키페이지는 공백대신 언더바를 쓴다
PAGE_NAME="$(echo "$*" | tr -s ' ' '_')"
LINK="http://ko.wikipedia.org/wiki/"$PAGE_NAME""
LINK_LIST_FILEPATH='/tmp/wiki_page'
BROWSER='firefox'
WIDTH=100

clear
echo '페이지 다운로드중 잠시만 기다려 주세요.'
wget "$LINK" -O "$LINK_LIST_FILEPATH" -q
clear

RESULT_DATA="$(cat "$LINK_LIST_FILEPATH" | egrep '<p>.*?<b>' | grep -v ^\\[ | head -1 | tr -d '\t' | perl -pe s/\<.*?\>//g | fmt -w "$WIDTH")"
if [ -n "$RESULT_DATA" ];then
    echo "$RESULT_DATA"
    echo
    echo "URL : "$LINK""
    echo -n '웹 브라우저에서 보시려면 <<v>> 키를 눌러주세요.'
    read -n 1 CHECKER
    echo
    if [ "$CHECKER" = 'v' ];then
        "$BROWSER" "$LINK" 1>/dev/null 2>/dev/null &
    fi
fi

rm -rf "$LINK_LIST_FILEPATH"



두번째 스크립트는 검색어/지도에서위치를 검색하는 역활을 하는겁니다.


구조는 더 간단합니다. 걍 url에 쿼리날리면 끝.


구글이나 네이버말고 다른 url query를 알면 그냥 붙여넣기 해서 쓰면 되겠죠...


일단 저는 아는게 2개밖에 없어서 일단 이렇게 만들어 봤어요.


[~/bin/script]$ cat direct_url.sh 

#!/bin/bash

BROWSER='firefox'

GOOGLE_FELLING_LUCKY_URL="http://www.google.com/search?ie=utf8&lr=lang_ko&btnI=&q="
NAVER_MAP_URL='http://map.naver.com/?query='
BASE_URL=""

while getopts 'g:m:' Option;do
    case $Option in
        g )
            BASE_URL="$GOOGLE_FELLING_LUCKY_URL"
            PARAM="$OPTARG"
            ;;
        m )
            BASE_URL="$NAVER_MAP_URL"
            PARAM="$OPTARG"
            ;;

        * )
            echo 'Usage >'
            echo ""$0" -g Query String : Google Feeling Lucky를 이용해 다이렉트 점프!"
            echo ""$0" -m Query String : Naver Map을 이용해서 주변을 검색합니다"
            ;;
    esac
done

"$BROWSER" "$BASE_URL""$PARAM" 1>/dev/null 2>/dev/null &


alias에서 터미널에서 바로 검색하면 정말 편하더군여

$go 네이버 메일

이런식으로 하면 LastPass랑 연동되서 바로 이메일 확인도 할수 있고...


$map 구청

이러면 집주변의 구청위치도 알수 있고...


여튼 일일이 브라우저 열어서 검색하고 귀찮게 안하고 명령어 한줄로 끝낼 수 있다는게 굉장이 편리해요...


ps; 네이버 open API를 사용하면 인기검색어 뷰어같은 괴상망측(...)한것도 만들수 있습니다..

http://dev.naver.com/openapi/apis/search/rank

저도 만들긴 했는데 별 쓸모는 없더군요... 그냥 심심했을때 한번 쳐보는 거 정도...


이외에도 많이 있긴한데, 나머지는 xml 파싱하는 스크립트도 넣어야 해서 귀찮아서 그냥 이정도로.

Linux Kernel 3.x.x 에서 Virtualbox돌릴시 생기는 문제점 해결

아.. 드디어 몇달간 미루던 문제를 해결했습니다..


아치에서 virtualbox안돌아가는 문제....

아마 아치리눅스에서 기본적으로 제공하는 커널을 사용한다면, 별 문제 없었겠지만

(한국 아치포럼 사이트가 조용했기 때문에... 뭐 그마져도 지금은 닫혀있지만!!!)

저처럼 혼자서 괜히 쓸데없이 바닐라 커널가지고 컴파일한 사람은 말이에요...

여튼 증상은 이렇습니다... "starting virtual machine..." 이 메세지가 나오다가, 잠시후


<바로  이런 거지 같은 상황!!!>


가상터미널(ctrl + alt F7) 같은 화면으로 점프, 그리고 거기서 virtualbox 에러메세지가 dump 됩니다.


그리고 다시 ctrl+alt+F1을 누르고 다시 ctrl+alt+F7을 눌러서 X로 돌아옵니다.

그러면 처음에 저 망할 화살표 0%가 멈춰진채로 가만히 있게 됩니다.

이후에는 모듈도 안내려가고, 프로그램도 suspend 걸려버립니다.

그리고 몇초 지나면 wdm이 프로세스 맛이 갔다고 끄라고 메세지가 나옵니다;; (적어도 오픈박스는 그랬어요!)

pstree쳐서 보면  VBoxSVC, VBoxXPCOMIPCD, VirtualBox 이런 프로세스가 그대로 살아 있습니다..

별수있습니까? killall로 일단 다 날리고...

구글링... 을 했죠.. 근데 이거 은근히 잘 검색이 안되더라구요... virtualbox trac? page 비슷한게 있어서 거기서 주로 찾아봤는데,

결과도 제대로 안나왔는데 close되고 뭐 이래서;;;

그렇게 찾다가 나온 결과를...


"Kernel was compiled with GCC 4.6, while modules with GCC 4.7."

- https://bbs.archlinux.org/viewtopic.php?pid=1108842


요 말을 보긴 했는데...

"이거... 나는 둘다 (virtualbox, llinux kernel) gcc 4.7로 컴파일 했으니까, 상관 없겠지~ 라고 생각해서, 그냥 무시했습니다.....

그리고 구글링을 한참 더 하고 나서...

virtualbox forum에 찾아보니... 뒤에 깨알같이...


The problem is gcc 4.7
A module rebuild with gcc 4.6 solve this problem.

- https://forums.virtualbox.org/viewtopic.php?f=7&t=49409


대놓고 적어놨네여 gcc 4.7이 문제라고 -_-........

이때야 알았습니다... 이제서야 gcc 4.6으로 virtualbox module을 rebuild해야 되는구나.. 하고 인식, 좀 바보 같네여....

거 발견하고도.... gcc 4.7 -> gcc 4.6으로 다운그레이드 하면, 시스템 패키지가 다 꼬여 돌아갈게 당연한거였기때문에

(애초에 pacman에서 시끄러운 소리 내기도 하고...) 다른 방법을 엄청나게 생각하고 있었는데... 답이 안나와 아...

하고 막 다른 해결 방법을 찾기위해서, 구글링을 하고 있었는데....

왠걸 누군가 AUR에 gcc46이라는 패키지가 있더라고요... 난 왜 이런 생각을 못했을까...

다운그레이드 안하고 그냥 이름 다른 패키지를 설치해도 되었던것이였잖아 ㅠㅠ... 아... 다시한번 바보를 외칩니다 ㅠㅠ...

마침 링크를 타고 들어가니 어떤 차칸분께서, 바이너리 링크를 제공하고 계셨습니다...

덕분에 컴파일 안하고 바로 바이너리로 설치 완료!

virtualbox module 컴파일할때  gcc위치를 어떻게 바꿀수 있는 옵션이 있나 잠시 찾아봤다가 그냥 빡쳐서...

mv로 gcc의 파일이름을 바꾼다음에(4.7->4.6) , vboxbuild하고 다시 원래대로(4.6->4.7) 돌려놨습니다..

그리고 재부팅후 virtualbox를 돌려보니깐 잘 돌아가더군요... 만세! 된다!


<당연하게도, 심리즈 모드도 잘 되요~ 모든게 이전과 같구나~>


ps; 애초에 virtualbox 모듈이 왜 gcc버전을 탄다는게 약간 의아..아주 이해 못가는 편은 아니지만, 여태까지 이런현상은 처음이라...

ps2; 씁... 버그 고쳐지기 전까지 커널컴파일 할때마다 귀찮은짓좀 해야겠네요.

_M#]


<<10월 16일 내용 추가>>

더 근본적인 해결방법을 찾았습니다...

https://forums.virtualbox.org/viewtopic.php?f=7&t=50960&start=15#


아치에선 다음과 같이 적용하면 될거 같네요.

1, 일단 dkms에 virtualbox module이 등록되어있다면, 제거

# dkms remove vboxhost/$(pacman -Q virtualbox|awk {'print $2'}|sed 's/\-.\+//') -k $(uname -rm|sed 's/\ /\//')


2, virtualbox-host-source패키지의 헤더파일을 편집합니다.

# vi "$(yaourt -Ql virtualbox-host-source | grep 'vboxdrv/include/iprt/cdefs.h' | cut -d ' ' -f2-)"


3, 헤더파일에서 다음을 찾아서 회색부분을 주석처리하고 검은색 부분만 남겨둡니다. (builtin_expect로 검색하시면 편합니다)

/*
#if defined(__GNUC__)
# if __GNUC__ >= 3 && !defined(FORTIFY_RUNNING)
#  define RT_LIKELY(expr)       __builtin_expect(!!(expr), 1)
#  define RT_UNLIKELY(expr)     __builtin_expect(!!(expr), 0)
# else
#  define RT_LIKELY(expr)       (expr)
#  define RT_UNLIKELY(expr)     (expr)
# endif
#else  */

# define RT_LIKELY(expr)        (expr)
# define RT_UNLIKELY(expr)      (expr)

//#endif


4, dkms에 재등록

# dkms install vboxhost/$(pacman -Q virtualbox|awk {'print $2'}|sed 's/\-.\+//') -k $(uname -rm|sed 's/\ /\//')


5, Reboot (아마 커널패닉이 일어날정도면 rmmod로 모듈제거도 제대로 안될 확률이 높으므로... 그냥 재부팅 해주세요)


정상적으로 잘 작동하는걸 확인했습니다~!


근데 이렇게하면 패키지버전업 + 모듈컴파일 상황이 겹칠경우 문제가 발생하겠네요 으음..

슈퍼패미콤 에뮬레이터로 고전게임 해보기!

오랜만에 테일즈오브판타지아 op듣고나서, 오랫만에 한번 하고 싶더라고요...


한글화도 옛날에 되었겠다... 하다가 만 기억도 있어서...


그래서 한번 돌려봤습니다..


zsnes를 처음에 깔아서 해봤는데 계속 오류(Assertion error...)가 나더군요..


에뮬레이터 자체가 안돌아가니 방법이 있습니까.. 쩝...


여튼 snes9x-gtk를 설치해서 완료...


#pacman -S snes9x-gtk



어짜피 gtk라 설치한 이후로는 윈도와 별 차이가 없음...


단지 문제가 있다면...


키보드 설정이 안되어 있어서 따로 설정들 더 해야되요.


Menu->Option->Preferences


보통 기본적으로 키는 자동적으로 잡혀있던데... 머어 별수 있나요 안되있으면 해야지..


취향에 따라서 방향키와 명령키를 정해줍니다.



그 다음엔 사운드 설정..


"Sound driver"에서 자기가 쓰는 사운드출력을 정해줍니다...


이정도는 자동으로 감지할수도 있을텐데 왜 이렇게 해놨을까요...



그럼 이제 롬 파일을 열어서 게임 시작.


세이브랑 로드도 잘 됩니다... 이번에야 말로 끝까지 가봐야지...


그리고 테오판 끝난다음에 천지창조도 마무리 해야겠네요~




ps1; 테오판 롬파일을 올리려고 했는데, 이상하게 업로드는 했는데 링크가 안생기네여;;

용량도 5메가도 안하는데 왜이래... 게다가 압축파일인데 -_-... 어쩔수 없네요... 포털에서 검색해서 받아주세요 ㅜㅜ...


ps2; 한글화 하는 툴은 여기서 받으세요...


ps3; 참고로 패치적용할때 그냥 wine으로 돌리면 됩니다. 따로 재부팅할 필요 없어요...

삭제된 파일 파일 복구기

이틀전에 명령어를 잘못쳐서(...) 파일 몇십개가 날라간 이유로. 간단한?  자세한 복구기를 남겨둡니다.


혹시 나중에나마, 누군가 ext에서 파일복구를 할 사람이 있을떄, 조금이라도 참고가 가능하게요.


자 그럼 시작 하겠습니다.


1, 맨탈 붕괴의 시작, 잘못된 명령어 수행


들어가기 전에,,, 제 alias는 이렇게 설정되어 있었습니다...

alias rm='~/bin/script/remove.sh'

alias rrm='/bin/rm -r'


문제는 이 명령을 /tmp에서 써야하는데, 홈에서 써버렸어...

rrm ./*


그래서 홈디렉토리의 파일의 일부가 날아갔습니다...


실수로 삭제 방지한다고 alias까지 만들어놨는데 왜 전 그거 안쓰고 그냥 지웠을까요


etc디렉토리는 복구가 되어있어서 다행이였는데,


문제는 작성한 스크립트를 잔뜩 박아둔 bin디렉토리의 스크립트의 대부분이 날라갔다는 사실입니다 ㅠㅠ..


그 뒤로는.... 다들 그러시겠습니다만, 맨붕....


2, 복구 part1 - 급한대로 일단 막고...아치에서 복구 시도!

 

이후에 실수로 한번 재부팅을 해버렸습니다 ㅠ..


그래서 그런지 이후에 debugfs로 복구하려니까 안되더군요... 삭제파일 리스트가 안떠!!!

(그전에 ext4는  debugfs로 복구하기 어렵다는 말도 들은거 같아서 조금이라도 위안이 되었죠!!!)


바로 복구를 했어야 하는데... 뭐 안타깝지만. 


fstab에서 홈 디렉토리를 마운트 못하게 수정하고

 # /dev/sda3                       /home                   ext4    defaults                    0           2


늦기전에 dd로 일단 홈파티션을 이미지를 떴습니다.

(root로 dd를 쓸때는 항상 조심합니다... 복구하려다 있는것도 다 털릴수 있음...)

#dd if=/dev/sda3 of=/data/exData/2012_05_Home.img bs=100M  #저 같은경우는 sda3니까 이렇게 했습니다. 조심!


휴 이미지 용량만 30기가네요 에휴....


혹시 테이블에 정보가 남아있을지도 모르니까... 시도는 해보죠! extundelete로 복구 시도,

#pacman -S extundelete


간략히 사용법을 적어두자면, 다음과 같습니다.

#extundelete 'target device' option

(예>

#extundelete /dev/sda3 --restore-all

#extundelete /dev/sda3 --restore-file /lowid/.bashrc # path는 '/'기준이 아니라, 대상장치의 절대경로 입니다!

#extundelete /dev/sda3 --restore-directory /lowid/bin )


--restore-ino : 아이노드로 찾습니다... 고급옵션(?)입니다... 저같은 경우 복잡해서 그냥 관뒀음.

--resotre-all  : 장치 전체에서 파일을 복구해 냅니다. 당근 시간이 오래 걸립니다.

--resotre-file 'path' : 파일경로를 정확하게 알고 계신경우라면, 이 방법이 제일 낫겠죠?

--resotre-directory 'path'  : 역시나 이 방법이 가장 무난하긴 합니다. 큰 디렉토리만 아니라면요.


뻔한 이야기지만, 더 자세한건 man페이지를 보세요... 뭐 어지간한 경우, 위 옵션으로 아마 해결이 가능하겠지만.


아치에서 해보니까, --resotore-all은 복구가 하나도 안되고,

 

뒤에 --resotre-file, --resotore-directory로 하니깐 libext2인가.. 갸가 segmentaion fault먹고 죽어버렸어요 ㅠㅠ..


에잇 망했다... 이러고 일단 다른툴을 찾아서 해 보기로 했습니다.

 

이번엔 photorec을 이용해 보죠.

(설치법이야 구태여 적을 필요 없겠죠? 배포판 마다 다르기도 하고, 아치에서 하는건 쉽기도 하니까)


얘도 사용하기 쉽습니다.. 걍 엔터 엔터 하면 되요...


그래도 모르니까. 일단 스크린샷 첨부해서 설명하죠

처음에 딱 하고 뜨는 화면입니다. 원하는 "디스크"를 선택해 주세요...



자! 이제 해당 디스크의 "파티션"을 보여줍니다. 복구를 원하는 파티션을 선택 해 주세요!

sdXY 형식이 아니기 때문에 불편하긴 하지만... 순서와 용량으로 대충 어림짐작(...)이 가능합니다.


선택한 "디스크"의 "파티션"을 선택해 줍니다.

저야 ext4니까  "ext2/ext3"를 선택하겠습니다. 뭐 어지간한 리눅스에는 다 ext파티션이니까...



이제 복구 타입을 설정할때 입니다. "전체다" 복구하려면 "whole" 그게 아니라 선택적 복구를 하려면 "Free"를 선택합니다.

...라고 하는게 정석이긴 한데, 전 ext4라서 그런가... free를 눌러도 그냥 전체다 복구 하더라고요...


복구된 파일이 저장될 위치를 지정해 줍니다. 용량여유가 있는 경로를 선택하시길 추천합니다.

(제가 30긱 하드를 복구했는데... 복구된 파일 전체 크기가 한 2긱되던거 같습니다.)

 

이후, 복구되는 과정이 시작됩니다.

 

photorec는 일단 복구하는 파일의 결과를 실시간으로 보여주는게 마음에 들더군요. *.txt 몇개, *.torrent 몇개... 이런식 입니다.

ps; 중간에 파일 디스크 타입? 파티션 타입? 인가... 설정하라고 나올떄도 있는데, 이때는 중간에 Linux를 선택 하시면 될겁니다.


음... 복구 다 하고 나서, 복구완료된 파일을 보았는데...

 

제가 필요한건 "수천개 중에" "1개" 복구가 되더군요 아놔...


(지운지 오래된 파일들만 왕창 복구해 내네요;; 쓸데없는 torrent파일, 야짤, 로그파일 이딴거나...)

결과적으로 그런거죠 "실패했다"


그리고 이어지는 2차 멘붕.


3, 아까 segmentaion fault가 원인일거야! 아치에서 안되면 우분투에서 해보자!!!


옜날 생각도 났겠다... 오랬만에 붕투체험도 해볼겸해서, 12.04(05인가;;) 시디를 굽고 라이브CD로 함들어가 봤습니다.


이야 ODD라 그런지, 원래 무거운건지... 속도 무지하게 느리군요..버버버버벜 아 이거 내 타입 아냐!!


그런 우여곡절을 겪은 이후, 바탕화면에 입성!!!

이미지 출저: http://commons.wikimedia.org/wiki/Image:Ubuntu_12.04.png?uselang=ko


아 근데 이거 "유니티"인가 적응 진짜 안되네요? 적어도 제가 쓰기에는 진짜 불편한 인터페이스...


아무리 생각해도 이런건 아니에요.. 컴퓨터가 무슨 아이패드나 넷북도 아니고...


터미널은 어디 쳐박혔는지 찾을수도 없고!!! 시냅틱도 어디 쳐박혀 있는지 찾을수 없고!!!


(알고보니 터미널은 오른쪽 가젯(?)의 "우분투마크"를 클릭해서 "검색"해서 실행해야 하더군요


야! 아무리 그래도 터미널은 사용하기 쉽게 해 놔야하는거 아니냐!!! *nix의 생명은 터미널이란 말이다!!!! )


시냅틱도 찾고찾다 안되서 저기 오른쪽 가젯의 "쇼핑백" 클릭해서 시냅틱 깔았습니다... 이후에 exundelete, photorec도 설치완료.


서문이 너무 길었네요.. 이제 복구 시작...


저같은경우 extundelete로 복구시도를 다시 해봤는데 결과는 마찬가지더군요. 혹시해서 아까 --restore-directory 옵션으로


시도도 해봤는데, segmentation fault 먹지 않는다는 사실만 제외하면 똑같았습니다.. 네.. 복구가 안되었다는거죠.. 하나도...


photorec의 경우 복구하다가 시스템이 맛탱이가 가버렸습니다.. 뭐 별수 있습니까? 걍제종료 해야지...


후... 뭔가요 이번 파트는... 그냥 우분투 체험하러 들어돈것 밖에 안되는듯.. 결론은 모두 실패.


3차 멘붕.


4, 수동복구...


아까 이미지 뜬파일을 통해서 수동으로 복구를 시도해 보았습니다.


혹시해서 winhex로 이미지 뜬걸 열고... 문자열을 검색...

 

 

당연하지만, 삭제된 파일이지만 검색은 되죠...네... 어짜피 위에 테이블(?)만 지워진 상태고 블록은 그대로 일테니...


근데 더 신기한건, 검색된 문자열(plain text)의 앞뒤가 명확하다는겁니다 !!!!!


100%로 맞아 떨어지지는 않았지만, 파일의 시작,끝이 거의 구분이 간다는 거죠. 

 


 

와 진짜로 신난다! 가능성이 있어! 


그리고 옛 기억(?)을 더듬어서 30긱 이미지에서 일일이 문자열을 검색하기 시작...


나옵니다! 나와! 파일이 파일이~!!! 그래서 일일이 검색하고, 파일 앞뒤를 찾고, 범위를 선택해서 드래그 해서 복원을 했습니다..


일부 파일의 경우 디스크 전체에 한번 밖에 없는경우고 있었지만, 이런경우는 별로 없었고 (....)


파일하나(꼭 그 파일에서만 있음직할만, 즉 진짜 디스크에서 딱 1개 들어가 있다고 확신을 할만한... 그런 문자열 선택...

 

물론 파일이 수십개라 다 정확한 문자열을 정하기 좀 힘듭니다.)검색하면, 대상파일과 비슷한

 

(정확하게 말하면, 제가 대상파일을 편집할때 backup본 만들어 놨던)파일이 수두룩 하게 검색이 됩니다.


보통 10개이상~20개 정도였고, . 특히 편집을 자주한 파일을 보면, 덤프한 파일이 50개가 넘어갔어요.


그래도 별 수 있습니까.... 그 50개 덤프뜬 파일 다시 분석해서 가장 "최근인듯한" 파일 골르는 수밖에...


보통 용량순으로 고르면 되더군요.. 가장 최신인 파일일수록 예외처리를 많이 해 놨을테니까...


(물론 아닌경우도 있어서 캐고생 했습죠 데헷...)


그렇게 하루종일 검색, 덤프, 선택, 과정을 거쳐 복원을 완료 했습니다.


이후 멘탈도 다시 불완전하게 나마 복원이 되었습니다 (...)


일단 복원을 시키긴 했는데, 모든 스크립트가 제대로 작동하는진 좀더 지켜봐야 할거 같네요...


마지막으로 요약하자면.. 수동 복구가 가능했던 이유는...

1. 내가 작성한 파일이라서 내부가 어떻게 되어있는지 대충 알고 있었음.

2, 스크립트 파일이라서 plain text였다.

3, 파일 크기가 거의다 10k 내외였다.

4, 3번때문인지, ext의 특성인진 몰라도, 파일의 단편화가 일어나지 않았다.

(뭐 확실히 FAT,NTFS였다면 클러스터 크기가 작아서 복구가 불가능했을지도요?)

5, 구별이 쉽게 파일의 앞,뒤가 '00'으로 구별되어 있었다.


입니다... 여러분도 삽질 조심하세요 ㅠㅠ.. 나처럼 이러지 말고...




ps; 티스토리, 파이어폭스 콤비가 포스팅 또 날려먹었네요.. 와 신난다!

한 30줄 정도 썼었는데 제길... 자동저장도 안되있네.. 씁...


ps2; 와 또 날려먹었다!!! 이번엔 뒷부분 한 10줄 날아감.. 아 대체 왜이럴까요? 뭐가 문제일까?

 

ps3; 은근히 포스팅 작성하는데 시간 오래걸리네요.. 윈도랑 왔다갔다 하면서 작성해서 그런가;;;

Nabi를 버리고 IBus를 설치하다!

오늘 아침에 갑자기 나비가 맛이 가서...


(정확하게 말하자면... 나비자체가 문제가 생겼다기보다, 아치에서 패키지 업데이트 하면서 생긴 문제 같다)


ibus로 갈아 탔습니다...


뭐 대부분 아치쓰는사람들이 지금은 다 ibus쓰고 있었겠지만...


전 계속 scim쓰다가 한 1년정도 nabi로 유지하고 있었어요 ㅋ..


왜냐하면... 귀찮으니까... 결과적으로 왠지 입력속도가 빨라진것 같은 느낌이 들긴 합니다..


사족은 됐고...


나중에 잊어버리니까, 대충 설정방법을 적어 놓겠습니다. 그래도 누군가 구글링해서 보는 사람이 있겠지...


1, 패키지 설치

#pacman -S ibus ibus-hangul


2, 환경변수 설정

~/.bashrc 또는 ~/.bash_profile에 다음을 넣어 줍니다.

뭐 나비, scim 설정하고 비슷합니다.

export GTK_IM_MODULE="ibus"
export XMODIFIERS="@im=ibus"
export QT_IM_MODULE="ibus"


3, Ibus 한글 설정

스크린샷과 같이 설정해 줍니다.

$ibus-setup


<< 별거 없습니다. 한글 설정하고 체크 설정만 하시면>>


<< 저거 체크하시는게 글쓰기가 쉬우실겁니다>>


$ibus-setup-hangul


<< 사실 아까 ibus-setup에서도 이 설정이 가능하긴 합니다 ^^ >>


4, 로그인시(또는 X진행시) 자동실행 하기

*box 같은경우는 autostart.sh 이런데 넣어주시거나..

~/.xinitrc에 넣어주시거나...

정 귀찮으면 ~/.bashrc, ~/.bash_prfile에 박아 두세요..


다음 라인을 추가합니다. (백그라운드 실행이므로, 스크립트 뒤 내용도 다 실행합니다!)

ibus-daemon -drx


5, urxvt에 한글입력기 붙이기

(GTK, QT 터미널을 쓰시는 경우(gnome-terminal이라던가)는 딱히 설정 안하셔도 무방합니다)


~/.Xdefaults 파일을 열고 다음을 추가합니다.

(ibus-daemon에 -drx가 추가되어야 아래 명령의 동작을 보장할수 있습니다!!)

URxvt*inputMethod: ibus
URxvt*preeditType: OnTheSpot
URxvt*imLocale: ko_KR.UTF-8


6, X 재시작

트레이에 ibus가 떠 있는지 확인합니다.



ps; 스샷으로 대충 때우니 포스팅 날로 먹는거 같은 느낌이 ㅋㅋㅋ

보기에도 왠지 쉬워보이고 좋은거 같네요





prev 1 2 3 4 5 6 ··· 69 next