r26 vs r27
11[목차]
2설치가 어려운 Arch Linux의 설치 방법을 정리해 두었다. [[https://wiki.archlinux.org/title/Installation_guide|최신 정보는 여기에서 확인 가능하다.]]
2설치가 어려운 Arch Linux의 설치 방법을 정리해 두었다. [[https://wiki.archlinux.org/title/Installation_guide|최신 정보는 여기에서 확인 가능하다.]][* 한국어 번역이 처참해서 그냥 번역기 쓰는 것이 더 좋다.]
33== 쉬운 방법? ==
4Archinstall를 이용하거나, EndeavourOS, Manjaro Linux같은 쉬운 설치를 지향하는 Arch 파생 베포판을 사용하자. 또한 파티션을 건드려야하는 등, 잘못하면 시스템이 날아갈 수도 있으니 미리 가상머신 등에서 미리 도전해보자.
4쉽게 설치하려면 Archinstall를 이용하거나, EndeavourOS, Manjaro Linux같은 쉬운 설치를 지향하는 Arch 파생 베포판을 사용하자.
5
6또한 설치 파티션을 건드려야하는 등, 잘못하면 시스템이 날아갈 수도 있으니 미리 가상머신 등에서 미리 도전해보자.[* 보안부팅 끄자]
57== 설치 환경 부팅하기 ==
6[[https://archlinux.org/download/#download-mirrors|다운로드 주소]][* 한국은 south korea]
7여기서 ctrl + F로 자신이 살고 있는 나라를 검색하자.[* 사실 다른 것을 골라도 상관 없지만 속도가 느리다] 여기에서 iso 파일을 다운로드 하자. 가능하면 체크섬도 다운로드하여 파일을 검증하면 좋다. [* 이는 민트 리눅스 사이트 해킹사건으로 인해 체크섬 검증을 한 사람들이 털렸던 같은 사례가 발생는 것을 막기 위해서이다.]
8[[https://archlinux.org/download/#download-mirrors|다운로드 주소]]
9여기서 ctrl + F로 자신이 살고 있는 나라를 검색하자.[* 사실 다른 것을 골라도 상관 없지만 속도가 느리다] 여기에서 iso 파일을 다운로드 하자. 가능하면 체크섬도 다운로드하여 파일을 검증하면 좋다. [* 변조를 방지기 위해서이다.]
810=== Windows ===
911Windows 유저라면 [[https://rufus.ie/ko/|rufus]]를 다운받아 열면 된다. 창이 뜨면 장치 항목에 usb 목록이 뜨는데 필요 없는[* iso를 적용시키기 전에 데이터를 포멧해야하기 때문] 장치를 선택하고 부트 유형 항목에서 디스크 또는 ISO 선택 (please select)를 선택 후, 오른쪽에 있는 선택 버튼을 눌러 아까 다운로드 받은 iso파일을 선택한다.
1012
1113확인하고 선택 후에, 시작 버튼을 누른다. 이때 파일 기반으로 할지, dd이미지 모드로 쓸 지 선택하는 창이 뜨는데, dd를 선택한다.
1214
1315이제 펌웨어에서 부팅 항목에서 아까 만든 USB를 선택하면 부팅이 된다.
1416[[#부팅후|부팅 후에 해야할 작업은 여기를 참조해주세요]]
15=== Linux ===
17=== Linux[anchor(리눅스)] ===
1618~~어쩌피 다 알잖아요~~
1719
18터미널 에뮬레이터 혹은 bash를 사용해 lsblk를 입력하여 USB의 블럭 바이스 확인.[* 아마 /dev/sd* 형태일 것이다.]
20coreutils 페키지가 있어야한.[* cat있으면 대부분 깔려있다.]
21
22터미널 에뮬레이터 혹은 bash를 사용해 lsblk를 입력하여 USB의 블럭 디바이스 확인.[* 아마 /dev/sd* 형태일 것이다.][* 햇갈리면 직접 마운트 해보자]
1923{{{#!syntax shell
2024sudo dd if=<아까 받은 iso 파일> of=<블럭 디바이스 주소> bs=4M status=progress oflag=sync
2125sync
......
2428이제 펌웨어에서 부팅 항목에서 아까 만든 USB를 선택하면 부팅이 된다.
2529[[#부팅후|부팅 후에 해야할 작업은 여기를 참조해주세요]]
2630=== MacOS ===
27=== FreeBSD ===
28=== NetBSD ===
31=== FreeBSD, NetBSD등 UNIX계열 OS[* 놀랍게도 리눅스는 Unix계열이 아니다.] ===
32[[#리눅스|커널이 아닌 OS기 때문에 Coreutils가 이미 있을 것이다.]]
2933== 인터넷 연결[anchor(부팅후)] ==
3034렌선을 사용중이라면 대부분 따로 셋팅은 안해도 된다. Wifi를 사용중이라면 iwd의 iwctl을 이용하여 연결 하자.
3135
32iwctl을 입력하여 iwctl을 킨 후, station list를 이용해 네트워크 디바이스를 찾은 후(대부분 wlan0이라는 이름을 갖고 있음) station <디바이스> connect[* 숨겨진 네트워크라면 connect-hidden] <wifi 이름>을 입력후, 비밀번호가 있으면 비밀번호를 입력후에 quit을 쳐서 빠져나오자. 그후 dhcpcd를 입력하자.
36iwctl을 입력하여 iwctl을 킨 후, station list를 이용해 네트워크 디바이스를 찾은 후(대부분 wlan0이라는 이름을 갖고 있음) station <디바이스> connect[* 숨겨진 네트워크라면 connect-hidden] <wifi 이름>을 입력후, 비밀번호가 있으면 비밀번호를 입력후에 quit을 쳐서 빠져나오자.
3337
34ping 8.8.8.8로 인터넷 연결을 테스트 할 수 있다.[* 근데 ~~그럴 일은 없지만~~ 구글 dns서버가 터지는 경우도 있으니, 0.0.0.0같은 른 dns서버에도 핑을 날려보자]
38ping 8.8.8.8로 인터넷 연결을 테스트 할 수 있다.[* 근데 ~~그럴 일은 없지만~~ 구글 dns서버가 터지는 경우도 있으니, 0.0.0.0같은 른 dns서버에도 핑을 날려보자]
3539== 파티션 만들기 ==
3640fdisk <설치할 장치의 경로>를 입력해 fdisk를 킨다.[* lsblk를 입력하여 참고하자]
3741
......
4347
4448p를 눌러 알맞은 파티션 레이아웃인지 확인 후, w를 입력해 디스크에 쓰자.
4549
46이러한 cli툴이 어렵다면 Windows환경에서 Win + X를 눌러 디스크 관리에서 편집하거나, Linux 그레픽 환경이라면 Gparted, TUI 인터페이스를 원하면 cfdisk[* Arch Installation Media에 내장]를 사용하는 것을 추천한다.
50이러한 cli툴이 어렵다면 Windows환경에서 Win + X를 눌러 디스크 관리에서 편집하거나, Linux 그레픽 환경이라면 Gparted, TUI 인터페이스를 원하면 cfdisk[* Arch Installation Media에 내장]를 사용하는 것을 추천한다.~~fdisk 나만쓰지...~~
4751== 파일 시스템 만들기 ==
4852mkfs.fat -F 32 <아까 만든 1G짜리 파티션>[* fdisk에서 p를 입력 시, 경로를 확인 가능하다.]를 입력하자.[*UEFI라면 시스템이 UEFI일 시에만 이 명령어를 실행하자]
4953
5054mkfs.swap <스왑 파티션 주소>를 입력해 SWAP 파티션을 포멧한다.
5155
52mkfs.ext4 <루트 파티션>을 입력해 루트 파티션을 포맷하자.
56mkfs.ext4 <루트 파티션>을 입력해 루트 파티션을 포맷하자.[* Windows와의 호환을 원한다면 fat계열 혹은 ntfs로 포멧도 고려해보자 ~~둘다 마소에서 만들었거든... fat은 빌게이츠가. 무려.~~]
5357== 파일 시스템 마운트 ==
5458mount /mnt <루트>
5559mount /mnt/boot <EFI 파티션> --mkdir[*UEFI라면]
......
6165genfstab -u >> /mnt/etc/fstab
6266Fstab은 부팅 작업중에 디스크를 마운트 할 때 참조되는 파일인데, 결함이 있거나 없으면 부팅시 emergency 모드로 진입하니 주의.
6367== chroot ==
64arch-chroot /mnt를 입력해 아까 설치한 아치리눅스에 진입하여 더 많은 작업을 해준다. chroot를 안 쓰는 이유는 arch-chroot는 dev 마운트, proc여러개를 한꺼번에 마운트해주기 때문.
68arch-chroot /mnt를 입력해 아까 설치한 아치리눅스에 진입하여 더 많은 작업을 해준다. chroot를 안 쓰는 이유는 arch-chroot는 dev(ice), proc(ess)가상 파티션을 한꺼번에 마운트해주기 때문.
6569
6670먼저 필요한 페키지를 설치한다.
6771pacman -S vim bash-completion less sudo grub[*멀티부트] os-prober[*멀티부트] iwd(wifi) dhcpcd efibootmgr(UEFI)
6872 * vim 텍스트 에디터. 익숙하지 않으면 nano 쓰는 것을 추천한다.
69 * bash-completion tap눌러서 명령어 자동완성 해주는 그거 맞다.
7074 * less cli 환경에서 유용하게 쓰인다. 너무 길어서 stdout이 잘리는 프로그렘 옆에 cat a.txt | less를 쓰는 등 활용이 가능하다.
73 * bash-completion tap눌러서 명령어 자동완성 해주는 그거 맞다.[* bash 싫으면 zsh + ohmyzsh도 좋다]
7175 * sudo ~~Suit Up and DO~~ 권한상승 프로그램 최근에 보안 취약점이 발견되서인지는 몰라도, rust로 만든 sudo-rs가 나왔다.
72 * grub 멀티부팅 지원 부트로더. 리눅스만 면 LILO, SystemDboot도 나쁘지 않은 선택.
76 * grub 멀티부팅 지원 부트로더. 멀티부팅 안할거면 LILO[* MBR], SystemDboot도 나쁘지 않은 선택. 이쁜 테마그 많다.
7377 * os-prober 멀티부팅 시, grub 설정을 더 편하게 만들어주는 프로그렘
74 * iwd wifi 쓸 시 필요. networkmanager라는 대채품이 있다.[* plasma 쓸 예정이라면 iwd 대신 이걸 쓰자]
78 * iwd wifi 쓸 시 필요. networkmanager라는 대채품이 있다.[* plasma 쓸 예정이라면 iwd 대신 이걸 쓰자] dhcpcd랑 같이 쓰는 것을 추천한다.
7579=== 부트로더 ===
7680==== GRUB ====
7781UEFI의 경우:
......
8387
8488grub-mkconfig -o /boot/grub/grub.cfg를 실행하여 설정 파일을 만든다.
8589==== SystemD boot ====
86bootctl --esp-path=/boot \--boot-path=/boot install
87따로 뭐 설치할 필요가 없다. (멀티부팅은 안되는듯)
90bootctl install
91따로 뭐 설치할 필요가 없다.
8892=== 나머지 ===
89/etc/hostname를 수정해 컴퓨터 이름을 정하고
93/etc/hostname를 수정해 컴퓨터 이름을 정하고[* 기본은 Archlinux]
9094
9195passwd를 사용하여 루트의 비번을 바꾸고
9296
......
107111=== YAY ===
108112[[Arch Linux#s-5.3.1|여기 참고]]
109113=== GUI ===
110리눅스 환경에서 한글을 쓰려면 그레픽 환경이 (거의)필수적이다.[* jfbterm등을 쓰면 유니코드를 볼 수 있다.] 디스플레이 서버로는 Xorg, Wayland정도가 있고, Desktop Environmant로는 plasma, Xfece, gnome, cinnamon 등이 있다.
114리눅스 환경에서 한글을 쓰려면 그레픽 환경이 (거의)필수적이다.[* jfbterm등을 쓰면 유니코드를 볼 수 있다. 근데 처다리 이런거 쓸 바에 X랑 Xterm[* 터미널] 같이 사용하는게 더 나은게, 둘이서 하는 것이 비슷하지만 X가 기능이 더 많고 윈도우 메니저도 있고 한글 입력도 되고 리눅스의 모든 GUI프로그렘이 X를 사용한다는 전제 하에 만들어졌기 때문이다. ] 디스플레이 서버로는 Xorg, Wayland정도가 있고, Desktop Environmant로는 plasma, Xfce, gnome, cinnamon, i3(wm) 등이 있다.
111115==== 한글 입력(Xorg) ====
112116한글 입력은 ibus, ibus-hangul을 많이쓴다. 옛날에 Wayland 환경에서는 특정 프레임워크를 쓰는 엡에서는 입력이 힘들었었다.
113117
......