/ sys에 디렉토리를 만들 수없는 이유


8

우분투를 배우고 물건을 실험하고 있습니다.

/ sys 내에 디렉토리를 만들 수 없다는 것을 알았습니다

이것은 특별한 디렉토리입니까? 다른 유형의 디렉토리가 있습니까?

(나는 한 sudo -i과를 chmod a+w /sys)

답변:


17

먼저 /sys의 권한을 다시 변경해야 sudo chmod a-r /sys합니다 (기본 권한은이므로 수행합니다 dr-xr-xr-x). /sys세상에 쓸 수 없어야합니다!

일반적으로 홈 폴더, 외부 미디어 및 폴더 외부의 시스템 부분에 파일과 디렉토리를 만들려면 액세스 권한을 부여하기 위해 권한이나 소유권을 변경하는 것이 아니라 와 같이 수행/tmp 해야 합니다. 디렉토리를 월드 쓰기 가능하게 만드는 것은 특히 권장되지 않습니다.rootsudo

권장되는 방법에 대한 정보는 다음을 참조하십시오.

루트 소유 파일 브라우저 창을 여는 데 gksudo nautilus(또는 sudo -H nautilus없는 경우) 사용할 수도 있습니다 gksudo. 그러나 이것에주의하십시오. 그것은 단지 무엇이든 할 수 있으며, 그 대부분은 원하지 않는 것입니다. 또한,이 경우주의 프로그램을 실행 루트 소유의 파일 브라우저 창에서 해당 프로그램이 너무 루트로 실행됩니다.

이것이 소유 한 디렉토리의 새 내용을 편집하거나 만들려면 일반적으로 수행해야합니다 root. 하나...

/sys은 다르다; root거기에 직접 물건을 만들 수조차 없다

같이 /proc하고 /dev, 우분투 리눅스 커널을 사용하여 다른 운영체제에서, /sysA는 가상 파일 시스템 , 무엇을 나타내는 것은 디스크에 실제 파일이 아닌 (또는 어디서나).

간단히 말해 커널이 (물리적 및 가상) 장치에 대한 정보를 제공 /sys하는 방법 입니다.

/sys파일 시스템의 일부 항목 도 쓰기 가능하며 장치에 대한 구성을 동적으로 설정하는 방법입니다. (이것은 /dev파일 시스템 과 혼동해서는 안됩니다 . 항목에 쓰는 것은 장치에 데이터를 보내는/dev 방법입니다 . )

그러나 이것은 여전히 ​​루트로 수행되어야합니다. 사용 권한 /sys또는 그 일부에 대한 권한을 변경하는 대신 sudo위에서 설명한 대로 루트로 해당 작업을 수행해야합니다 .

Unix.SE에 대한이 답변 에서는 를 수행하는 방법과 대부분의 작업을 루트로 수행 할 수없는 일부 비 관리자가 일부 /sys설정 을 변경하도록 허용하는 방법까지 설명합니다 .

/sys작동 방식 에 대한 자세한 내용 은 다음을 참조하십시오.

/sys커널과 드라이버에 의해 항목 이 작성됩니다. 명령 줄에서만 만들 수는 없습니다. 위에서 언급 한 것처럼 일부를 루트로 편집 할 수 있지만 일반적으로 커널 모듈을로드하거나 드라이버를 설치하거나 커널을 수정하는 것 외에는 사용자 공간에서 새로 만들 수 없습니다.

드라이버 작성에 관심이있는 경우 다음을 참조하십시오.


4

예, /sys"특별한"디렉토리입니다. 에서 위키 백과 :

최신 Linux 배포에는 가상 파일 시스템 (sysfs, proprocs 인 / proc와 유사한 sysfs)으로 / sys 디렉토리가 포함되어 있으며, 시스템에 연결된 장치를 저장하고 수정할 수있는 반면, 기존의 많은 UNIX 및 Unix와 유사한 운영 체제는 커널 소스 트리에 대한 심볼릭 링크 인 / sys.

"시스템에 연결된 장치의 저장 및 수정"은 매우 중요합니다. /sys특별히 마운트 된 가상 파일 시스템으로 사용되는 사실 은 사용자 (및 루트)가 쓸 수없는 이유입니다. 나는 엉망이되는 것을 피할 것이다 /sys. 매우 개방적이고 투명한 Linux를 사용하면 일반적으로 좋은 이유가 없습니다. 보안을 위해 또는이 경우에는 훨씬 덜 위험한 목표를 달성 할 수있는 다른 방법이 있기 때문입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.