ํ์ผ์ด๋ ํ์ผ ์์คํ ์ ์ํ๋ฅผ ์ถ๋ ฅํ๋ linux stat ๋ช ๋ น์ด ์ฌ์ฉ๋ฒ
stat ๋ช ๋ น์ด๋ ํ์ผ์ด๋ ํ์ผ ์์คํ ์ ์ํ ์ ๋ณด๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ผ๋ก stat,ย statfs ์ System call ํธ์ถ๊ณผ ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
์ฌ์ฉ๋ฒ
์ํ ์ถ๋ ฅ
์ต์ ์์ด stat ๋ช ๋ น์ด ๋ค์ ํ์ผ์ ์ ๋ ฅํ๋ฉด ํด๋น ํ์ผ์ ์์ธ ์ ๋ณด๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
$ stat /etc/redhat-release File: /etc/redhat-release Size: 45 Blocks: 8 IO Block: 4096 regular file Device: ca02h/51714d Inode: 9470 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Context: system_u:object_r:etc_t:s0 Access: 2021-02-04 04:57:53.710565576 +0000 Modify: 2020-09-23 09:38:30.000000000 +0000 Change: 2020-11-10 04:11:24.916712115 +0000 Birth: -
์ถ์ฝ ์ถ๋ ฅ
-t ์ต์ ์ ์ฌ์ฉํ๋ฉด ์ถ์ฝํด์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
$ stat /etc/redhat-release -t /etc/redhat-release 45 8 81a4 0 0 ca02 9470 1 0 0 1612414673 1600853910 1604981484 0 4096 system_u:object_r:etc_t:s0
file systemย ์ถ๋ ฅ
-f ์ต์ ์ ์ฌ์ฉํ๋ฉด statfs ์ฒ๋ผ ํ์ผ ์์คํ ์ํ๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
$ stat /etc/redhat-release -f File: "/etc/redhat-release" ID: ca0200000000 Namelen: 255 Type: xfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 2618363 Free: 774778 Available: 774778 Inodes: Total: 5241792 Free: 5028369
ํน์ ์ ๋ณด๋ง ์ถ๋ ฅ
stat -c=FORMAT ์ต์ ์ ์ฌ์ฉํ๋ฉด ํน์ ์ ๋ณด๋ง ์ถ๋ ฅํ ์ ์์ต๋๋ค. FORMAT ์ % ๋ค์ ํ์ ์๋ฅผ ์ฃผ๋ฉฐ ์ ์ฒด ๋ชฉ๋ก์ stat --help ๋ช ๋ น์ด๋ก ํ์ธํ ์ ์์ต๋๋ค.
8์ง์๋ก ๊ถํ ํ์
%a ๋ octal ํ์์ผ๋ก ํ์ผ์ permission ์ ์ถ๋ ฅํ๋ฉฐ %n ์ ์ ๋ ฅ์ผ๋ก ์ค ํ์ผ ๊ฒฝ๋ก๋ฅผ ํ์ํฉ๋๋ค. ๋ค์ ๋ช ๋ น์ด๋ /etc/redhat-release ํ์ผ์ 8์ง์ ํ์ ๊ถํ์ ํ์ํฉ๋๋ค.
$ stat -c "%a %n" /etc/redhat-release 644 /etc/redhat-release
hard link ๊ฐฏ์ ํ์
%h ๋ ํ์ผ์ ํ๋ ๋งํฌ(hard link) ๊ฐฏ์๋ฅผ ํ์ํ๋ ์ง์ ์์ ๋๋ค. ๋ค์ ๋ช ๋ น์ด๋ /etc/redhat-release ํ์ผ์ ๋งํฌ ๊ฐฏ์๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
$ stat -c "%h %n" /etc/redhat-release 1 /etc/redhat-release
ln ๋ช ๋ น์ด๋ก hard link ๋ฅผ ์์ฑํ์ ๋ค์ ์คํํด ๋ณด๋ฉด ๋งํฌ ๊ฐฏ์๊ฐ ๋์ด๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
$ sudo ln /etc/redhat-release link1
$ stat -c "%h %n" /etc/redhat-release 2 /etc/redhat-release
atime, mtime, ctime ์ ๋ณด ํ์
%x , %y, %z ์ง์ ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ๋์ด ์ฝ๊ธฐ ์ข๊ฒ ํ์ผ์ atime, mtime, ctime ์ ํ์ํด ์ค๋๋ค.
$ stat -c "%x %y %z" file1 2021-02-28 07:40:43.918599333 +0000 2021-02-28 07:40:43.918599333 +0000 2021-02-28 07:40:43.918599333 +0000