Làm cách nào để kiểm tra dung lượng đĩa trong / tmp?


8

Tôi đang làm việc trên máy chủ bên ngoài - chỉ cần thực hiện một số web-api ở đó. Hôm nay khi tôi muốn sử dụng api php đã trả về lỗi sau:

Unknown: write failed: No space left on device (28)

Vì vậy, tôi đã tìm ra rằng tmp là đầy đủ:

~# df -h /tmp
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       102G   97G     0 100% /

Vì vậy, tôi đoán rằng tôi phải xóa một số rác trong tmp - nhưng trước hết tôi muốn biết điều gì gây ra vấn đề, ý tôi là cái gì chiếm quá nhiều bộ nhớ trong tmp? Có lẽ một cái gì đó đang tràn ngập tmp dir bằng cách nào đó? Tôi không phải là chuyên gia về quản trị hệ thống Tôi chỉ viết web-api ... Có phải bình thường kích thước tmp là không? Có lẽ nó chỉ xảy ra theo thời gian?

Kết quả lệnh:

du -sh /tmp/* | sort -h
0       /tmp/tmpEZIyDT
0       /tmp/unity_support_test.0
4.0K    /tmp/amazoncookie.txt
4.0K    /tmp/at-spi2
4.0K    /tmp/filewhHOLH
4.0K    /tmp/keyring-b3ZOTY
4.0K    /tmp/mc-domator
4.0K    /tmp/mc-root
4.0K    /tmp/pulse-2L9K88eMlGn7
4.0K    /tmp/pulse-PKdhtXMmr18n
4.0K    /tmp/ssh-thimUVhk2748
8.0K    /tmp/pulse-5N1YM8s2cT0i

Lạ thật - vì tôi hiểu không có nhiều thứ trong tmp dir ... có lẽ một thứ khác đang chiếm quá nhiều dung lượng đĩa - làm thế nào tôi có thể kiểm tra nó?

Câu trả lời:


9

Lệnh đầu tiên chỉ ra rằng / tmp thực sự nằm trên cùng một hệ thống tệp với / (nghĩa là mọi thứ khác). Nếu phân vùng gốc của bạn đã đầy, có thể các thứ khác (như / var / log) đang chiếm dung lượng.

Một cách tốt để tìm thấy mọi thứ là làm

du -sc * .[^.]* | sort -n

để tìm những thư mục lớn. Sau đó, bạn có thể tiếp tục cd vào các thư mục thấp hơn và chạy lại lệnh để thu hẹp mọi thứ.


1
Chạy một kiểm tra nhanh về nội dung của /var/log/- Nếu một chương trình đã phát ra hàng gigabyte lỗi không được giám sát, điều này có thể nhanh chóng lấp đầy một ổ đĩa.
Darth Android

cảm ơn - đó là ý tưởng tốt về tìm kiếm các tệp bị ẩn - vấn đề là tệp rất lớn ".xsession-lỗi" trong một số người dùng tại nhà - bây giờ tôi mới xóa nó
user166241

3

Trên một bản phát hành gần đây:

du -sh /tmp/* | sort -h

Trên một bản phân phối cũ hơn:

du -csm /tmp/* | sort -n

Tôi đã chỉnh sửa bài đăng - kết quả của lệnh đầu tiên là lạ ...
user166241

2

Kiểm tra nếu bạn không hết inodes.

# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda3            1236992 1236992       0  100% /
tmpfs                1007716       1 1007715    1% /dev/shm
/dev/sda1              38456      45   38411    1% /boot

Nhận xét trên là để tham khảo cho ppl có cùng vấn đề
Zuzu

0

Đây là những gì tôi có trong bashrc của tôi. Sẽ cho bạn một ý tưởng tốt về những gì là "lớn" và sau đó bạn có thể điều tra từ đó. Sử dụng nó khi chúng tôi có người dùng thích sử dụng hệ thống / tmp thay vì không gian tmp được chia sẻ của chúng tôi.

function get_big_usage () {
    echo -e "\n"
    du -ks /tmp/* | sort -nr | head
    echo -e "\n"
    du -ks /var/* | sort -nr | head
    echo -e "\n"
    du -ks /home/* | sort -nr | head
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.