알파인 리눅스 시스템을 RAM에 로드하는 방법

알파인 리눅스 시스템을 RAM에 로드하는 방법

가능하다면 전체 시스템을 RAM에 로드하려면 조언이 필요합니다. 다음 상황을 상상해 봅시다.

DVD에서 LIVE OS를 부팅하고 루트 lsblk로 로그인합니다.

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0  2.9G  1 loop 
sda      8:0    0 19.1G  0 disk 
|-sda1   8:1    0    1G  0 part 
`-sda2   8:2    0 18.1G  0 part 
sr0     11:0    1 1024M  0 rom 

VPN이 필요하기 때문에 네트워크 부팅에 ipxe를 사용할 수 없습니다. 여기서 유일한 옵션은 DD를 사용하고 기존 /dev/sda를 내 사용자 정의 alpine.img로 덮어쓰는 것입니다.

나는 qemu와 apline linux virt 이미지를 사용할 것입니다.

지금까지 완료한 단계는 다음과 같습니다.

  • iso에서 Alpine Linux를 부팅하고 /dev/sda를 생성합니다.
  • sda는 다음과 같이 부팅 파티션만 마운트 지점으로 사용합니다.
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda      8:0    0    1G  0 disk 
├─sda1   8:1    0  300M  0 part /boot

  • /boot 디렉토리에 다음을 복사했습니다.
 /boot/
├── alpine-rootfs.tar.gz
├── System.map-virt
├── boot -> .
├── config-virt
├── extlinux.conf
├── initramfs-virt
├── ldlinux.c32
├── ldlinux.sys
├── libcom32.c32
├── libutil.c32
├── lost+found
├── mboot.c32
├── menu.c32
├── vesamenu.c32
└── vmlinuz-virt

extlinux.conf에는 다음이 포함됩니다.

# Generated by update-extlinux 6.04_pre1-r15
DEFAULT menu.c32
PROMPT 0
MENU TITLE Alpine/Linux Boot Menu
MENU HIDDEN
MENU AUTOBOOT Alpine will be booted automatically in # seconds.
TIMEOUT 10
LABEL virt
  MENU LABEL Linux virt
  LINUX vmlinuz-virt
  INITRD initramfs-virt
  APPEND root=/dev/ram0 modules=sd-mod,usb-storage,ext4 quiet rootfstype=ext4

initramfs-virt에 다음 코드를 추가했습니다.

# Create a RAM disk with a filesystem (adjust the size as needed)
mkdir -p /sysroot
mount -t tmpfs -o size=512M tmpfs /sysroot
# Extract the contents of your root filesystem (e.g., Alpine Linux) to the RAM disk
tar -xzvf /path/to/your/alpine-rootfs.tar.gz -C /sysroot
# Pivot to the RAM disk as the new root filesystem
exec switch_root /sysroot /sbin/init

불행하게도 부팅 프로세스가 실패합니다. 여기서 내가 뭘 잘못하고 있는지 제안할 수 있는 사람이 있나요?

여기서 중요한 점은 다음에 대한 솔루션이 있다는 것입니다.

  • 복구 DVD를 부팅한 후 dd를 사용하여 기존 /dev/sda를 내 사용자 정의 alpine.img로 덮어씁니다.
  • 다음번에는 사용자 정의 alpine.img에서 부팅하고 시스템을 RAM에 로드합니다.
  • 셸에 로그인한 후 SSH 터널을 생성하고 최종 운영 체제를 배포합니다.

관련 정보