dd 사용해서 이미지 백업/복원하기

😢 이 페이지는 다음 주소로 변경될 예정입니다.

윈도 머신이 잠시 필요해서 lubuntu를 설치한 컴퓨터를 다시 Windows로 복구했다. Lubuntu로 밀기 전에 dd 명령으로 이미지를 백업해뒀는데 과정을 따로 기록해두질 않아서 삽질을 좀 하게 되었다. 그래서 이번에는 안전하게 잊을 수 있도록 기록을 남긴다.

윈도 이미지 만들면서도 이게 괜찮은 방법인지는 반신반의 했는데 일단 복원까지 하는데 성공했으니 별 문제는 없는 것 같다. 일단 내 노트북은 32GB 밖에 되지 않아서 저장용도 usb stick을 사용했다.

준비물

  • 부팅용 USB
  • 이미지 저장 및 복원용 USB

준비 과정

준비 작업은 맥에서 진행했다. 이미지 저장 및 복원용 USB는 exFat으로 포맷한다. 맥과 리눅스에서 모두 사용할 수 있는 형식이고 용량 문제도 없다. Disk Utility 에서 포맷할 수 있다.

남은 작업을 편하게 하기 위해 ubuntu live usb를 만든다. 여기서는 설치에 사용했던 lubuntu 이미지를 사용했다.

$ hdiutil convert -format UDRW -o /path/to/lubuntu-15.10-desktop-amd64 lubuntu-15.10-desktop-amd64.iso

이렇게 변환하면 lubuntu-15.10-desktop-amd64.dmg 파일이 생성된다. 이제 live usb를 연결하고 해당 usb의 경로를 다음 명령으로 확인한다.

$ diskutil list

출력 결과에서 용량이나 명칭으로 드라이버를 확인한다. 만약 마운트가 되어 있는 상태라면 diskutil unmountDisk /dev/diskN으로 마운트를 해제한다.

$ diskutil unmountDisk /dev/disk3

이제 usb에 이미지를 덮어 쓴다.

$ sudo dd if=/path/to/lubuntu-15.10-desktop-amd64.dmg of=/dev/rdisk3 bs=1m

입력이 모두 완료되면 맥에서 드라이브를 읽을 수 없다는 오류가 뜨는데 정상이며 Eject를 누르면 과정이 끝난다.

백업 및 복원 과정

이제 usb를 사용해서 부팅을 한다. usb로 부팅이 되지 않는다면 BIOS에서 부팅 순위를 확인한다. USB를 꼽고 부팅을 하면 Try Lubuntu 메시지를 선택해서 lubuntu를 켠다.

마우스와 키보드가 잘 작동하면 다음 단계로 넘어가면 된다. 블루투스 마우스의 경우에는 Win + R 키로 실행 창을 띄운 후, blueman-manager를 입력해서 실행한다. 그러면 관리자 창이 뜨는데 탭 키와 방향키를 잘 사용해서 마우스를 연결하면 된다.

마우스가 잘 되면 네트워크 관리자에서 wifi를 연결한다. 시작 상태 막대 끝에 아이콘을 활용한다. 그리고 exfat을 사용할 수 있도록 패키지를 설치한다.

$ sudo apt-get install exfat-utils exfat-fuse

백업할 드라이브 경로를 디스크 목록에서 찾는다.

$ sudo fdisk -l

이제 컴퓨터에 이미지 저장용 USB를 꼽는다. 앞서 dd와 같이 백업할 드라이브를 지정하고 저장할 경로를 지정하면 이미지로 백업하게 된다. 현재 저장되어 있는 OS가 무엇인지 상관없이 전체를 백업하게 된다.

$ sudo dd if=/dev/sdb of=/media/lubuntu/backup/backup.img bs=1m

복원은 반대로 하면 된다. 대신, 이미지를 덮기 전에 마운트 해제가 정상적으로 되어 있는지 확인한다. 숫자를 착각하거나 경로를 잘못 읽어서 엉뚱한 드라이버를 덮지 않도록 조심한다.

$ sudo mount # 명령으로 마운트를 확인, 마운트되어 있다면 아래 명령으로 언마운트
$ sudo umount /media/lubuntu/main
$ sudo dd if=/media/lubuntu/backup/backup.img of=/dev/sdb bs=1m

드라이브를 통채로 떴기 때문에 MBP나 UEFI 같은건 따로 안잡아줘도 되는 것 같다.

진행 상황 확인하기

dd 진행 상황을 확인하기 위해서는 status 플래그를 넣으면 된다는데 dd 버전마다 달라서 되는 경우도 있고 안되는 경우도 있다. pv를 설치하는 방법이 간편하다.

$ sudo apt-get install pv
$ sudo -i # 귀찮으니 root로 전환
$ dd if=/media/lubuntu/backup/backup.img | pv | dd of=/dev/sdb bs=1m

lubuntu 환경 설정 변경 기록

😢 이 페이지는 다음 주소로 변경될 예정입니다.

이전까지는 lubuntu에 있던 xterm을 비트맵이 정겨워서 그냥 사용했는데 특수 기호를 표시하는데 불편함이 있어서 터미널을 변경하며 손 본 기록을 남긴다. 지금 사용하는 환경은 별 특별한 내용 없이 기본 lubuntu 설치 상태다.

gnome-terminal 설치

다른 터미널 다 살펴봤는데 우분투 기본 터미널인 gnome-terminal 쓰기로 했다. lubuntu에서 제공하는 lxterminal은 별로 안이쁘다.

$ sudo apt-get install gnome-terminal

시작할 때 터미널 기본 시작

전체화면을 위한 플래그 셋, 그리고 시작 후에 터미널에서 tmux를 실행하도록 작성했다. 동일한 내용으로 /usr/local/binterminal 스크립트를 추가했다.

#!/bin/bash
gnome-terminal --window --hide-menubar --full-screen -e tmux

시작 -> 기본 설정 -> Default Applications for LXSession 들어가서 autostart에 terminal을 추가했다.

기본 IM와 연동되도록 플러그인 설치 fcitx.vim

Lubuntu에는 Fcitx-IM가 기본 IME다. Vim에서 모드를 전환하는 경우에 영문 자판이 아니면 매번 한영전환을 해야 하는 번거로움이 있는데 이 fcitx.vim 플러그인이 그 해결책이다. 이 플러그인은 Vim에서 모드를 전환하면 영문으로 전환하고 다시 끼워 넣기 모드로 돌아올 때, 이전 언어로 자판을 변경한다.

fcitx.vim 받아서 ~/.vim/plugin에 해제하면 끝난다.


그 외 터미널 시작 시에 메시지를 넣었는데 별 내용 없이 .zshrcecho로 넣었다. 분실 연락처 정도 넣었다. 아직 Vim을 사용해야 해서 아직 neovim으로 넘어가지 않았는데 얼른 하는 일 마무리하고 넘어가고 싶다. 이상하게 nvm이 터미널 시작을 느리게 만들어서 일단 주석 처리 해뒀다. 조만간 다시 확인해봐야겠다.

오랜만에 깔끔한 폰트로 터미널을 사용하니 또 새롭다. 바쁜 일을 좀 정리한 후에는 환경을 좀 더 꾸며보고 싶다.

Lubuntu에서 우측 Alt키를 한영 전환키로 설정하기

😢 이 페이지는 다음 주소로 변경될 예정입니다.

맥 환경을 사용할 때는 Ctrl + Space를 사용하고 있지만 지금 lubuntu를 설치해서 사용하는 노트북은 키보드 사이즈가 작은 문제인지 Ctrl + Space가 손에 잘 익지 않았다. 그래서 한영 전환키로 우측 Alt 키를 배정해서 사용하고 있었는데 작성하다보면 변경이 되었다 말았다 하는 문제가 있었다. 단순히 입력기 문제라고 생각하고 있었는데 Alt키의 기본 동작이 동시에 나타나는 문제였다.

lubuntu는 xkb를 통해 키보드 맵핑을 처리하고 있다. /usr/share/X11/xkb/symbols/altwin을 열어서 다음 부분을 확인한다.

$ sudo vim /usr/share/X11/xkb/symbols/altwin
// Meta is mapped to second level of Alt keys.
partial modifier_keys
xkb_symbols "meta_alt" {
    key <LALT> { [ Alt_L, Meta_L ] };
    key <RALT> { type[Group1] = "TWO_LEVEL",
                 symbols[Group1] = [ Alt_R, Meta_R ] };
    modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
//  modifier_map Mod4 {};
};

RALT 즉, 우측 Alt키에 Alt_R, Meta_R이 배정된 것을 확인할 수 있다. 이 키의 키맵을 아래와 같이 Hangul로 변경한다.

// Meta is mapped to second level of Alt keys.
partial modifier_keys
xkb_symbols "meta_alt" {
    key <LALT> { [ Alt_L, Meta_L ] };
    key <RALT> { type[Group1] = "TWO_LEVEL",
                 symbols[Group1] = [ Hangul ] };
    modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
//  modifier_map Mod4 {};
};

키맵 설정은 컴파일 과정을 거쳐 /var/lib/xkb 위치에 xkm 파일로 저장되어 있다. 해당 파일을 제거한다. 제거하면 위에서 변경한 설정을 반영한 새로운 파일을 생성할 준비가 끝난다.

$ sudo rm /var/lib/xkb/*.xkm

이제 로그아웃, 로그인을 다시 해서 위에서 제거한 파일을 다시 생성한다. 오른쪽 Alt키가 Hangul키로 변경 된다. 한글 입력기에서 한영 전환키를 다시 설정하면 RALT 대신 Hangul 키로 잡히고 이제 입력이 올바르게 잘 동작하는 것을 확인할 수 있다.