2014-09-24 2 views
-1

C 프로그램을 사용하면 디렉토리에서 사용 가능한 크기를 확보 할 수 있습니까?리눅스의 디렉토리에서 사용 가능한 여유 공간 얻기

이 기능을 수행하는 데 사용할 수있는 라이브러리 기능은 무엇입니까?

+1

하시기 바랍니다. 할당량이 있습니까? –

+0

또한 프로그램 또는 라이브러리입니까? –

+0

프로그램을 사용하여이 작업을 수행하려고합니다. – m4n07

답변

3

주어진 디렉토리은 여유 공간이있는 (즉, 디렉토리를 포함)를 file system입니다 여유 공간이 없습니다.

당신은 조회 할 수있는 df(1) 명령을 사용하여 (당신이 popen(3)"/bin/df ."을 수도 있지만, 내가 그 일을하지 않는 것이 좋습니다)와 statfs(2) (및 기타) 시스템 콜 (들).

syscalls(2)를 참조하고, 아마도 제한 할당량 관련

Advanced Linux Programming는 관련 repquota(8), 또는 자원 제한을 참조 읽기 배쉬와 getrlimit(2)ulimit 내장을 참조하십시오. 어쩌면 /proc/ 의사 파일을 사용하십시오. proc(5)

BTW를 참조하십시오. 실제로 그 한계는 단지 지표입니다 : 다른 프로그램과 프로세스도 디렉토리를 채울 수 있습니다 (예 : 프로그램이 쿼리하는 순간과 쓰는 순간 사이). 데이터).

+0

기술적으로는 맞지만 개념은 "내 sysadmin이 홈 디렉토리에서 사용할 수있는 공간의 양을 제한했습니다"라는 문구를 따라있을 수 있습니다. –

+0

@true. 예, 디스크 할당량으로 인해 작업이 복잡해집니다. –

관련 문제