Vấn đề vượt quá dung lượng ổ đĩa


12

Tôi đang sử dụng Debian Squeeze. Đột nhiên tôi bắt đầu phải đối mặt với một vấn đề là người dùng của tôi không thể tạo thư mục và các tác vụ khác. Chạy mkdir abccho tôi

mkdir: cannot create directory 'abc': Disk quota exceeded

Đĩa cứng của tôi không đầy đủ df -hkết quả là

Filesystem            Size  Used Avail Use% Mounted on
/dev/md1              1.8T   39G  1.8T   3% /
tmpfs                 7.8G     0  7.8G   0% /lib/init/rw
udev                  7.8G  148K  7.8G   1% /dev
tmpfs                 7.8G     0  7.8G   0% /dev/shm
/dev/md0              243M   31M  200M  14% /boot

uname -a đầu ra có thể cần là

Linux server 2.6.32-5-686-bigmem #1 SMP Sun Sep 23 10:27:25 UTC 2012 i686 GNU/Linux

Lưu ý: Nếu tôi đăng nhập bằng root thì mọi thứ đều ổn. Vấn đề này chỉ xảy ra với một người dùng cụ thể

Chỉnh sửa : đầu ra củaquota

Disk quotas for user user (uid 1000): none

đầu ra của quota -g

Disk quotas for group user (gid 1000): 

Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/disk/by-uuid/26fa7362-fbbf-4a9e-af4d-da6c2744263c
8971324* 1048576 1048576    none   43784       0       0  

1
Yêu cầu người dùng chạy quotavà gửi cho bạn kết quả.
Flup

ra ngoài quotađược thêm vào
Gursimran

Thế còn quota -g(hạn ngạch nhóm)? Bạn có hạn ngạch nào trên hệ thống tập tin đó không? Có chạy quotacheckgiúp không?
Gilles 'SO- ngừng trở nên xấu xa'

đầu ra của quota -gbổ sung ở trên. Tôi không biết về hạn ngạch trong hệ thống tập tin của tôi. Tất cả những gì tôi biết là tôi đã đặt tùy chọn hạn ngạch trong webmin cho hai trong số những người dùng tôi đang chạy trên debian của mình. Đột nhiên người dùng này đã bắt đầu đưa ra cho tôi vấn đề về hạn ngạch mà không có bất kỳ thay đổi nào do tôi thực hiện. Về việc quotachecknó không hoạt động, hãy cho tôi-sh: quotacheck: not found
Gursimran

Cách tính lại hạn ngạch -> labs.erweb.it/pub/recalculate_quotas.php
MUY Bỉ

Câu trả lời:


7

Đĩa không đầy, nhưng không gian đĩa cho phép người dùng này đã đầy. Bạn cần kiểm tra quota(1), có lẽ thuyết phục nghi phạm dọn dẹp rác của họ, hoặc trong sự bộc phát của lòng tốt làm tăng nó với edquota(8).


2
Cả hai lệnh bạn yêu cầu tôi chạy đều đưa ra lỗi cú pháp của tôi. edquota(8)đã cho tôi-bash: syntax error near unexpected token '8'
Gursimran

2
Tham (8)khảo phần 8 (các lệnh hành chính) của hướng dẫn sử dụng Unix.
vonbrand

12

Vấn đề trong trường hợp của tôi là tôi đã vượt quá số lượng nút (mục nhập tệp) được hệ thống tệp hỗ trợ. Lệnh

df -i

tiết lộ vấn đề trong VM của tôi:

Filesystem      Inodes   IUsed IFree IUse% Mounted on
/dev/vzfs      1500000 1500000     0  100% /

Xóa một số tệp nhỏ không cần thiết hoặc tăng số lượng nút (phức tạp hơn) sẽ giải quyết vấn đề. Một lệnh như thế này có thể giúp xác định vị trí thư mục nào có nhiều tệp trong đó (trong trường hợp này là tìm kiếm bên dưới / var):

find /var -type d -size +256k

1
Tôi nghĩ rằng lệnh này là tốt hơn : find / -xdev -printf '%h\n' | sort | uniq -c | sort -kn1. Lấy từ câu trả lời sau .
x-yuri

1

Tôi không sử dụng Debian Squeeze, nhưng tôi gặp vấn đề tương tự và có lẽ điều này có thể giúp người khác. Tài khoản người dùng của tôi là dành cho một sinh viên, vì vậy nó thấp hơn đáng kể so với khi tôi chạy Linux từ máy tính ở nhà, nhưng vẫn ... Trong một chương trình tôi đang chạy, tôi đã nhận được đầu ra được ghi vào một tệp. Tôi chạy vào một vòng lặp vô hạn và phải cntrl-C từ chương trình để hủy bỏ nó. Sau khi điều này xảy ra, tôi tiếp tục nhận được lỗi rằng hạn ngạch của tôi đã đầy và không thể lưu bất cứ điều gì. Giải pháp: Xóa tệp đầu ra mà vòng lặp của tôi đã ghi. Sau khi xóa cái này và sửa vòng lặp của tôi, hạn ngạch của tôi đã được giải phóng trở lại.


0

Kiểm tra cài đặt hạn ngạch đĩa của bạn theo những Debian chính thức sau HowTo .


Điều này khá khó hiểu, tôi đã truy cập hướng dẫn này trước đây nhưng nó không giúp ích gì cho tôi.
Gursimran
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.