Alpine | Debian | |
---|---|---|
크기 | 아주 가벼움 | 상대적으로 무거움 |
사용 용도 | 컨테이너 및 임베디드 환경 | 데스트탑 및 서버 |
패키지 관리 | apk(Alpine Package Keeper) | apt(Advanced Package Tool) |
패키지 지원 | 상대적으로 적음 | 다양한 패키지 제공 |
보안 및 업데이트 | 빠른 보안 업데이트가 특징 | 보안은 신속하지만 복잡함 |
사이트 | **https://alpinelinux.org/** | https://www.debian.org |
<aside>
ℹ️ Dockerfile 모범 사례에 아래와 비슷한 문구가 있어서 저는 Alpine
을 선택했습니다.
가상 머신은 apline 연습 겸 “apline 위의 도커 위의 apline 위의 mariadb” 설치해보고 싶었어요.
가능하다면 최신 공식 이미지를 이미지의 기초로 사용하세요. 엄격하게 제어되고 크기가 작으면서도(현재 6MB 미만) 여전히 완전한 Linux 배포판인 Alpine 이미지를 권장합니다.
</aside>
<aside> 💡 SSS 배포판 원칙에 따라 만든 보안 지향의 경량 Linux 배포판
/sbin/setup-*
스크립트 기반 설정standard | 네트워크를 요구하는 최소 설치 이미지 |
---|---|
extended | 추가 패키지를 포함하여 standard 설치 |
virtual | 가상 환경에 최적화된 다른 커널을 사용하는 standard 이미지 |
netboot | PXE와 함께 사용하기 위한 넷부트 이미지. |
xen | xen dom0 설치에 사용되는 특수 이미지 |
Alpine User Handbook - Alpine Linux Documentation
alpine-virt-3.17.5-x86_64.iso](<https://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-virt-3.17.5-x86_64.iso>)
설치x86_64
기준)
localhost login: **root**
# 전체 설정
$ setup-alpine # interfaces, openssh 등 기본 설치
# Select keyboard layout : us
# Select variant : us
# system hostname : minjungk.42.fr
# ...
# ........ 기본 iso 이미지는 **RAM**에 설치되므로 디스크 연동 필요!
# Which disk(s) would you like to use? : sda
# How would you like to use? : sys
# Erase the abod disk(s) and continue? : y
# GUI 데스크탑 설정
$ setup-xorg-base
$ rc-update add hwdrivers sysinit
$ rc-update add mdev sysinit
$ setup-desktop
# 한글 설정
$ apk add musl-locales
$ locale -a | grep ko_KR
ko_KR # 없으면 lang xfdesktop-lang 설치해보기
$ vi /etc/profile.d/locale.sh # 또는 ~/.profile
export LANG=ko_KR.UTF-8
# 한글 깨짐 (폰트 설치)
$ mkdir /usr/share/fonts/nanumfont
$ wget <http://cdn.naver.com/naver/NanumFont/fontfiles/NanumFont_TTF_ALL.zip>
$ unzip NanumFont_TTF_ALL.zip -d /usr/share/fonts/nanumfont
$ fc-cache -fv
# ISO 이미지 제거 후 재부팅
$ reboot
<aside> ℹ️ GUI 설치가 완료되지 않은 경우 setup-desktop 한 번 더 호출하고 재부팅하면 보통 해결됨!
</aside>
setup-alpine
기본 값으로 자동으로 설치되지만 virtual machine에서 네트워크를 Bridge로 설정해줘야 ssh로 접속이 가능합니다. born2beroot에서 설정한 것 처럼 해줍시다.# IP 재설정
$ setup-interfaces
Which one do you want to initialize? (or '?' or 'done') [eth0] eth0
Ip address for eth0? (or 'dhcp', 'none', '?') [192.168.10.238] dhcp
Do you want to do any manual network configuartion? (y/n) [n] n
$ rc-service networking restart
$ ifconfig
.... 10.11.4.2 ... .
# 이제 ssh [email protected] 명령으로 알파인 원격 접속 가능