질문 제목은 다음과 같이 묻습니다. 왜 Linux에 마운트해야합니까?
이 질문을 해석하는 한 가지 방법 : Linux에서 파일 시스템을 사용 가능하게하려면 명시적인 mount
명령을 실행 해야하는 이유는 무엇 입니까?
답은 없습니다.
파일 시스템을 명시 적으로 마운트 할 필요는 없으며 자동으로 파일 시스템을 정리할 수 있으며 Linux 배포는 Windows 및 Mac과 마찬가지로 대부분의 장치에서 이미이 작업을 수행합니다.
그래서 그것은 아마도 당신이 요구하려는 것이 아닐 것입니다.
두 번째 해석 : 왜 우리가 때로는 명시 적으로 실행할 필요가 mount
리눅스 파일 시스템을 사용할 수 있도록 명령을? 왜 운영 체제가 항상 우리를 위해 그것을하고 사용자에게 숨길 수 있습니까?
이것은 질문 할 때 질문 텍스트에서 읽고있는 질문입니다.
마운팅을 건너 뛰지 말고 다음을 수행하십시오.
ls /dev/cdrom
CD-ROM의 내용이 나열되어 있습니까?
아마도, 당신은 의미 : 왜 그 명령이 무엇을합니까?
ls /media/cdrom
지금?
이 경우 /dev/cdrom
장치 파일이 아닌 디렉토리 트리가됩니다. 실제 질문은 다음과 같습니다. 왜 장치 파일이 처음에 있습니까?
이미 주어진 것에 대한 답변을 추가하고 싶습니다.
사용자가 장치 파일을 보게되는 이유는 무엇입니까?
CD-ROM 또는 파일을 저장하는 다른 장치를 사용할 때마다 CD-ROM의 내용을 파일의 디렉토리 트리로 해석하는 소프트웨어가 사용됩니다. ls
CD-ROM의 파일에 액세스하는 다른 종류의 명령이나 응용 프로그램을 사용할 때마다 호출됩니다 . 해당 소프트웨어는 파일을 CD-ROM에 쓰는 데 사용되는 특정 파일 시스템의 파일 시스템 드라이버입니다. 파일 시스템에서 파일을 나열, 읽기 또는 쓰기 할 때마다 해당 장치에서 해당 하위 수준 읽기 및 쓰기 작업이 수행되도록하는 것이 해당 소프트웨어의 역할입니다. 당신이 때마다 mount
파일 시스템, 시스템을 말하는중인 파일 시스템 드라이버 장치에 사용할 수 있습니다. 이 작업을 명시 적으로 수행하는지 여부mount
명령을 수행하거나 자동으로 수행되도록 OS에 맡기려면 수행해야합니다. 물론 파일 시스템 드라이버 소프트웨어가 먼저 있어야합니다.
파일 시스템 드라이버는 어떻게 작동합니까? 답은 장치 파일을 읽고 쓰는 것입니다. 왜? 당신이 이미 언급했듯이 대답 : Unix는 이런 식으로 설계되었습니다. 유닉스에서 장치 파일은 장치에 대한 일반적인 저수준 추상화입니다. 특정 장치에 대한 실제 장치 별 소프트웨어 (장치 드라이버)는 장치 파일의 작업으로 장치에서 열기, 닫기, 읽기 및 쓰기를 구현해야합니다. 이렇게하면 파일 시스템 드라이버와 같은 고급 소프트웨어는 개별 장치의 내부 작동에 대해 많이 알 필요가 없습니다. 저수준 장치 드라이버와 파일 시스템 드라이버는 서로 인터페이스하는 일반적인 방법에 동의하는 한 다른 사람들이 개별적으로 작성할 수 있으며 장치 파일의 용도입니다.
따라서 파일 시스템 드라이버에는 장치 파일이 필요합니다.
그러나 왜 일반 사용자 인 경우 장치 파일을 볼 수 있습니까? 그 대답은 Unix는 운영 체제 프로그래머가 사용하도록 설계되었다는 것입니다. 사용자가 장치 드라이버 및 파일 시스템 드라이버를 작성할 수 있도록 설계되었습니다. 그것이 실제로 어떻게 쓰여지 는가입니다.
Linux의 경우에도 마찬가지입니다. 고유 한 파일 시스템 드라이버 (또는 장치 드라이버)를 작성하여 설치 한 다음 사용할 수 있습니다. 리눅스 (또는 다른 유닉스 변형)를 쉽게 확장 할 수있게한다 (그리고 실제로 리눅스가 시작된 이유) , 누군가 코드를 작성하여 지원하고 작동하게하고 Linux에 제공 할 수 있습니다.
장치 파일은 이것을 더 쉽게 만듭니다.