개요
Kali Linux는 보안 테스트 및 침입 탐지에 널리 사용되는 리눅스 배포판이다. 최신 버전은 UEFI 부팅을 지원하지만, 기본 ISO 이미지는 직접적인 UEFI 설치를 제대로 처리하지 못할 수 있다. 이 문제를 해결하기 위해 하드디스크를 활용하고 EasyUEFI 같은 도구로 부트 항목을 수동으로 추가하면 UEFI 기반으로 정상 설치가 가능하다. 본 문서는 Kali Linux 2020.2 버전 기준으로 하드디스크만을 사용하여 UEFI 모드에서 설치하는 절차를 설명한다.
설치 전 준비
Windows 운영체제가 설치된 PC에서 USB나 DVD 없이 Kali를 설치하려면 다음이 필요하다:
- 충분한 여유 디스크 공간 (최소 20GB 추천)
- EasyUEFI 또는 유사한 UEFI 부트 관리자 도구
- Kali Linux 2020.2 amd64 ISO 다운로드 완료
단계별 설치 과정
- ISO 마운트 및 파일 추출
Windows에서 ISO를 마운트하거나 7-Zip 등으로 압축 해제 후, boot, EFI, live 폴더와 vmlinuz, initrd.gz 파일을 별도의 파티션(예: D:\kali_boot)에 복사.
- UEFI 부트 항목 생성
EasyUEFI를 실행하고 새로운 UEFI 부트 항목을 추가. 경로는 다음과 같이 설정:
bcdedit /set {bootmgr} path \EFI\BOOT\BOOTx64.EFI
또는 GUI에서 EFI 시스템 파티션 내 \EFI\BOOT\BOOTx64.EFI를 지정.
- 라이브 부팅 및 설치 시작
재시작 후 새로 생성된 UEFI 항목으로 부팅. Kali 라이브 환경 진입 후 설치 프로그램 실행.
- 파티션 설정
기존 윈도우와 듀얼 부트를 원하면 적절한 파티션을 할당 (예: /, /home, /persistence). ESP(EFI System Partition)가 존재하는지 확인하고, 없다면 FAT32 형식으로 512MB 이상의 파티션 생성.
- 부트로더 설치 오류 대응
설치 중 grub-efi-amd64 설치 실패 메시지가 나타날 수 있다. 이 경우 무시하고 계속 진행하며, 설치 완료 후 chroot 환경에서 수동으로 GRUB을 재설치.
GRUB 복구 절차
설치 후 부팅이 되지 않을 경우 아래 단계로 복구:
# 마운트 설정
mount /dev/sdaX /mnt # 루트 파티션 마운트
mount /dev/sdaY /mnt/boot/efi # EFI 파티션 마운트
# 필수 시스템 디렉터리 바인드 마운트
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
# chroot 진입
chroot /mnt
# GRUB 재설치
apt update
apt install --reinstall grub-efi-amd64
update-grub
# 종료
exit
reboot
네트워크 및 패키지 문제 해결
grub-efi-amd64 설치 실패 시 네트워크 연결과 소스 리스트를 점검해야 한다.
마운트 오류 해결: /cdrom 미접근
라이브 설치 중
/cdrom에 접근 불가 시, persistence 파티션이 자동 마운트되어 충돌할 수 있다.
umount /dev/sda7
mount /dev/sda7 /cdrom
실제 장치 이름은
lsblk 명령어로 확인 후 조정할 것.
입력기 설정 (중국어)
시스템 재시작 후 Fcitx 입력기를 활성화:
apt install fcitx fcitx-googlepinyin
GUI에서
Fcitx Configuration을 열고 "+" 버튼을 통해 Google Pinyin 추가.
영속성(Persistence) 설정
USB가 아닌 내장 디스크에서도 영속성 파티션을 구성 가능하다:
- FAT32 또는 ext4로 별도 파티션 생성
- 라벨을
persistence로 지정 (e2label /dev/sda7 persistence)
- 해당 파티션 루트에
persistence.conf 생성:
/ union
이후 부팅 시 커널 파라미터에
persistence 옵션 포함 필요.
32비트 라이브러리 지원 활성화
IDA Pro 등 32비트 애플리케이션 실행을 위해 멀티아키텍처 지원 활성화:
dpkg --add-architecture i386
apt update
apt dist-upgrade
필요한 32비트 라이브러리 설치 예시:
apt install \
libfreetype6:i386 \
libgcc1:i386 \
libglib2.0-0:i386 \
libstdc++6:i386 \
libx11-6:i386 \
libxext6:i386 \
libxrender1:i386 \
zlib1g:i386 \
libcurl4:i386 \
libxi6:i386 \
libdbus-1-3:i386
특정 라이브러리 누락 시, 64비트 패키지명으로 검색 후 아키텍처만 변경:
dpkg -S libfreetype.so.6 # 결과: libfreetype6:amd64
apt install libfreetype6:i386
참고: 시스템 정보 (Kali 2020.2)
Linux version 5.4.0-kali2-amd64 (devel@kali.org)
(gcc version 9.2.1 20200104 (Debian 9.2.1-22))
#1 SMP Debian 5.4.8-1kali1 (2020-01-06)