Search

USB 칼리리눅스 만드는법 정리

가상 환경에서 칼리, 우분투 등 리눅스를 많이 사용하는 편이지만 개인적으로 직접 해당 OS로 부팅해서 사용해야 할 일이 생겨 만들어 보았다.
물론 일회성 사용일 때는 Live로 사용해도 되지만, 개인적으로 USB를 사용하여 바로바로 나만의 환경이 구축된 칼리를 사용하면 더 좋을 거 같았다. Live는 다시 재부팅하면 모든 데이터가 초기화되기 때문이다. 그래서 나는 Live USB Persistence 버전으로 만들 것이다.
이 내용은 참고한 블로그와 거의 동일한 내용으로, 개인적으로 정리한 글입니다.

참고

목차

Kali 이미지 USB에 굽기

참고한 블로그에서 balenaEtcher 라는 프로그램을 쓰셨는데, 정말 편리했다.
프로그램 실행 후, 아래와 같은 순서로 사용한다.
[ Flash from file ] 버튼을 클릭하여 ISO 파일을 선택한다.
[ Select target ] 버튼을 클릭하여 USB를 선택한다.
[ Flash! ] 버튼을 클릭하면 자동으로 부팅 USB를 만들어준다.

USB 드라이브에 추가 파티션 생성 및 포맷

아래 작업은 리눅스에서 USB를 연결하여 작업해야한다.
VMWare에서 USB인식 시키기
[ VM ] 탭 → [ Removable Devices ] 탭 → USB 선택[ Connect ]
아래와 같이 창이 뜨는데, 그냥 OK 를 눌러준다.
USB 디스크 명을 확인
아래 명령어를 입력 후, USB의 용량으로 본인의 USB를 찾고 이름을 확인한다. 필자는 16G USB이며, 이름은 /dev/sdb 이다.
fdisk -l
Bash
복사
추가 파티션 생성
명령어에 사용될 칼리 iso 파일을 리눅스 서버로 옮겨주기 위해 ssh를 설치 & 실행한 후, iso 파일을 옮긴다.
apt-get update apt-get install -y apt-get install ssh -y service ssh start
Bash
복사
iso 파일을 명령어 실행 위치에 옮긴 후, 아래 명령어를 이용하여 추가 파티션을 생성해준후, 다시 fdisk -l 명령어로 파티션이 잘 생성되었는지 확인한다.
# 용량에 따라 다름 8G USB는 7GiB / 16G USB는 14GIB / 32G는 안해봤지만 # 아래 parted ~ 명령어가 실행이 되지 않는다면 조금씩 줄이며 맞추면 된다. # fdisk -l 명령어로 표시되는 사이즈를 넘어가지 않으면 될듯 함 end=14GiB # USB 이름을 잘 확인하여 명령어를 실행해야 함 # 필자는 fdisk -l 명령어로 이름이 /dev/sdb 인 것을 확인 read start _ < <(du -bcm kali-linux-2020.4-live-amd64.iso | tail -1); echo $start parted /dev/sdb mkpart primary ${start}MiB $end
Bash
복사
새롭게 생성한 파티션에 추가 설정
파티션에 ext3 파일 시스템을 생성하고 지속성에 레이블을 지정
# USB & 파티션 이름에 주의해서 사용 mkfs.ext3 -L persistence /dev/sdb3 e2label /dev/sdb3 persistence
Bash
복사
마운트 지점을 생성하고 새 파티션을 마운트한 다음 지속성을 사용하도록 구성 파일을 생성 후 마운트를 해체한다.
# USB & 파티션 이름에 주의해서 사용 mkdir -p /mnt/my_usb mount /dev/sdb3 /mnt/my_usb echo "/ union" > /mnt/my_usb/persistence.conf umount /dev/sdb3
Bash
복사
이제 USB로 부팅하면 칼리를 사용할 수 있다!!

한국어 패치

개인적으로 칼리에서 한글을 쓸일이 많이 없긴 하지만, 초기 상태일 때는 글자가 깨지거나 한글입력이 불가능하다.
필수는 아니지만 한글도 사용할 수 있도록 몇가지 설정을 해줄것이다.
패키지 설치
입력기와 한글 폰트를 설치해준다.
sudo apt update sudo apt install -y fcitx-lib* fcitx-hangul fonts-nanum*
Bash
복사
설치 후, 아래 명령어로 재부팅 시켜준다.
재부팅을 해주지 않으면 설정이 불가하므로 반드시 패키지 설치 후 한번 재부팅 해준다.
sudo reboot
Bash
복사
재 부팅을 완료한 후, 칼리리눅스 아이콘을 클릭하면 보여지는 메뉴에서 "input" 을 검색한다. 검색 결과에서 [ input Method ] 탭을 클릭한다.
이후 보여지는 화면은 전부 OK / Yes 등으로 넘긴다.
이후 사용할 입력기를 [ fcitx ] 로 선택한 후, [ OK ] 버튼을 클릭한다.
다시 검색창으로 돌아와 "fcitx" 를 검색한 후, [ Fcitx Configuration ] 탭을 클릭한다.
하단의 [ + ] 버튼을 클릭한다.
만약 리스트에 아무것도 없는 경우, 패키지 설치 후 리부팅을 하지 않았을 가능성이 크다. 이와 같은 경우, 재부팅을 다시 해보거나 패키지를 다시 설치하면 대부분 해결된다.
[ Only Show Current Language ] 항목을 체크 해제 한 후, "hangul" 을 검색하여 한국어를 선택한 뒤 [ OK ] 버튼을 눌러 적용한다.
상단의 [ Global Config ] 탭을 클릭한 뒤, [ Trigger Input Method ] 항목의 [ Empty ] 버튼을 클릭한다.
[ Empty ] 버튼을 클릭하면 사용할 버튼을 눌르라는 문구가 나온다. 이때 한/영 버튼을 눌러준다. 이 과정으로 한/영 버튼을 우리가 원하는 영어 한글 기능으로 사용할 수 있게 되었다.
한글 입력 가능 & 한글 정상 출력 확인
커맨드 창에서도 한/영 버튼을 사용하여 정상적으로 한글을 입력할 수 있고, 한글이 작성되어 있는 사이트에 접속하여도 한글이 깨지지 않는 것을 확인할 수 있다.