Kök izinleri ve kesme, dd, mv, cp ve rm başarısız olduğunda aşırı kotayı aşarak dosya nasıl kaldırılır?


2

Kök izinlerinin olmadığı ve yukarıdakilerin hepsinin aynı hataları içeren bir dosyayı silmeme izin vermediği bir dosya sistemi üzerinde çalışıyorum:

$ >file1
$ -bash: file1: Disk quota exceeded

$ dd count=1 if=/dev/random of=file1
$ dd: opening `file1': Disk quota exceeded

$ rm file1
$ rm: cannot remove 'file1': Disk quota exceeded

$ cat /dev/null > file1
$ -bash: file1: Disk quota exceeded

Ayrıca, bir grup dosyayı bu denedim:

$ mv file1 f
$ mv: cannot move `file1` to `f`: Disk quota exceeded

düzenleme şimdi de denedik:

$ cp /dev/null file1
$ cp: cannot create regular file 'file1': Disk quota exceeded

boşuna değil (aynı hata mesajı alındı)

Bana sadece reddedilen bir hata verdiğim başka dosyalar var ama bunun için kök izinlerim olmadığı için bazılarını düşünüyorum. Her neyse, yazma izinlerim olan çok sayıda dosya var, bu yüzden gerçekten bu dosyaları silmeye zorlamak için bir yola ihtiyacım var. Kullanabileceğim herhangi bir geçici çözüm var mı?

Bu dosya sistemi için df -s çıktısı:

Filesystem            Size  Used Avail Use% Mounted on
zfs1.local:/volatile  699G  699G     0 100% /nfs/volatile

Disk kotası aşıldığı için dosyayı açmanıza bile izin vermiyor mu? Vay. Bozuk bir dosya sistemine benziyor. Söyleyebileceğim kadarıyla, tüm bağlamanız şimdi sadece salt okunur. İlgili sistem yöneticisinden sizin için en az bir büyük dosyayı çıkarması veya kotanızı geçici olarak gidermesini istemeniz gerekir.
allquixotic 27:14

@allquixotic Bu tam olarak korktuğum şey: / Ama bence haklısın
imkendal

mvHerhangi bir dosyayı yeniden adlandırabilir misiniz ( )? Öyleyse, bir grup dosyayı tek karakterlik adlarla yeniden adlandırmayı deneyin. Bu, meta veri bloklarında rmbir dosya bırakmanıza yetecek kadar alan açabilir . Yeterli uzun dosya adınız varsa, bir kilobayt veya daha fazlasını serbest bırakmanız gerekir. Bir dosyayı kısaltmak veya silmek için ne kadar özgür olmanız gerektiğinden emin değilim, ancak sizi bir yere götürmelidir.
allquixotic

Birkaç saat önce çaresizlik içinde zeki olduğumu düşünerek denedim, ama ne yazık ki aynı hatayla da başarısız oldu.
imkendal

Hangi dosya sistemi bu arada? Biliyor musun? Dosya sisteminde, herhangi bir şey yapmak için yer kullanması gerektiği konusunda bir hata olabilir . Cyrus'un GERÇEKTEN yayınladığı cevap işe yaramalıydı, çünkü ZFS yazma üzerine kopyalandı ve ZFS bile çalışmasına izin verdi.
allquixotic

Yanıtlar:


1

Benim durumumda, kota% 100 doluyken yukarıdakilerin hiçbiri işe yaramadı. Neyse ki / tmp dolu değildi, ben de yaptım:

rsync --remove-source-files -azv file1 /tmp

ve sorunu çözdü.


0

'Sil' komutunu kullanarak sistemi kurtardım. Bazı büyük dosyalarda silme işlemini yürütün ve ardından 'rm' komutunu kullanmaya çalışın. Çalışacak.


1
Neden sen all-hiç ayrıntılara girebilir wipezaman işe rmdeğil mi?
bertieb

Allquixotic'in soruya göre yorumladığı gibi, ZFS yazma üzerine yazılmış bir dosya sistemidir, bu nedenle bir dosya silme işlemi bir dosya silinmeden önce disk üzerinde biraz daha fazla alana ihtiyaç duyar. Bir dosyayı kaldırmadan önce meta verileri yazması gerekir, oysa silme komutu aslında dosya içeriğini kurtarılamaz biçimde kaldırır. Diskte fazladan boşluk gerektirmez. Bu nedenle, "Disk kotası aşıldı" koşulu silinmeyi etkilemez .
johny
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.