728x90

■ 파일시스템에 대하여
1) 유닉스는 모든 것이 파일로 구성되어 있다고 해도 과언이 아닙니다. 심지어 프로세스,메모리 등의 장치도
/dev/proc1 등의 파일로 보입니다.
2) 파일시스템은 디스크를 분할하여 사용하는 단위입니다. 마치 DOS나 윈도에서 c:, d:를 나누어 놓고 사용하듯이
논리적으로 디스크를 분할해 놓은 것으로 봐도 될 듯 합니다.
3) /home라는 파일시스템이 있더라도 그 하위에 /home/data 라는이름으로 파일시스템을 마운트할 수 있습니다.
그리고 각각은  서로 독립적입니다.
4) 내가 어떤파일을 /home/acecms/somefile.dat 만들었는데 이파일의 크기가 무쟈게 크답니다. 그래서 /home라는
파일시스템을 꽉 채웠다면 어떻게 될까요? 그 상위인 /(루트)를 쓸까요? 아님 /tmp (템프)를 쓸까요?
■ 파일시스템의 마운트상태와 사용량 알아보기 df
1) 파일시스템이 생성만 되고 마운트되지 않으면 사용할 수 없습니다. 마운트와 사용량을 보는 명령어는 df 입니다.
$ df -k 이렇게 하면 현재 마운트된 파일시스템과 그 사용량을 알 수 있습니다. (-k는 kilobyte로 보자는 옵션)
(결과)
파일시스템           K바이트    사용    가용   용량    설치지점
/dev/dsk/c0t0d0s0    4129940 3403813  684828    84%    /
swap                 2719896       0 2719896     0%    /tmp
/dev/dsk/c0t0d0s4    4129940  355938 3732703     9%    /home
/dev/dsk/c0t1d0s0    5162118 2616614 2493883    52%    /oracle/app/oracle
■ 디렉토리별 사용량 알아보기 du (disk usage)
1) 하위 디렉토리의 사용량까지 합산하여 볼 수 있는 명령어 입니다.
$ du -ks 는 현재디렉토리 이하의 모든 파일의 크기를 합산하여 k단위로 나타내 줍니다. (결과는 한줄)
$ du -ks * 이렇게 하면 현재디렉토리와 그 이하의 합산읍 보여 줍니다. (결과갯수는 ls -l 과 동일, 값은 다름)
2) 이것은 마치 윈도에서 디렉토리별 속성을 보면 사용량을 보여주듯 아주 유용하게 사용 할 수 있습니다
■ 사용예
1) 첫번째 ■ 의 4)번에 대한 해답은 파일시스템 풀로 파일을 생성하던 작업이 죽어버릴 겁니다. 즉, 결코 다른
파일시스템에 쓰지 않습니다. 파일시스템 풀은 작업자에게 아주 곤란을 발생시킵니다. 그래서 시스템관리자나
사용자는 수시로 파일시스템의 상태를 체크해야만 합니다.
2) 어느날 보니 특정 파일시스템이 100% 풀상태입니다. 어떻게 할까요? (여기서는 /home 이라고 하자구요)
$ df -k 해서 상태를 확인하고 full인 디렉토리로 옮겨간후
$ cd /home 거기서  $ du -ks * 이렇게 치면
3162    acecms
351511  acekhs
7       acemmh
3       acepch
1       aceyjk
1181    dev
위와같이 나타납니다. 이 중에서 가장 많이 쓰고있는 디렉토리 acekhs를 찾고 거기서 또 $ du -ks *
이렇게 해서 추적해 나가면서 필요없는 파일을 지워주면 됩니다.
(주의 : 파일명이 .(dot)으로 시작하는 파일은 추적하지 않는다)

728x90

'*nix' 카테고리의 다른 글

Korn Shell Commands  (0) 2011.10.23
dummy file 생성방법  (0) 2011.03.11
[linux] 메모리 상태 체크 (free)  (0) 2011.03.11
[AIX] errpt 시 보여지는 hdisk에러 문의  (0) 2011.03.11
[AIX] errpt 시스템 에러로그 - dump  (0) 2011.03.11

+ Recent posts