내 initramfs에는 다음이 있습니다.
[root@xilinx Peta_Microzed_15_05]# ls initramfs/dev/
console
[root@xilinx Peta_Microzed_15_05]# nano initramfs/dev/console
[root@xilinx Peta_Microzed_15_05]#
위의 nano는 빈 파일을 엽니다.
console
그러면 이 파일에 아무것도 없으면 어떻게 보일까요?
답변1
대부분의 파일 /dev
은장치 파일. 이는 디스크 저장소에 해당하지 않지만 일반적으로 하드웨어와 상호 작용하기 위해 커널의 기능을 호출하는 특수 디렉토리 항목입니다.
Unix 시스템은 다음 출력에서 해당 줄의 첫 번째 문자로 표시되는 여러 유형의 파일을 지원합니다(일부 "이국적인" 유형은 생략했습니다) ls -l
.
-
일반 파일. 디스크 지원 파일 시스템의 경우 이러한 파일은 디스크에 기록됩니다. 이 유형의 파일을 읽으면 파일에 기록된 데이터를 다시 가져옵니다.d
목차. 이러한 파일의 유일한 목적은 다른 파일을 포함하는 것입니다.l
심볼릭 링크. 이러한 파일의 유일한 목적은 다른 파일로 리디렉션하는 것입니다.p
명명된 파이프(FIFO라고도 함): 한 프로세스가 명명된 파이프에 쓰는 동안 다른 프로세스는 실시간으로 출력을 읽고, 리더가 읽을 때까지 쓰기를 차단합니다.s
이름소켓- Named Pipes와 유사하지만 세션 기반 양방향 통신(예: 네트워크 소켓)을 제공합니다.b
,c
블록 및 문자장비.
블록 장치는 고정된 크기의 일반 파일과 매우 유사하게 동작하는 장치입니다. 즉, 특정 위치에서 다시 읽으면 해당 위치에 마지막으로 기록된 데이터를 다시 가져옵니다. 블록 장치는 일반적으로 디스크나 디스크 파티션 또는 기타 디스크와 유사한 하드웨어입니다.
문자 장치는 이러한 방식으로 동작하지 않는 장치입니다. 이들은 다양합니다. 일부 장치는 출력 전용이거나 입력 전용입니다. 문자 장치가 입력과 출력을 모두 지원하더라도 쓰여진 것과 읽는 것 사이에 반드시 관계가 있는 것은 아닙니다. 예를 들어, 직렬 포트에 해당하는 장치에 쓰여진 데이터는 직렬 포트에 연결된 주변 장치로 전송되고, 장치에서 읽은 데이터는 주변 장치로부터 수신된 데이터입니다.
/dev/console
지정하다시스템 콘솔, 컴퓨터의 키보드와 화면에 연결됩니다. 컴퓨터에 키보드와 화면이 없으면 /dev/console
존재하지만 쓰기가 실패하거나 무시될 수 있습니다. 컴퓨터에 여러 개의 키보드와 화면이 있는 경우 특정 시스템 구성에 따라 /dev/console
연결된 키보드나 화면이 결정됩니다. 일부 Unix 버전은 가상 콘솔을 제공합니다. 예를 들어 Linux에서는 Ctrl++, ++ 등을 눌러 콘솔 간에 전환할 수 있습니다. 각 콘솔에는 자체 비디오 버퍼와 연결된 자체 프로그램 세트가 있습니다. 키보드 입력을 받아 화면에 표시하는 콘솔입니다.AltF1CtrlAltF2
읽을 수 있습니다 /dev/console
(권한이 있는 경우). Nano는 약간 쓸모가 없습니다. 모든 장치 파일에서 읽기를 거부합니다. (문자 장치를 "편집"하는 것은 의미가 없으며 블록 장치에는 일반적으로 텍스트 편집에 사용해서는 안되는 파일 시스템 편집기가 포함되어 있기 때문에 완벽하게 합리적입니다) , 그러나 그렇지 않습니다. 오류 메시지가 표시됩니다.
디렉토리 이름이 주어지면 이는 다음과 같습니다.파일 시스템 초기화tree: Linux 시스템의 초기 파일 트리로 사용되는 파일 트리입니다. initramfs를 어셈블하고(보통 커널 빌드의 일부로 수행됨) 해당 initramfs에서 부팅하면 결국 이 파일이 부팅하는 시스템에 표시됩니다 console
./dev/console