웹마스터 팁

http://java.compuz.com/php/du.php먼저 알고 넘어가야 할 상식?

유닉스계열의 쉘 명령어 중에 디렉토리 용량을 체크하는 #du -sk(sm)이란 명령어가 있습니다.
옵션 -sk는 kbyte로 보여주고 -sm은 Mbyte로 보여줍니다.
바로 텔넷으로 자신의 계정에 접속해서 #du -sm명령을 치면 현재 디렉토리의 용량을 알려줍니다.

놀랍게도 `(역따옴표)를 사용해서 php에서도 유닉스계열 쉘명령어를 실행 시킬 수 있다는 것입니다.
제가 태스트 해 보니 다 되더군요!!

자~ 그럼 아주아주 간단한 용량표시 프로그램을 보시겠습니다.

파일명:du.php
$account=50;          //50은 자신에게 할당된 계정 총 용량입니다. 여기만 수정하면 끝~
$du=`du -sm [절대경로]`;         //역따옴표로 실행하고자 하는 쉘명령어를 묶음
$free=$account-$du;
echo"총계정 용량:".$account."
사용 용량:".$du."
남은 용량:".$free;
?>

아주 아주 간단하죠!!

[주의1]사용용량이 무조건 0으로 나오면은요...
자기 루트 디렉토리(public_html)의 퍼미션및 하위 모든 폴더 디렉토리 퍼미션을
755(pubic권한:read할당)로 하시면 됩니다.

[주의2]`du -sm`은 파일이 업로드된 디렉토리만의 용량을 보여주게 됩니다.
무조건 자신의 총 사용용량을 알고 싶다면 $du=`du -sm 절대경로`; 절대 경로명을 옵션 다음에 추가 하시면 du.php파일이 어디에서 실행되건 자신의 총 사용용량을 보여줍니다.   절대경로라 함은 예를 들어 /home/아뒤/public_html을 말합니다.