bi-kip-linux-02

Trong khi quản trị hệ thống Linux, ắt hẳn có nhiều lúc bạn cần tìm kiếm hoặc sắp xếp các file theo dung lượng. Ví dụ như một phân vùng của hệ thống có dung lượng quá lớn, bạn muốn biết các file nào có dung lượng lớn nhất, để cân nhắc có nên xóa đi để giải phóng dung lượng hay không


   Trường hợp 1: Sắp xếp các file theo dung lượng giảm dần trong 1 thư mục

Bạn muốn sắp xếp các file theo dung lượng giảm dần. Hiển thị ra màn hình 5 file đầu tiên

$ ls -laS |grep "^-"| head -5


Kết quả trả ra như sau:

-rw-r--r--. 1 oracle oinstall 3453696911 Oct 7 2019 Oracle Database 12R2.zip
-rw-r--r--. 1 oracle oinstall 616912 Feb 8 06:52 awrrpt_1_27_30.html
-rw-r--r--. 1 oracle oinstall 513819 Feb 8 06:37 awrrpt_1_28_30.html
-rw-------. 1 oracle oinstall 6219 Apr 17 10:58 .viminfo
-rw-------. 1 oracle oinstall 5580 Apr 17 08:35 .ICEauthority

   Trường hợp 2: Lấy ra các file lớn nhất cả ở trong các thư mục con

Đôi khi bạn cần biết các file lớn nhất ở trong toàn bộ các thư mục con. Trường hợp này thực tế rất hay gặp khi một phân vùng (ví dụ /u01) của bạn gần đầy, trong đó có chứa cả file và nhiều thư mục con. Bạn cần phải nhanh chóng biết những file lớn và thư mục cụ thể đang chứa chúng để có phương án xử lý.

$ find /u01 -ls |sort -nrk7|head -5

Kết quả trả ra như sau:

804203 1935372 -rw-r----- 1 oracle oinstall 1981816832 Apr 16 07:27 /u01/app/oracle/oradata/lab/system01.dbf
804274 624652 -rw-r----- 1  oracle oinstall 639639552 Apr 16 07:30 /u01/app/oracle/oradata/lab/sysaux01.dbf
930759 416184 -rw-r--r-- 1 oracle oinstall 426166074 Oct 7 2019 /u01/app/oracle/product/11.2.0/dbhome_1/lib/libserver12.a
930806 398552 -rwsr-s--x 1 oracle oinstall 408110137 Oct 7 2019 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle
788431 274472 -rw-r----- 1 oracle oinstall 281059328 Jan 26 2017 /u01/app/oracle/product/11.2.0/dbhome_1/assistants/dbca/templates/Seed_Database.dfb

Giải thích câu lệnh:

  • sort -nrk7: Sắp xếp giảm dần theo cột thứ 7 (ở đây là cột về dung lượng)
Đọc thêm  Bí kíp Linux #3: Vừa tìm kiếm vừa xóa file

   Trường hợp 3: Tìm kiếm file dựa trên dung lượng

Bạn muốn tìm kiếm các file có dung lượng lớn hơn 10G ?

$ find . -size 10G

Bạn muốn tìm kiếm các file có dung lượng nhỏ hơn 10G ?

$ find . -size 10G

Tìm kiếm TOP 5 directory có dung lượng lớn nhất trong phân vùng /u01

$ du -S /u01 |sort -nr |head -5

3452548 /u01/app/oracle/oradata/lab
1944552 /u01/app/oracle/product/11.2.0/dbhome_1/lib
623464 /u01/app/oracle/product/11.2.0/dbhome_1/bin
411616 /u01/app/oracle/product/11.2.0/dbhome_1/assistants/dbca/templates
344600 /u01/app/oracle/product/11.2.0/dbhome_1/javavm/jdk/jdk8/admin

Bạn muốn biết tổng dung lượng của một phân vùng ?

$ du -sh /u01
11G /u01

Nguồn: https://dangxuanduy.com/

Xin cho tôi được biết, bạn cảm thấy bài viết này như thế nào? Ý kiến của bạn sẽ giúp tôi nâng cao chất lượng bài viết của mình.

    Hãy chia sẻ bài viết này nếu bạn thấy có ích nhé
    0 0 votes
    Article Rating
    Subscribe
    Notify of
    guest
    0 Comments
    Inline Feedbacks
    View all comments