linux du命令使用

linux du命令使用

一、用法

DU(1) User Commands DU(1)
NAME
       du - estimate file space usage
SYNOPSIS
       du [OPTION]... [FILE]...
       du [OPTION]... --files0-from=F
DESCRIPTION
       Summarize disk usage of each FILE, recursively for directories.
       Mandatory arguments to long options are mandatory for short options too.
       -0, --null
              end each output line with 0 byte rather than newline
       -a, --all
              write counts for all files, not just directories
       --apparent-size
              print apparent sizes, rather than disk usage; although the apparent size is usually smaller,
              it may be larger due to holes in ('sparse') files, internal fragmentation, indirect blocks,
              and the like
       -B, --block-size=SIZE
              scale sizes by SIZE before printing them; e.g., '-BM' prints sizes in units of 1,048,576
              bytes; see SIZE format below
       -b, --bytes
              equivalent to '--apparent-size --block-size=1'
       -c, --total
              produce a grand total
       -D, --dereference-args
              dereference only symlinks that are listed on the command line
       -d, --max-depth=N
              print the total for a directory (or file, with --all) only if it is N or fewer levels below
              the command line argument; --max-depth=0 is the same as --summarize
       --files0-from=F
              summarize disk usage of the NUL-terminated file names specified in file F; if F is -, then
              read names from standard input
       -H equivalent to --dereference-args (-D)
       -h, --human-readable
              print sizes in human readable format (e.g., 1K 234M 2G)
       --inodes
              list inode usage information instead of block usage
       -k like --block-size=1K
       -L, --dereference
              dereference all symbolic links
       -l, --count-links
              count sizes many times if hard linked
       -m like --block-size=1M
       -P, --no-dereference
              don't follow any symbolic links (this is the default)
       -S, --separate-dirs
              for directories do not include size of subdirectories
       --si like -h, but use powers of 1000 not 1024
       -s, --summarize
              display only a total for each argument
       -t, --threshold=SIZE
              exclude entries smaller than SIZE if positive, or entries greater than SIZE if negative
       --time show time of the last modification of any file in the directory, or any of its subdirectories
       --time=WORD
              show time as WORD instead of modification time: atime, access, use, ctime or status
       --time-style=STYLE
              show times using STYLE, which can be: full-iso, long-iso, iso, or +FORMAT; FORMAT is inter‐
              preted like in 'date'
       -X, --exclude-from=FILE
              exclude files that match any pattern in FILE
       --exclude=PATTERN
              exclude files that match PATTERN
       -x, --one-file-system
              skip directories on different file systems
       --help display this help and exit
       --version
              output version information and exit
       Display values are in units of the first available SIZE from --block-size, and the DU_BLOCK_SIZE,
       BLOCK_SIZE and BLOCKSIZE environment variables. Otherwise, units default to 1024 bytes (or 512 if
       POSIXLY_CORRECT is set).
       SIZE is an integer and optional unit (example: 10M is 10*1024*1024). Units are K, M, G, T, P, E, Z,
       Y (powers of 1024) or KB, MB, ... (powers of 1000).
       GNU coreutils online help: Report du translation bugs to
      
PATTERNS
       PATTERN is a shell pattern (not a regular expression). The pattern ? matches any one character,
       whereas * matches any string (composed of zero, one or multiple characters). For example, *.o will
       match any files whose names end in .o. Therefore, the command
              du --exclude='*.o'
       will skip all files and subdirectories ending in .o (including the file .o itself).
AUTHOR
       Written by Torbjorn Granlund, David MacKenzie, Paul Eggert, and Jim Meyering.
COPYRIGHT
       Copyright © 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later
       .
       This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the
       extent permitted by law.
SEE ALSO
       The full documentation for du is maintained as a Texinfo manual. If the info and du programs are
       properly installed at your site, the command
              info coreutils 'du invocation'
       should give you access to the complete manual.
GNU coreutils 8.22 April 2018 DU(1)

二、使用情况

当系统磁盘块满了的时候,就要用到du命令查看是哪个日志文件占用量过大。

三、命令使用

只需掌握du -sh即可

[root@t3 python]# ls                        ####python目录下有两个文件夹
1 2
[root@t3 python]# du -sh 1             ####
查看文件夹1的总占用量
28K    1
[root@t3 python]# du -sh 2             ####
查看文件夹2的总占用量
76K    2
[root@t3 python]# du -sh                ####
查看当前文件夹的总占用量
104K    .
[root@t3 python]#                           

四、实际应用

接收到了zabbix报警:Free disk space is less than 10% on volume /

查看报警图表

linux du命令使用_第1张图片

检查磁盘占用(df -h)

linux du命令使用_第2张图片

/目录下磁盘爆满

查找日志(du -sh)

linux du命令使用_第3张图片

logstash日志文件占用4.5G

清除保留5天

设置定时任务cut_logstash_log

清除elk30天前索引

设置定时任务month_ago_delete.sh

再次查看

linux du命令使用_第4张图片

检测到日志储存大小正常

linux du命令使用_第5张图片

编写定时任务,保留最近一周的统计日志

week_ago_delete.sh

处理结果:

linux du命令使用_第6张图片

磁盘恢复正常

 

 

你可能感兴趣的:(linux操作)