initrd /bin에 넣고 싶은 사용자 정의 셸 스크립트(명령)를 작성한 다음 이를 Linux OS /opt/xyz 디렉터리에 복사하려고 합니다. 여기서 xyz는 설치 중에 생성된 사용자 정의 디렉터리입니다.
이 작업을 어떻게 수행할 수 있습니까?
답변1
어떻게?
Redhat initramfs 예제 가져오기
cp /boot/initramfs-2.6.32-220.el6.x86_64.img initramfs.img
우리는 무엇을 가지고 있습니까?
- initramfs.img: Unix의 gzip 압축 데이터, 마지막 수정: 2015년 10월 22일 목요일 07:04:25, 최대 압축
압축하다
gunzip < initramfs.img > initramfs.stage1
- initramfs.stage1: ASCII cpio 아카이브(CRC가 없는 SVR4)
그것을 추출하다
cpio -icv < initramfs.stage1
(lots of line)
usr/sbin
usr/sbin/eject
usr/sbin/chroot
96258 blocks
내 물건 추가
mkdir opt/xyz
date > opt/xyz/foo.txt
리드 없음 /
!
cpio 리메이크(initramfs.* 파일을 삭제했습니다)
find . -type f -print | cpio -ocv > ../newinitram.stage2
(lots of lines)
./usr/bin/mkfifo
./usr/sbin/eject
./usr/sbin/chroot
96186 blocks
우리는 무엇을 가지고 있습니까?
- ../newinitram.stage2: ASCII cpio 아카이브(CRC가 없는 SVR4)
이제 압축해 보세요.
gzip -9 < ../newinitram.stage2 > newinitrd.stage3
- newinitrd.stage3: Unix의 gzip 압축 데이터, 마지막 수정: 2015년 12월 19일 토요일 06:32:08, 최대 압축
이제 커널 부팅이 쉬워졌습니다.