그냥 기본제공 프로그램 종류가 무엇이냐 정도의 차이일 뿐, 무엇이 더 좋다거나 같은 우열은 없어요.

어느 리눅스를 선택하든 그냥 본인이 필요한 프로그램 깔아서 쓰면 돼요. 해킹 특화 리눅스일 필요도 없어요.


칼리 리눅스 (Kali Linux)

데비안을 기반으로 만들어진 가장 유명한 모의 침투 테스트용 리눅스 배포판이에요.

기본 테스크톱 환경으로 xfce를 지원해요.

 

 

리눅스가 뭔지도 모르면서 칼리리눅스만 알고 있는 하찮고 미개한 툴키디들도 많아요.

가상머신이 무엇인지도 몰라서, 가상머신 안에 설치해둔 칼리리눅스를 그냥 윈도우에서 실행 가능한 프로그램이라고 착각해요.

 

 

칼리리눅스는 백트랙의 후속작인데, 백트랙은 요즘에 나오는 컴퓨터에서 작동하지 않으니 그냥 칼리리눅스 쓰세요.

방어 특화 버전인 칼리 퍼플이라는 것도 있어요.

 

다운로드 : https://www.kali.org/get-kali/

 

Get Kali | Kali Linux

Home of Kali Linux, an Advanced Penetration Testing Linux distribution used for Penetration Testing, Ethical Hacking and network security assessments.

www.kali.org

 

블랙아치 리눅스 (BlackArch Linux)

아치리눅스를 기반으로 만들어진 사이버 보안 및 해킹에 초점을 맞춘 리눅스 배포판이에요.

slim 버전과 full 버전이 있어요. 아래 사진은 데스크톱 환경으로 xfce를 사용하는 slim 버전의 모습

 

이건 full 버전의 모습. 창 관리자로 fluxbox를 사용해요. fluxbox 말고 다른 창 관리자도 지원하지만, 생긴 모습은 그게 그거에요.

 

 

아무것도 없는 것처럼 생겼지만, 바탕화면에 마우스 오른쪽 클릭을 하면 메뉴가 나와요.

 

홈페이지에 2800개가 넘는 해킹툴을 지원한다는 소개 문구가 있는데,

 

하위메뉴에 저런식으로 한 가득 들어있는 경우가 많은 것을 보면, 진짜인 것 같아요.

 

다운로드 : https://blackarch.org/downloads.html

 

Download BlackArch

Here you will find official BlackArch Linux downloads and installation instructions. ISOs The following list contains official BlackArch full, slim and netinstall ISO images. You can burn these images to DVDs and flashdrives. The full ISO contains a comple

blackarch.org

 

패럿 OS (Parrot OS)

데비안을 기반으로 하는 보안과 프로그래밍에 중심을 둔 리눅스 배포판이에요.

 

기본 테스크톱 환경으로 MATE를 지원해요. 여기서 MATE는 "마테"라고 읽어요. 마테나무에서 따온 명칭

 

프로그래밍 목적도 있어서 그런지, 일단 프로그래밍이라는 메뉴도 보이긴 해요.

 

다운로드 : https://parrotsec.org/download/

 

Parrot Security

This website is a safe place, we respect your privacy enough to skip the cookies and go straight to the content. Accept

parrotsec.org

 

페도라 보안 랩 (Fedora Security Lab)

보안 감사, 시스템 복구 등과 관련된 교육을 수행할 수 있는 안전한 테스트 환경을 제공하는 리눅스 배포판이에요.

 

 

GNOME을 사용하는 패도라 워크스테이션과는 달리, 기본 테스크톱 환경으로 xfce를 사용해요.

 

 

페도라 스핀이라는 이름으로 여러가지 페도라 배포판들이 있는데 그것들 중 하나에요.

 

다운로드 : https://fedoraproject.org/labs/security

 

Fedora Security Lab

The Fedora Security Lab provides a safe test environment to work on security auditing, forensics, system rescue and teaching security testing methodologies in universities and other organizations. The spin is maintained by a community of security testers a

fedoraproject.org

 

펜투 리눅스 (Pentoo Linux)

젠투 리눅스를 기반으로 만들어진 시스텝 보안 점검 및 취약점 분석을 위해 만들어진 리눅스 배포판이에요.

 

 

젠투는 어쩐지 모르겠지만, 펜투는 기본 테스크톱 환경으로 xfce를 지원해요.

최초 실행시 위와 같은 화면이 나오고, 계정 이름이 pentoo라는 것을 알려준 뒤에 라이브 부팅 도중에 사용할 비밀번호를 입력하라고 해요.

그 뒤에 X를 시작할거냐고 물어볼텐데, 실행하겠다고 하면 이런식으로 GUI 환경이 나올거에요.

 

이것저것 아무거나 실행해본 모습

 

 

펜투 리눅스가 기반으로 하는 젠투 리눅스의 경우, 완성된 프로그램을 받아서 설치하는 것이 아닌, 소스코드를 받아서 기계어로 번역해서 설치하는 방법을 사용해요.

리눅스도 프로그램이니, 리눅스 그 자체도 소스코드로 받아서 기계어로 번역하는 방식으로 설치되는데, 펜투 리눅스는 다른 리눅스들처럼 평범하게 설치 가능한 듯.

 

다운로드 : https://www.pentoo.ch/downloads

 

Pentoo

Pentoo is a Live CD and Live USB designed for penetration testing and security assessment. Based off Gentoo Linux, Pentoo is provided both as 32 and 64 bit installable livecd.

www.pentoo.ch

 

어차피 펜투 사용할 뵨태들은 저보다 더 잘 알겠지만, 파일 이름에 core가 들어간 .iso 파일들은 GUI 환경이 나오지 않고 startx 명령어도 작동하지 않으니 참고하세요.


라이브 부팅 중 계정 이름과 비밀번호

  계정 이름 비밀번호
Kali Linux kali kali
BlackArch Linux (slim) liveuser blackarch
BlackArch Linux (full) root blackarch
Parrot OS user parrot
Fedora Security Lab liveuser, root 없음
Pentoo Linux pentoo 라이브 부팅 시점에 사용자가 직접 설정

 


grub에서 SSD에 넣어둔 .iso 파일을 바로 부팅하는 법

예전에는 칼리리눅스도 깔아놓고 막 어둡게 커스터마이징하고 그랬는데, 어차피 쓰지도 않고 용량만 차지해서 지워버린 상태에요.

완전히 없애버리기는 뭔가 아쉬워서 SSD에 .iso 파일을 넣어두고, 이미 깔려있는 grub에서 라이브 부팅이 바로 가능하도록 설정했어요.

 

글을 올리는 김에 이 글에서 소개한 리눅스 5가지를 grub에 넣는 것을 살짝 다루어볼까 해요.

참고로, grub는 리눅스 등에서 사용하는 부트로더에요.

 

일단 전 최상위경로 바로 아래에 liveiso라는 폴더를 만들고, 그 안에 .iso 파일들을 넣어두었어요.

윈도우 파티션에 넣어두어도 상관은 없지만, 파일 시스템이 NTFS라서 정상적으로 부팅되지 않을 수도 있어요.

 

 

그리고 /etc/grub.d/ 폴더에 있는 40_custom 파일을 수정하면, grub에 보여질 목록을 편집할 수 있어요.

 

 

일단 저는 다 적어놓았으니, 필요한 부분만 뽑아가서 사용하세요.

 

 

40_custom 파일 내용. 배포판마다 적어야 할 내용이 조금씩 다르거나 아예 달라요.

위에서 찍은 리눅스 스크린샷들은 전부 grub에서 바로 .iso 파일을 라이브 부팅하는 것을 성공한 뒤에 찍은 것들이에요.

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Kali Linux 2025.2" {
    insmod ext2
    set isofile="/liveiso/kali-linux-2025.2-live-amd64.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/live/vmlinuz boot=live findiso=$isofile
    initrd (loop)/live/initrd.img
}
menuentry "BlackArch Linux slim" {
    insmod ext2
    set isofile="/liveiso/blackarch-linux-slim-2023.05.01-x86_64.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/blackarch/boot/x86_64/vmlinuz-linux archisolabel=BLACKARCH_20305 img_dev=/dev/nvme0n1p4 img_loop=$isofile earlymodules=loop archisobasedir=blackarch
    initrd (loop)/blackarch/boot/x86_64/initramfs-linux.img
}
menuentry "BlackArch Linux full" {
    insmod ext2
    set isofile="/liveiso/blackarch-linux-full-2023.04.01-x86_64.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/blackarch/boot/x86_64/vmlinuz-linux archisolabel=BLACKARCH_20304 img_dev=/dev/nvme0n1p4 img_loop=$isofile earlymodules=loop archisobasedir=blackarch
    initrd (loop)/blackarch/boot/x86_64/initramfs-linux.img
}
menuentry "Parrot Security 6.4" {
    insmod ext2
    set isofile="/liveiso/Parrot-security-6.4_amd64.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/live/vmlinuz boot=live findiso=$isofile
    initrd (loop)/live/initrd.img
}
menuentry "Fedora Security 42-1.1" {
    insmod ext2
    set isofile="/liveiso/Fedora-Security-Live-x86_64-42-1.1.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/images/pxeboot/vmlinuz root=live:CDLABEL=Fedora-Sec-Live-42-1-1 rd.live.image verbose iso-scan/filename=$isofile
    initrd (loop)/images/pxeboot/initrd.img
}
menuentry "Pentoo 2024" {
    set isofile="/liveiso/pentoo-x86-hardened-2024.0_p20240111.iso"
    loopback loop (hd0,gpt4)$isofile
    linux (loop)/boot/pentoo init=/linuxrc nogui nox nodhcp secureconsole overlayfs max_loop=256 dokeymap video=uvesafb:mtrr:3,ywrap,1024x768-16 console=tty0 net.ifnames=0 scsi_mod.use_blk_mq=1 ipv6.autoconf=0 usbcore.usbfs_memory_mb=0 looptype=squashfs loop=/image.squashfs cdroot isoboot=$isofile
    initrd (loop)/boot/pentoo.igz
}

 

 

set isofile="/liveiso/어쩌고저쩌고.iso" 부분은 .iso 파일이 있는 위치에요.

 

(hd0,gpt4) 부분은 파티션이에요. (디스크,파티션)

중간에 /dev/nvme0n1p4 같은 방식으로 적어야 하는 경우도 있어요

 

archisolabel=BLACKARCH_20305 와 같이 .iso 파일을 마운트하면 보이는 이름을 적어야하는 경우도 있어요.

윈도우에서 마운트하면 보이는 내용을 적으면 돼요.

 

root=live:CDLABEL=Fedora-Sec-Live-42-1-1 같이 파일명을 한 글자만 다르게 수정해서 적어야 하는 경우도 있어요.

 

사실 .iso 파일 안에 있는 grub.cfg 파일 같은 것을 찾아서 그 안에 적힌 내용을 컨닝하면 해결

적당히 파일 경로와 파티션 위치 등을 적어놓으면 대부분 다 잘 작동해요.

 

menuentry "Kali Linux 2025.2" --class kali {

와 같이 뒤에 --class 어쩌고를 적으면, 테마가 적용된 grub에서 그에 맞는 아이콘이 나올거에요.

 

아무튼 "sudo update-grub"나 "sudo grub-mkconfig -o /boot/grub/grub.cfg" 같은 명령어를 통해 수정한 내용을 grub에 반영시킨 뒤에 재부팅하면 이런식으로 아래에 추가된 것을 볼 수 있을거에요.

 

 

40_custom에서 앞에 40이 실행 순서이니, 파일 이름에 적힌 숫자를 바꾸면 다른 위치에 추가시킬 수도 있어요.

하위메뉴를 만들고 그 안에 넣는 방법도 있으니 원한다면 한 번 찾아보세요.

 

저런식으로 메뉴에 추가해놓는다는 뜻은 "내 컴퓨터를 사용하는 모든 사람에게 루트 권한을 주는 것"과 다를 바 없어요.

누구나 라이브 부팅을 통해 루트 계정으로 로그인 가능한 리눅스를 부팅할 수 있기 때문.

그러니 능력것 막아보세요. 저는 grub 자체에 비밀번호를 걸어두고, 설치된 운영체제를 부팅하는 경우만 예외로 빼두었어요.

다음 명령어를 통해 배경화면을 바꿀 수 있어요.

$ hsetroot -full 파일경로

 

 

하지만 모니터의 해상도가 이미지의 해상도와 다르면 이런식으로 일부분이 검은색으로 되는데,

 

 

-full 대신 -cover를 사용하면

$ hsetroot -cover 파일경로

 

 

이미지의 중심을 기준으로 알아서 확대되면서 보기 좋게 맞춰져요.

 

윈도우에서 배경화면을 설정했을 때와 동일

다 아는 내용이라면 그냥 깃허브로 가시면 됩니다.

설치 방법이랑 웹에서 바로 볼 수 있는 데모 등 다 깃허브에 있어요.

https://github.com/sinz32/SinB-LightDM

 

GitHub - sinz32/SinB-LightDM: GFRIEND/VIVIS SinB Theme for lightdm-nody-greeter

GFRIEND/VIVIS SinB Theme for lightdm-nody-greeter. Contribute to sinz32/SinB-LightDM development by creating an account on GitHub.

github.com


리눅스에는 디스플레이 매니저라는 것이 있어요.

일반적인 사용자들에게는 그냥 컴퓨터 로그인 화면 정도로 보이지만, 그거 말고도 이런저런 기능들이 있어요.

 

디스플레이 매니저에는 GDM, SDDM, LightDM, LXDM, SliM 등 여러가지가 있는데, 저는 LightDM을 사용하고 있어요.

디스플레이 매니저의 유저 인터페이스를 greeter라고 부르는데, LightDM을 설치했다면 아마 대충 이렇게 생긴 lightdm-gtk-greeter라는 것을 사용하고 있을거예요.

lightdm-gtk-greeter

 

저거 말고도 웹 기반으로 만들어진 lightdm-webkit2-greeter, web-greeter, nody-greeter 등이 존재해요.

저는 직접 만든 여자친구 신비 LightDM 테마 적용을 위해, nody-greeter를 설치해서 lightdm-gtk-greeter 대신 사용하고 있어요.


리눅스 LightDM 여자친구/VIVIZ 신비 로그인 테마

이렇게 생겼어요. 배경 사진은 3년 전 비비지 활동 모습. 꽃

 

로컬 계정 이름이 적힌 부분을 클릭하면 나오는 계정 목록에서 계정을 선택한 뒤에, 비밀번호 입력란에 비밀번호를 입력한 후 엔터를 치면 로그인 가능

 

오른쪽 위에 있는 Power 버튼을 누르면 재부팅이나 시스템 종료가 가능하고,

 

 

그 옆에 있는 데스크톱 환경 이름을 누르면, 데스크톱 환경이나 창 관리자로 로그인할지 선택할 수 있어요.

 

테마 미리보기

다음 링크에서 미리 사용해볼 수 있어요. 16:9 FullHD 모니터를 기준으로 만들어진 테마에요.

해당 화면 비율을 가진 가진 모니터에서 전체화면을 하면 실제 적용 모습을 볼 수 있을거예요.

https://sinz32.github.io/SinB-LightDM/

 

SinB LightDM

 

sinz32.github.io

 

테마 설치 준비

일단 LightDM을 사용하지 않고 있다면, LightDM을 먼저 설치해야 해요.

다음 명령어들 중 본인 리눅스 배포판에 맞는 명령어로 설치해주세요. 이미 설치되어 있다면 최신버전으로 업데이트되거나, 사실상 아무 일도 일어나지 않을거예요.

# 데비안 계열 (우분투, 리눅스민트, 하모니카, 칼리리눅스 등)
$ sudo apt-get install lightdm

# 페도라 계열 (레드햇 등)
$ sudo dnf install lightdm lightdm-gtk

# 아치 계열 (만자로, 엔데버 등)
$ sudo pacman -S lightdm lightdm-gtk-greeter

 

그리고 이미 사용 중인 디스플레이매니저를 비활성화시키고, LightDM을 활성화시켜주세요.

$ sudo systemctl disable 기존에사용중이던디스플레이매니저
$ sudo systemctl enable lightdm

 

만약 그냥 우분투를 받아서 쓰고 계신다면 GDM을 사용 중이실 것이니, "sudo systemctl disable gdm"을 입력하시면 될거예요.

gdm, sddm, lxdm 등 다 적어보시면 뭐 하나는 걸릴 듯

 

그리고 이제 nody-greeter를 먼저 설치해야 해요.

설치 방법 및 설치에 필요한 요소는 해당 프로그램을 만든 개발자의 깃허브에 적혀있으니, 깃허브 참고

https://github.com/JezerM/nody-greeter

 

GitHub - JezerM/nody-greeter: LightDM greeter that allows to create wonderful themes with web technologies. Made in Node.js

LightDM greeter that allows to create wonderful themes with web technologies. Made in Node.js - JezerM/nody-greeter

github.com

 

 

테마 설치

다음과 같은 순서에요. 굳이 명령어로 하실 필요는 없고, 파일 관리자 같은 것을 열어서 직접 옮기시거나 해도 상관은 없어요.

 

1. 내 깃허브에 있는 테마 파일들을 컴퓨터로 복사

2. 복사한 파일들을, LightDM 테마들이 저장되는 폴더로 이동

 

$ git clone https://github.com/sinz32/SinB-LightDM
$ sudo mv SinB-LightDM /usr/share/web-greeter/themes/

 

3. nody-greeter가 해당 테마를 사용하도록 설정

 - "/etc/lightdm/web-greeter.yml" 파일을 열어서 "theme: ???" 부분에 테마 이름 작성

greeter:
    debug_mode: False
    detect_theme_errors: True
    screensaver_timeout: 0
    secure_mode: True
    theme: SinB-LightDM
    icon_theme:
    time_language:

 

4. LightDM이 nody-greeter를 greeter로 사용하도록 설정

 - "/etc/lightdm/lightdm.conf" 파일을 수정해서 nody-greeter를 사용하도록 설정해주세요.

 - 앞에 적힌 #이 주석을 의미하니, greeter-session=lightdm-gtk-greeter 앞에 #을 붙여서 주석처리하고, greeter-session=nody-greeter 앞에 있는 #을 지워서 주석을 해제하면 돼요.

 - greeter-session=nody-greeter라는 문구가 없다면 그냥 직접 적으시면 돼요.

 

사실 깃허브에는 4가 누락되어 있긴 한데, 오늘은 커밋을 하지 않는 날이니 최소 4일 뒤에 수정할 것 같네요.

 

아무튼 이제 컴퓨터를 재부팅하거나, lightdm을 재실행하면 테마가 적용된 모습을 볼 수 있을거예요.

 

뭐 어디가 이상하게 꼬이거나 해서 로그인을 못하게 되었다면, "Ctrl + Alt + F2"와 같은 단축키를 사용해서 CLI 환경으로 들어가서 바꾼 설정을 되돌리면 돼요.

원래 LightDM을 사용하지 않고 있었다면, CLI 환경에서 systemctl 명령어로 lightdm 비활성화 후 기존 디스플레이 매니저 활성화 후 재부팅

기존에 LightDM을 사용하고 있었다면, CLI 환경에서 vim 등으로 파일을 열어서 다시 lightdm-gtk-greeter를 사용하도록 변경 후 재부팅


VIVIZ 신비 배경화면

유입경로를 보니, 그냥 비비지 배경화면 찾으시는 분들도 보여서 저 배경 이미지도 따로 올려둡니다

이미지에 우클릭해서 저장하면 해상도가 엉망인 상태로 저장되니, 파일로 올려둔 걸로 받아가세요. 16:9 비율은 아니에요.

VIVIZ_신비_꽃_배경화면.jpg
7.53MB

 

 

신비가 비비지로 활동할 때 찍었던 사진이라, 여자친구가 아니라 비비지라고 적었어요.

팬카페에 올라온 커버곡 꽃 활동 사진

당분간은 깃허브에 커밋을 올리지 않는 날이니, 아마 다음 주 수요일에 공유할 것 같아요.

 

 

아무튼 신비 귀여움

BlackBox라는 창 관리자가 있었는데, 저걸 기반으로 Fluxbox와 Openbox가 만들어졌어요.

Openbox는 사실상 다시 새로 만들어진 상태라 더 이상 BlackBox 시절의 소스코드는 남아있지 않구요.

 

아무튼 전 Fluxbox를 사용할거예요. 멀쩡한 환경을 원하신다면 KDE Plasma 등을 사용하는 것을 권장해요.

여기서 하나하나 다 수동으로 설정하는 것들은 Plasma와 같은 데스크톱 환경을 사용한다면 자동으로 다 될거예요.

 

그냥 간단하게 설치하고 디자인이 예쁜 편리한 GUI 환경을 원하신다면 KDE Plasma 사용을 추천해요

설치 방법 : https://sinzdev.tistory.com/3

 

ArchLinux에 KDE Plasma 설치 (데스크톱 환경)

보시다싶이, 아치리치눅스만 설치하면 검은 화면에 하얀 글자만 있는 환경이 끝이에요.아치리눅스는 없어도 되는 것들은 전부 없애버리는데, GUI도 굳이 있을 필요는 없으니 없애버렸기 때문.

sinzdev.tistory.com

 

 

Fluxbox 설치하기

$ sudo pacman -S fluxbox xorg-server xorg-xinit xterm

 

xorg-server는 GUI 환경 사용을 위해 설치,

xorg-xinit은 startx 명령어 사용을 위해 설치

xterm은 터미널. fluxbox를 설치하면 터미널은 함께 설치되지 않고, 다음다음 사진처럼 startx를 하면 xterm이 3개 열리는지라, xterm이 없으면 오류가 뜨기 때문에 설치

 

아무튼 이제 로그인을 한 뒤에 startx를 입력하면,

 

이런식으로 터미널이 3개 나올텐데, 저기서 아무 터미널에 exec startfluxbox를 입력하면

 

 

이렇게 fluxbox를 사용할 수 있어요. 문제는 저 터미널들 중 하나를 닫으면 fluxbox도 같이 꺼져요.

 

로그인 화면 만들기

slim이라는 몹시 가벼운 DisplayManager도 있다고 들었는데, 전 그냥 전부터 사용하던 lightdm을 사용할거예요.

$ sudo pacman -S lightdm lightdm-gtk-greeter
$ sudo systemctl enable lightdm

 

 

이제 재부팅을 및 리눅스로 부팅하면 이런 로그인 화면이 나오고,

 

로그인을 하면 정상적으로 실행된 듯한 fluxbox가 나올거예요.

 

 

바탕화면 아무 곳에다가 마우스 오른쪽 클릭을 해서 메뉴를 열 수 있어요.

 

웹 브라우저 설치

분명 메뉴에 웹 브라우저인 firefox가 있는데, 눌러도 안켜질거예요. 이건 파이어폭스를 설치하지 않았기 때문이에요.

터미널(xterm)을 열어서 pacman -S firefox 명령어로 파이어폭스를 설치하면,

 

설치가 완료되어도 파이어폭스는 안켜질거예요. 사실 저 부분은 비어있기 때문.

그러니 vim .fluxbox/menu 명령어 등을 통해 메뉴를 구성하고 있는 파일을 열어서, 아래와 같이 적힌 부분을

[exec] (firefox) {}

 

 

아래와 같이 바꾸시면, 파이어폭스가 열릴거예요

[exec] (firefox) {firefox}

 

 

a 키를 눌러서 편집모드 진입, 내용 수정 후 ESC 키를 눌러서 편집모드 탈출, :wq 입력 후 엔터를 입력하여 저장 및 닫기

 

 

그냥 직감적으로 알 수 있는 것처럼

[exec] (메뉴에 보일 내용) {실행할 내용}

같은 구조에요.

 

아무튼 이제 파이어폭스가 잘 실행되네요.

 

파일 탐색기 설치

Gentoo 쪽에서는 thunar를 추천하던데, 전 평소에 사용하던 nemo를 사용할거예요.

$ sudo pacman -S nemo

 

설치 완료 후 터미널에 nemo를 입력하면 잘 켜지네요.

 

 

텍스트 편집기 설치

 

 

leafpad가 몹시 가볍다고 들었어요.

$ sudo pacman -S leafpad

 

 

물론 전 예전부터 사용하던 xed를 사용할거예요. 왼쪽은 xed, 오른쪽은 leafpad.

xed 설치는 sudo pacman -S xed로 가능

 

 

와 드디어 vim 탈출이다. .fluxbox 폴더에 있는 menu 파일을 수정해서 nemo와 xed를 추가했어요.

 

인터넷 연결 설정

nmtui를 사용하면 와이파이 연결 등이 가능한 화면이 출력되니, menu 파일에 nmtui를 추가했어요.

메뉴에 이것저것 추가한 것 최종본은 나중에 올릴 계획

 

시스템 종료 메뉴 등 추가

로그아웃은 이미 있으니 일단 그대로 복사 붙여넣기하고, 재부팅은 restart, 시스템 종료는 halt -p 명령어로 추가했어요.

halt 명령어만 사용하면 시스템만 끄고 기기 전원은 끄지 않는지라, 뒤에 -p까지 적어주어야 해요.

shutdown 명령어로도 끌 수 있지만, 일부 환경에서는 작동하지 않으니 참고

화면 해상도 조절

xrandr로 화면 해상도 조절이 가능하니 참고. 전 굳이 메뉴에는 넣지 않을거예요.

해상도만 바꾸고 싶으시다면 --rate 주사율 부분은 생략해도 되고, 모니터 목록은 xrandr만 입력하면 나올거예요.

$ xrandr --output 모니터이름 --mode 가로x세로 --rate 주사율

 

xrandr는 xorg-xrandr를 설치하면 사용할 수 있어요.

$ sudo pacman -S xorg-xrandr

화면 밝기 조절

xrandr로 화면 밝기 조절도 가능해요. 다른 사람들은 단축키를 따로 설정했던데, 일단 전 메뉴에만 넣어둘 생각이에요.

미래의 내가 단축키로 이것저것 설정해두겠지. 밝기는 0에서 1사이인 실수에요.

xrandr --output 모니터이름 --brightness 밝기

 

전 일단 하위메뉴를 따로 만들어서 25%, 50%, 75%, 100%로 넣어두었어요.

 

스크린샷

scrot를 사용하면 돼요.

$ sudo pacman -S scrot

 

scrot를 입력하면 바로 화면이 캡쳐되고, 저런식으로 뒤에 "-cd초"를 입력하면 해당 시간이 지난 뒤에 캡쳐 실행.

이번에도 하위메뉴로 뺀 뒤에, 일단 즉시 캡쳐, 2초 뒤 캡쳐, 5초 뒤 캡쳐를 넣어두었어요.

 

잠금화면 설정 또는 설치

전 lightdm을 사용하니, dm-tool lock 명령어로 화면을 잠구도록 만들었어요.

다른 가벼운 화면보호기를 원하신다면 xlock를 사용하면 돼요. pacman -S xlockmore로 설치 가능, xlock 명령어로 실행 가능.

 

xlock를 실행하면 화면보호기 같은 것이 랜덤으로 나오고, 아무 키나 누르면 아래와 같은 화면이 나와요. 여기서 비밀번호 입력 후 엔터를 치면 잠금이 풀려요.

 

하지만 전 dm-tool lock을 사용할 거예요.

한글 입력기 실행 및 설정

저번 글에서 pacman -S ibus ibus-hangul로 설치했던 ibus를 사용할거예요.

터미널에 ibus-setup을 입력하면 ibus 데몬을 실행할지 물어보고, Yes를 누르고 또 뭘 누르면

 

이렇게 ibus 설정 화면이 나올텐데, 저기서 Add 버튼 클릭

 

Korean 검색해서 선택한 뒤에

 

Hangul 선택 후 추가

 

 

아무튼 한글 입력이 잘 되고 있어요. 한영키로 전환하는 기능은 단축키 추가 뒤적거리면서 능력것 추가하면 돼요.

딱히 추가를 하지 않더라도 알아서 작동할 수도 있어요.

 


자동으로 ibus를 실행시키는 방법이 있을텐데, 전 일단 귀찮으니 대충 메뉴에 추가했어요. "ibus start"로 추가하면 돼요.


 

추가할 만한 내용이 더 생각나면 이 게시글 뒤에 추가될 수도 있어요. 배경화면 설정이나 테마 변경 등은 따로 올릴 계획

아무튼 이건 menu 파일 중 제가 수정한 일부에요.

    [exec] (xterm) {xterm}
    [exec] (firefox) {firefox}
    [exec] (nemo) {nemo}
    [exec] (xed) {xed}
    [submenu] (system)
        [exec] (network) {xterm -e nmtui}
        [submenu] (brightness)
            [exec] (25%) {xrandr --output eDP-1 --brightness 0.25}
            [exec] (50%) {xrandr --output eDP-1 --brightness 0.5}
            [exec] (75%) {xrandr --output eDP-1 --brightness 0.75}
            [exec] (100%) {xrandr --output eDP-1 --brightness 1}
        [end]
    [exec] (ibus) {ibus start}
    [end]
    [submenu] (screenshot)
        [exec] (now) {scrot}
        [exec] (after 2s) {scrot -cd2}
        [exec] (after 5s) {scrot -cd5}
    [end]
    [submenu] (power)
        [exec] (lock) {dm-tool lock}
        [exit] (logout)
        [exec] (reboot) {reboot}
        [exec] (shutdown) {halt -p}
    [end]

 

 

대충 적용된 모습

 

 

이건 미리보기 이미지용 이미지.

 

 

Fluxbox에 테마 적용 등은 나중에 다룰 계획.

이건 FluxBox를 사용하는 BlackArch Linux의 모습인데, 테마 적용하면 나름 멋있거나 예쁘게 만들 수 있어요.

 

보시다싶이, 아치리치눅스만 설치하면 검은 화면에 하얀 글자만 있는 환경이 끝이에요.

아치리눅스는 없어도 되는 것들은 전부 없애버리는데, GUI도 굳이 있을 필요는 없으니 없애버렸기 때문.

 

아치리눅스 설치는 이전 게시글 참고 : https://sinzdev.tistory.com/2

 

서버에 올려두고 사용하거나 본인이 변태라면 저 정도로도 사용할 수 있겠지만, 전 그런 변태가 아니니 KDE에서 만든 Plasma라는 데스크톱 환경을 설치할거예요. KDE는 독일어라서 카데에라고 발음해요.

KDE라는 이름을 가진 곳에서 KDE라는 이름을 가진 데스크톱 환경을 만들었는데, 이후에 데스크톱 환경의 이름만 Plasma로 바꾸었어요. 하지만 그래도 KDE라고 불리는 중

데스크톱 환경 설치 (KDE Plasma)

방법1) 필요한 것만 설치

 

진짜로 필요한 데스크톱 환경만 설치되고, 터미널과 파일 탐색기, 웹 브라우저 등은 함께 설치되지 않아요.

아래 명령어에서 따로 설치하는 konsole는 터미널이고 dolphin은 파일 탐색기, firefox는 웹 브라우저인 파이어폭스에요. 

 

$ sudo pacman -S plasma konsole dolphin firefox

 

 

방법2) 그냥 다 설치

 

터미널, 파일 탐색기, 메모장 등도 다 함께 설치되는데, 그만큼 용량을 많이 차지할거예요.

웹 브라우저는 크롬이나 파이어폭스가 아닌, Falkon으로 설치될거예요. 팔콘의 옛날 이름은 QupZilla.

sudo pacman -S kde kde-applications-meta

 

 

 

아무튼 이제 설치가 끝났다면 플라즈마의 디스플레이 매니저인 SDDM 활성화

$ sudo systemctl enable sddm

 

 

reboot 명령어 등을 통해 재부팅을 하면, 이제 이렇게 GUI로 이루어진 로그인 화면이 나올거예요.

 

 

저기서 로그인을 하면 이렇게 데스크톱 환경인 KDE Plasma가 나와요.

 

 

한글 폰트 & 한글 입력기 설치 및 설정

 

설치 명령어는 이전 게시글에서도 언급했어요.

sudo pacman -S noto-fonts-cjk ibus ibus-hangul

 

 

아무튼 iBus 설정을 실행하고

 

 

Input Method에서 Add 버튼을 눌러서

 

 

세로로 점점점 되어있는거 누르고 Korean 검색 및 선택 후

 

 

Hangul을 추가하면 돼요.

 

 

아무튼 한글 입력 잘 되는 듯. 한영키로 전환하는건 알아서 될 수도 있고 안 될 수도 있어요.

리눅스 실행시 자동으로 한글 입력기도 같이 켜지는 것은 능력것 설정해보세요.

 

 

위 스크린샷 속 KWrite는 KDE에 기본적으로 같이 딸려있는 메모장 같은 프로그램인데, 위에서 필요한 것만 설치하셨다면 함께 설치되어있지는 않을거예요.

 

로그인 화면 디자인 변경

사실 저거 로그인 화면이 조금 몬생기긴 했다.

sddm을 검색하면 나오는 Login Screen 화면에 들어가서

 

 

로그인 화면을 바꿀 수 있다. 여기서 원하는 디자인을 선택하면 되는데, 여기서 모습을 바꾸면 기존에 있던 저 몬생긴 모습으로 되돌릴 수 없다.

 

 

아무튼 바뀐 로그인 화면 모습

 

 

로그인 화면 말고도, 테마 적용 등을 통해 싹 다 바꿀 수 있다.

.iso 파일 다운로드

아치리눅스 홈페이지인 https://archlinux.org/ 에 들어가면, 오른쪽 위에 Download 버튼이 보일거예요.

 

 

토렌트로 다운로드 받는 것이 아마 정석일텐데, 쭉 내리다가 보면 한국 미러가 있어요.

 

 

저는 유키넷에서 받았어요. 아치리눅스-날짜-어쩌고.iso 파일을 받으시면 될거예요.

 

 

부팅 USB는 rufus나 Ventoy를 사용해서 만드시면 돼요.

 

윈도우 파티션 줄이기

저는 C드라이브의 일부를 줄이고, 줄어들은 공간에 아치리눅스를 설치할 계획이에요.

작업 표시줄에 있는 윈도우 로고를 마우스 오른쪽 클릭하면 나오는 메뉴에서 디스크 관리 클릭

 

 

크기를 줄이려는 파티션에 마우스 오른쪽 클릭하면 나오는 메뉴에서 볼륨 축소 클릭

 

 

일단 여기서는 16GiB만 줄일거예요. 축소 버튼을 누르면

 

 

이렇게 C드라이브의 일부분이 줄어들어 빈 공간이 된 것을 볼 수 있어요. 저 공간에 리눅스를 설치할 계획

 

 

아치리눅스 라이브 부팅

부팅 USB로 부팅하면 대충 이런 메뉴가 나올텐데, Arch Linux install 어쩌고를 선택하신 뒤에 엔터

 

 

영어로 뭐라뭐라 막 뜬 다음에, 이런 화면이 나온다면 성공적으로 부팅된 상태에요.

아치리눅스는 굳이 필요하지 않은 것들은 다 빼버린 상태라서 아무것도 없어요. 이제 여기서 하나하나 명령어를 입력해서 설치하면 되는거예요.

 

인터넷 연결 (Wifi)

유선인터넷을 사용 중이라면 이미 알아서 연결된 상태일 것이니, 그냥 넘거가시면 됩니다.

iwctl을 사용해서 와이파이 연결이 가능한데, 가상머신에서는 안되는 것 같네요.

 

 

아무튼 iwctl 명령어로 iwctl 실행 후

device list 명령어로 컴퓨터에 있는 뭇선 네트워크 인터페이스를 찾은 뒤,

station {인터페이스} scan 명령어로 주변 와이파이 검색하고, (1초만 기다려도 됨)
station {인터페이스} get-networks 명령어로 주변 와이파이 목록 출력 후,
station {인터페이스} connect "와이파이 이름" 명령어로 해당 와이파이에 연결한 뒤에
exit 명령어로 iwctl을 나가면 됩니다.

iwctl
device list
station {인터페이스} scan
station {인터페이스} get-networks
station {인터페이스} connect "와이파이 이름"
exit

 

 

인터넷 연결여부 확인은 그냥 구글 같은 곳에다가 ping 요청 넣어서 잘 응답이 오는지 확인하면 돼요.

4번 보내고 끝나는 윈도우와는 달리, 계속 핑 요청을 보내고 있다면 "Ctrl + C"를 입력해서 멈추면 되구요.

 

리눅스 파티션 생성 및 포멧

이 부분에서 설명하는 내용은 다시 되돌릴 수 없는 작업이며, 실수하면 모든 파일이 사라지니 제대로 따라해주세요.

 

lslkb 명령어를 사용하면 나오는 용량 등을 보니, nvme0n1이 C드라이브가 있는 디스크인 것 같아요.

cfdisk를 통해 리눅스를 설치할 파티션을 만들거에요.

일단 cfdisk /dev/nvme0n1 명령어 입력

 

 

cfdisk가 실행된 모습. 초록색으로 표시된 부분이 누가봐도 아까 줄인 16GiB네요.

 

 

상/하 방향키로 해당 부분 선택 후, 좌/우 방향키로 New 선택 후 엔터

 

 

용량은 알아서 최대치로 입력되어있을 것이니 엔터

 

 

좌/우 방향키로 Write 선택 후 엔터.

 

 

이건 잘못 건들면 되돌릴 수 없는 작업인지라, 한 번 더 물어보네요. yes 입력 후 엔터

 

 

그러면 이런식으로 리눅스가 설치될 파티션이 만들어졌으니, 좌/우 방향키로 Quit 선택 후 엔터

 

 

mkfs.ext4 명령어를 통해 해당 파티션에 ext4 파일 시스템을 만들어주세요. ext는 주로 리눅스에서 사용하는 파일 시스템이에요.

mkfs.ext4 /dev/nvme0n1p4 처럼 파티션까지 다 입력해야 해요. 실수로 뒤에 p4를 빼거나 하면 디스크 전체를 포멧시켜버려요.

 

파티션 마운트

lfblk -f 명령어를 사용해보니, nvme0n1p1이 EFI 파티션인 것 같아요.

리눅스를 설치할 파티션을 /mnt에 마운트한 뒤에 폴더를 만들고, EFI 파티션을 /mnt/boot 파티션에 마운트해주세요.

mount /dev/nvme0n1p4 /mnt
mkdir -p /mnt/boot/efi
mount /dev/nvme0n1p1 /mnt/boot

 

아치리눅스 설치

parstrap을 사용해서 아치리눅스를 설치해주세요.

 pacstrap /mnt base base-devel linux linux-firmware

 

설치가 끝났다면, 다음 명령어를 통해 fstab도 생성해주세요.

genfstab -U /mnt >> /mnt/etc/fstab

 

chroot 실행

뭔가 살짝 바뀔거예요

 

root 계정 비밀번호 설정

아치리눅스 root 계정의 기본 비밀번호는 root라는 거짓말이 널리 퍼진 상태에요. 나중에 또 라이브 부팅해서 chroot를 실행하고 싶지 않으시다면, 미리 비밀번호를 설정해두세요.

root 계정 없이 사용하고 싶으시다면 굳이 설정하실 필요는 없어요.

 

필요할 것들 이것저것 설치

networkmanager : 이거 설치 안하면 인터넷이 안될거예요. 지금 설치 안하면 나중에 또 라이브 부팅해서 chroot 실행해야 해요.

vim : 곧 사용하게 될 텍스트 편집기에요

noto-fonts-cjk : 한글폰트

ibus ibus-hangul : 한글 입력기

 

 

설치가 끝났다면 NetworkManager를 활성화시켜주세요.

셀룰러 통신을 지원하는 LTE 노트북 등을 사용하신다면, ModemManager도 설치 및 활성화시키셔야 셀룰러 데이터를 사용할 수 있을 것이니 참고

 

사용자 추가 및 sudoer 설정

굳이 루트계정만 사용하실 것이라면 안하셔도 되긴 해요.

useradd 명령어 사용시 --create-home를 빼먹으면 해당 계정의 홈 폴더가 생성되지 않고, 이후에 데스크톱 환경 사용시에 오류가 발생하면서 데스크톱 환경이 실행되지 않을 수도 있어요.

 

아무튼 제 계정명은 sinz에요.

 

 

이제 sudo 권한을 부여할거에요. visudo 명령어를 실행하면 나오는 화면에서 아래로 쭉 내리다가 보면 이렇게

root ALL=(ALL:ALL) ALL

 

라고 적힌 내용이 보일텐데,

 

바로 아래에 이런식으로 적어주면 해당 계정으로도 sudo 명령어 사용이 가능해질거예요.

root ALL=(ALL:ALL) ALL
계정이름 ALL=(ALL:ALL) ALL

 

 

커서를 이동한 상태에서 a 키를 누르면 편집 모드에 진입하면서 글자 입력 가능

입력이 다 끝났다면 ESC 키를 눌러서 편집 모드에서 빠져나온 뒤

:wq를 입력한 뒤에 엔터를 입력하여 파일 저장 및 닫기

 

부트로더 설치 (grub)

pacman -S grub efibootmgr dosfstools openssh os-prober mtools
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id={부팅 메뉴에 보일 이름}
grub-mkconfig -o /boot/grub/grub.cfg

 

 

마지막에 grub-mkconfig 어쩌고 명령어를 실행하면 함꼐 설치되어 있는 다른 리눅스들도 알아서 grub 부팅 메뉴에 추가될텐데, 다른 부팅 가능한 파티션들을 찾지 않겠다는 말이 나오네요?

 

 

그럼 os-prober가 작동하도록 설정하면 돼요. vim으로 grub-mkconfog 파일을 열어보면

vim /usr/bin/grub-mkconfog

 

 

이런식으로 GRUB_DISABLE_OS_PROBER="true"라고 적힌 부분이 있을텐데, 저기서 true를 false로 바꾸면 돼요.

a로 편집모드 들어가고, ESC로 나오고 :wq로 저장 및 닫기

 

 

다시 grub-mkconfig -o /boot/grub/grub.cfg 명령어를 사용해보면 이렇게 함께 설치된 윈도우를 찾아오는 것을 볼 수 있어요.

Windows Boot Manager를 찾았다는 내용이 보이네요.

 

로케일 설정

/etc/locale.gen 파일 수정하면 됩니다. vim 사용법은 위와 동일

 

아치리눅스 설치 끝

이제 할 것은 다 끝났으니, exit를 통해 chroot 밖으로 나오고 reboot 명령어를 통해 재부팅

 

 

이제 컴퓨터를 키면 이런 화면이 나올텐데,

여기서 상/하 방향키를 사용해서 아치 리눅스를 선택하면,

 

 

이렇게 (아직 아무것도 없는) 아치리눅스가 부팅되고,

 

 

윈도우를 선택하면 윈도우가 부팅될거예요.

 

 

로그인 화면만 나오고 로그인하면 아무것도 없는게 끝이에요.

마우스로 아이콘 누르고 이것저것 하는 그런 GUI 환경은 굳이 없어도 되는 환경이니 다 빼버린 상태.

 

 

GUI 환경 설치

데스크톱 환경 KDE Plasma 설치 : https://sinzdev.tistory.com/3

 

ArchLinux에 KDE Plasma 설치 (데스크톱 환경)

보시다싶이, 아치리치눅스만 설치하면 검은 화면에 하얀 글자만 있는 환경이 끝이에요.아치리눅스는 없어도 되는 것들은 전부 없애버리는데, GUI도 굳이 있을 필요는 없으니 없애버렸기 때문.

sinzdev.tistory.com

 

창 관리자 Fluxbox 설치 : https://sinzdev.tistory.com/4

 

ArchLinux에 Fluxbox 및 필요한 것들 설치

BlackBox라는 창 관리자가 있었는데, 저걸 기반으로 Fluxbox와 Openbox가 만들어졌어요.Openbox는 사실상 다시 새로 만들어진 상태라 더 이상 BlackBox 시절의 소스코드는 남아있지 않구요. 아무튼 전 Fluxbox

sinzdev.tistory.com

 

창 관리자나 데스크톱 환경은 저 2가지가 전부인 것은 아니에요.

+ Recent posts