initrd 미 러 파일 의 역할
initrd 의 영어 의 미 는 boot loader initialized RAM disk, 즉 안내 프로그램 에서 초기 화 된 RAM 디스크 입 니 다.initrd 는 실제 루트 파일 시스템 이 사용 되 기 전에 시스템 에 마 운 트 된 초기 루트 파일 시스템 입 니 다.initrd 는 커 널 과 연결 되 어 있 으 며 커 널 유도 과정의 일부분 으로 불 러 옵 니 다.커 널 다음 에 이 initrd 파일 을 단계 안내 과정의 일부분 으로 모듈 을 불 러 옵 니 다. 그래 야 나중에 안내 하 는 과정 에서 실제 파일 시스템 을 사용 하고 실제 루트 파일 시스템 을 마 운 트 할 수 있 습 니 다.루트 파일 시스템 은 IDE, SCSI, USB 를 포함 한 다양한 미디어 에 저장 할 수 있 으 며, 이 장치 들 의 구동 을 모두 커 널 에 컴 파일 하면 커 널 이 얼마나 크 고 비대 할 지 상상 할 수 있다.그래서 initrd 를 시작 하 는 과정 에서 커 널 과 루트 파일 시스템 을 연결 하 는 다리 로 볼 수 있 습 니 다.
사실 initrd * * *. img 은 미 러 파일 입 니 다. ramdisk 와 비슷 합 니 다. 프로그램 을 img 에 포장 한 다음 에 켜 질 때 메모리 에 구역 을 엽 니 다. 보통 2m 입 니 다. 그곳 에 방출 하여 실행 합 니 다. 모두 초기 화 된 프로그램 입 니 다. 예 를 들 어 siscmod、 ext3、sd_mod 등 모듈 과 insmod, nash 등 명령.커 널 에 따라 초기 화 된 img 은 같 을 수도 있 고 다 를 수도 있 습 니 다. 없 으 면 grub. conf 에 no initrd 를 추가 할 수 있 습 니 다.
initrd 에는 이 목 표를 실현 하 는 데 필요 한 디 렉 터 리 와 실행 가능 한 프로그램의 최소 집합 이 포함 되 어 있 습 니 다. 예 를 들 어 커 널 모듈 을 커 널 에 불 러 오 는 데 사용 되 는 inmod 도구 입 니 다.그리고 일부 mount, mknod 등 명령 은 뒤의 nash 부분 에서 말 합 니 다.Initrd 의 용 도 는 주로 다음 과 같은 네 가지 가 있 습 니 다. *
1. Liux 발행 판 의 필수 부품 인 Liux 발행 판 은 다양한 하드웨어 구조 에 적응 해 야 한다. 모든 구동 을 커 널 에 컴 파일 하 는 것 은 비 현실 적 이 고 initrd 기술 은 이 문 제 를 해결 하 는 관건 적 인 기술 이다.리 눅 스 발행 판 은 커 널 에서 기본 적 인 하드웨어 구동 만 컴 파일 하고 설치 과정 에서 시스템 하드웨어 를 검사 하여 설치 시스템 하드웨어 구동 을 포함 한 initrd 를 생 성 하 는 것 은 실행 가능 하고 유연 한 해결 방안 일 뿐이다.
2. livecd 의 필수 부품 은 Liux 발행 판 에 비해 livecd 는 더욱 복잡 한 하드웨어 환경 에 직면 할 수 있 으 므 로 initrd 를 사용 해 야 합 니 다.
3. Linux usb 시동 판 을 만 들 려 면 initrd usb 장 치 를 사용 해 야 합 니 다. 시동 이 느 린 장치 입 니 다. 구동 에서 장치 로 불 러 오 는 데 몇 초 정도 걸 립 니 다.usb 드라이브 를 커 널 에 컴 파일 하면 커 널 은 usb 장치 의 파일 시스템 에 성공 적 으로 접근 할 수 없습니다.커 널 이 usb 장치 에 접근 할 때 usb 장치 가 초기 화 되 지 않 기 때 문 입 니 다.따라서 일반적인 방법 은 initrd 에 usb 드라이브 를 불 러 오고 몇 초 동안 휴면 하 며 usb 장치 가 초기 화 된 후에 usb 장치 의 파일 시스템 을 마 운 트 하 는 것 입 니 다.
4. 내장 형 개발 에 서 는 영구 루트 파일 시스템 으로 자주 사용 된다.
5. linux rc 스 크 립 트 에서 개성 화 된 bootsplash 를 편리 하 게 사용 할 수 있 습 니 다.
2. initrd 분석
linux 2.4 커 널 initrd 의 파일 형식 은 파일 시스템 미 러 파일, 즉 loop 장 치 를 사용 하여 구축 되 었 습 니 다.loop 장 치 는 장치 드라이버 입 니 다. 파일 을 하나의 장치 로 시스템 에 마 운 트 한 다음 에 이 파일 시스템 의 내용 을 볼 수 있 습 니 다.linux 2.6 커 널 의 initrd 파일 형식 은 원래 의 파일 시스템 미 러 파일 을 지원 하고 cpio 형식 도 지원 합 니 다. cpio 는 원래 의 파일 시스템 미 러 파일 형식 을 대체 하 는 데 사 용 됩 니 다.다음 절 차 를 통 해 initrd 파일 의 내용 을 볼 수 있 습 니 다.
# mv initrd-2.6.18-8.2.img initrd-2.6.18-8.2.img.gz
# gunzip initrd-2.6.18-8.2.img.gz
# cpio -id < initrd-2.6.18-8.2.img
# ls -l
drwx------ 2 root root 4096 08-31 11:13 bin
drwx------ 3 root root 4096 08-31 11:13 dev
drwx------ 2 root root 4096 08-31 11:13 etc
-rwx------ 1 root root 1833 08-31 11:13 init
drwx------ 2 root root 4096 08-31 11:13 lib
drwx------ 2 root root 4096 08-31 11:13 proc
lrwxrwxrwx 1 root root 3 08-31 11:13 sbin -> bin
drwx------ 2 root root 4096 08-31 11:13 sys
drwx------ 2 root root 4096 08-31 11:13 sysroot
위의 결 과 를 통 해 알 수 있 듯 이 initrd 안 은 아주 작은 루트 파일 시스템 으로/bin 디 렉 터 리 에 아주 적 지만 매우 필요 한 응용 프로그램 이 있 습 니 다. nash, insmod 등 을 포함 합 니 다.init 는 안내 하 는 핵심 파일 입 니 다. cpio 형식의 initrd 에 서 는 이 파일 의 이름 이 init 일 수 밖 에 없습니다.원래 미 러 파일 형식의 initrd 의 핵심 파일 은 init 와 linuxrc 일 수 있 습 니 다.init 는 보통 스 크 립 트 파일 로 커 널 접근 루트 파일 시스템 에 필요 한 드라이버 와 루트 파일 시스템 을 불 러 옵 니 다.nash 에 대한 설명 은 nash (not a shell) 는 SHELL 이 아니 라 가능 한 한 작은 명령 해석 기 입 니 다.RAM DISK 를 초기 화 할 때 리 눅 스 rc 나 init 라 는 간단 한 스 크 립 트 를 설명 하 는 데 사 용 됩 니 다.nash 현재 자주 사용 되 는 구축 명령 은 다음 과 같 습 니 다.
echo
표준 출력 에 문자열 을 출력 합 니 다. 시스템 에 echo 가 그렇게 많 지 않 습 니 다.
find
지정 한 경로 에서 일치 하 는 이름 의 파일 을 표시 합 니 다. 즉, Liux 시스템 에서 find 명령 의 name 인자 만 지원 합 니 다.
losetup
루프 장치/dev/loopdev 에 파일 을 지정 합 니 다.
mkdevices
만 든 블록 장치 파일 저장 경 로 를 지정 합 니 다. 예 를 들 어 mkdevices/dev
mknod
장치 파일 생 성
mkrootdev
루트 파일 시스템 의 장치 노드 를 만 들 고 커 널 전달 매개 변수 중의 'root =' 에 따라 해당 장치 에 대한 노드 를 만 들 수 있 습 니 다. 노드 의 이름 은/dev/root 입 니 다. root =/dev/xxx 에 따라 해당 하 는 장치 노드 를 만 들 수 있 을 뿐만 아니 라 root = LABEL =/에 부 딪 힌 상황 에서 모든 하 드 디스크 파 티 션 을 탐지 하여 볼 륨 표시 가/인 파 티 션 을 찾 을 수 있 습 니 다.
pivot_root
루트 파일 시스템 을 변환 하고 임시 루트 파일 시스템 을 마 운 트 합 니 다.
raidautorun
모든 raid 장치 자동 검색
showlabels
장치 LABEL 및 UUID sw 표시
itchroot
pivot루트 기능 이 유사 하여 루트 파일 시스템 을 변환 하 는 데 사 용 됩 니 다.다만 2.6 또는 이후 의 핵심 에 만 사용 할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
용감한 바로 가기 및 우분투 응용 프로그램안녕하세요 여러분, 이 기사에서는 모든 사이트에서 pwa를 생성하고 실행기 응용 프로그램으로 추가하는 방법을 설명하고 싶습니다. 일부 웹사이트는 PWA로 설치를 허용하지 않지만 유사한 애플리케이션을 원합니다. 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.