Tràn / tmp được gắn khi có không gian trống trên /


26

Gần đây tôi đã phải đối mặt với một vấn đề "tràn" /tmp. Tôi không có một /tmpphân vùng riêng và có 17% ​​miễn phí /- vậy tại sao tôi lại có một tmphệ thống tập tin tràn ?

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/safesquid-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=d029e04b-11e9-42e1-b1d3-9cde73cb3b67 /boot           ext2    defaults        0       2
/dev/mapper/safesquid-swap_1 none            swap    sw              0       0

mount đầu ra

/dev/mapper/safesquid-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /boot type ext2 (rw)
overflow on /tmp type tmpfs (rw,size=1048576,mode=1777)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)


root@safesquid:~# free -m
             total       used       free     shared    buffers     cached
Mem:          2009        182       1826          0          9         48
-/+ buffers/cache:        124       1885
Swap:          715        130        585
root@safesquid:~# uname -a

Linux safesquid 2.6.32-41-server #94-Ubuntu SMP Fri Jul 6 18:15:07 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Tôi đang chạy Ubuntu 12.04.1 LTS.

Tôi cũng đã kiểm tra df -i, có inodes miễn phí.


Hấp dẫn. Bạn có thể hiển thị đầu ra của mountlệnh và nội dung của / etc / fstab không?
dchirikov

@dchirikov cập nhật bài viết ..
Rahul Patil

Không phải bạn chỉ đơn giản là hết bộ nhớ? ( free -m) Và hạt nhân nào bạn đang chạy? ( uname -a)
gertvdijk

@gertvdijk kiểm tra tôi đã cập nhật những thứ đó ...
Rahul Patil

1
Vui lòng giải thích Linux 2.6.32-41-servertrên "Ubuntu 12.04.1 LTS". Điều này nên được 3.2.0-*. Cung cấp thêm thông tin. Đây có phải là một bản nâng cấp không đầy đủ? Chạy một ảo hóa dựa trên VPS / Container? v.v.
gertvdijk

Câu trả lời:


14

Khi hệ thống khởi động và ổ cứng đầy, không có gì có thể ghi vào / tmp. Vì vậy, trong quá trình init, một tmpfs được tạo và gắn kết. Bằng cách này, hệ thống của bạn có thể khởi động một cách an toàn, bởi vì nó có thể ghi vào / tmp.

Giải phóng không gian đĩa và khởi động lại máy của bạn. (Hoặc đơn giản là unmount / tmp, nếu bạn chắc chắn không có gì sử dụng nó).

Đặt giá trị này thành 0 sẽ vô hiệu hóa thiết lập. , điều mà tôi mong đợi sẽ mang đến rủi ro thất bại, hoặc không thể đăng nhập vào hệ thống.

Tôi nghĩ rằng câu trả lời của Nitesh B. là nguy hiểm và nên tránh.


Có lẽ chúng ta có thể tìm thấy một số cách tự động hoàn nguyên tmp được hỗ trợ ramdisk một khi chúng ta có không gian đĩa?
CMCDragonkai

Tôi giải phóng rất nhiều dung lượng, khởi động lại và bây giờ tôi không thể đăng nhập. Có lẽ thay thế @mpontillo an toàn hơn?
Pablo A

@PabloBianchi Có lẽ, nó đã được đăng 6 tháng sau tôi, vì vậy tôi chưa thực sự đánh giá nó. Nó trông giống như một cách giải quyết tạm thời, và bạn sẽ lại ở cùng một chỗ khi bạn khởi động lại, vì vậy nó sẽ giúp bạn che giấu vấn đề hơn là sửa nó, tôi nghĩ vậy.
user50849

12

Tôi đã phải đối mặt với cùng một vấn đề trên một trong các máy chủ Ubuntu của mình, sau khi tìm kiếm trên mạng tôi đã có giải pháp.

Để bảo vệ chống lại không gian đĩa thấp, một số trình nền tự động "tạo bóng" cho hiện tại / tmp / dir bằng đĩa ram nếu phân vùng gốc hết dung lượng đĩa. Đáng buồn thay, không có sự đảo ngược tự động của quá trình đó một khi đủ dung lượng đĩa trống.

Để giải quyết vấn đề này, hãy bỏ qua / tmp của bạn và chạy lệnh này:

echo 'MINTMPKB=0' > /etc/default/mountoverflowtmp

Điều này chắc chắn sẽ giải quyết vấn đề của bạn.


7
Và điều gì xảy ra vào lần tới khi hệ thống khởi động mà không có đủ dung lượng đĩa một khi bạn đã hướng dẫn nó không tạo tmpfs? Tôi nghĩ rằng lời khuyên của bạn là nguy hiểm và không chính xác cho đại đa số người dùng / trường hợp.
user50849

Cái này đang làm gì vậy echo 'MINTMPKB=0' > /etc/default/mountoverflowtmp?
CMCDragonkai

@CMCDragonkai Xem câu trả lời của tôi để được giải thích về điều đó.
user50849

Làm việc cho tôi sau khi đĩa đã đầy. Đặt thành 0, khởi động lại và đặt lại về 1 sau. Vì vậy, khi đĩa đầy lần sau, hệ thống sẽ hiển thị hành vi tương tự.
Marco Hegenberg

Làm thế nào để bạn "vượt qua / tmp" của bạn? Chạy sudo umount /tmpném lỗi/tmp: device is busy.
Cerin

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.