Ubuntu - Cihazda boşluk kalmadı (NTFS)


11

Çok fazla veri depolayan bir sunucum var, içinde milyonlarca dosya bulunan birçok iç içe geçmiş dizin tutuyorum.

Bir büyük dizini (~ 700GB) bir diskten diğerine taşımaya çalışırken bir hata alıyorum:

mv /media/storage3/dir /media/storage4/

"No space left on device"

Ayrıca, diskte küçük bir txt dosyası oluşturmaya çalışmak çalışmaz:

Error opening file '/media/storage4/Untitled Document': No space left on device

Çevrimiçi olarak birçok seçeneği kontrol ettim, hiçbiri işe yaramadı.

df -h çıkışı:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sdg7        77G  9.2G   64G  13% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev             32G  4.0K   32G   1% /dev
tmpfs           6.3G  1.4M  6.3G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none             32G   76K   32G   1% /run/shm
none            100M   48K  100M   1% /run/user
/dev/sdg6        19G  6.7G   11G  39% /home
/dev/sdb1       440G  278G  140G  67% /var
/dev/sda1       2.8T  2.0T  764G  73% /media/storage1
/dev/sdh1       2.8T  1.6T  1.3T  56% /media/storage2
/dev/sdi1       2.8T  1.7T  1.2T  60% /media/storage3
/dev/sdf1       2.8T  876G  1.9T  32% /media/storage4

df -i çıkışı:

Filesystem         Inodes    IUsed      IFree IUse% Mounted on
/dev/sdg7         5079040   514215    4564825   11% /
none              8242449        2    8242447    1% /sys/fs/cgroup
udev              8239750      611    8239139    1% /dev
tmpfs             8242449      696    8241753    1% /run
none              8242449        5    8242444    1% /run/lock
none              8242449        4    8242445    1% /run/shm
none              8242449       28    8242421    1% /run/user
/dev/sdg6         1220608   218613    1001995   18% /home
/dev/sdb1        29310976 12863877   16447099   44% /var
/dev/sda1       858436804 41630853  816805951    5% /media/storage1
/dev/sdh1      1356948436 38728057 1318220379    3% /media/storage2
/dev/sdi1      1217505624 34748869 1182756755    3% /media/storage3
/dev/sdf1      2048962648 36308921 2012653727    2% /media/storage4

Çevrimiçi okuma, insanlar benzer sorunların büyük miktarda dosyaya erişim nedeniyle meydana geldiğini ve fs.inotify.max_user_watches'ı yüksek bir miktara ayarlamanın çözebileceğini söyledi, bunu 8192'den 1000000'e çıkardım ama yardımcı olmadı.


Denedin lsof +L1mi man lsof: + L1 formunun bir belirtimi, bağlantısı kaldırılmış olan açık dosyaları seçer.
AB

Mekanizmayı mvkullanmak için hiçbir sebep yoktur inotify. Buraya bir göz atın : bazı işlemler hedef dosya sistemindeki bağlantısız dosyaları kullanıyor olabilir.
John WH Smith

Silinen dosyalar yine de kullanımda df
Stephen Kitt

@StephenKitt Hayır. İnode referansı nedeniyle dosya alt sistemi tarafından tutulan bağlantısız dosyalar. Tamamen kullanılmamış ve bağlantısı kaldırılmış ("silinmiş") olanlar görünmez . Buraya bakın .
John WH Smith

1
ntfsinfo -m /dev/DEVİpuçlarını kontrol edin . NTFS-3G'nin bir parçası. Ayrıca, tek bir NTFS biriminde en fazla 2 ^ 32 dosya olabileceğini unutmayın. NTFS inode sayısını tam olarak bildirmek için herhangi bir yerel linux / unix aracına güvenmem.
mikky

Yanıtlar:


1

Aşağıdakileri çalıştırın:

lsof -s | sort -nrk 7 | head

Çıkışı şöyle göreceksiniz:

firefox    2997                     j   52rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   50rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j    3rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   39rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   31ur     REG              252,0 10485760    5505182 /some/path

Not; yukarıdaki sadece alan kullanımını bulmak için kararınızı kullanmanız gereken bir örnektir.

Çıktı hakkında:

  • Sütun 7 kullanımdaki alanın boyutudur.
  • Sütun 4, dosya tanımlayıcıdır.

Bu alanı geri kazanmak için dosya tanımlayıcıdaki içeriği kaldırabilirsiniz:

cat /dev/null > /proc/2997/fd/50

Açıkçası bu, dosya tanımlayıcısındaki tüm verileri yok edecektir.


Sorunlar tekrar ortaya çıkarsa, bir deneyeceğim
PeterN

0

Tüm verileri kopyalamak için bir katran deneyebilir, daha sonra kaldırabilirsiniz:

cd /media/storage3/; tar cfp - ./dir | ( cd /media/storage4; tar xfp - )

Bu, tüm sahipliği, izinleri ve bağlantıları koruyacaktır


Hiçbir kopya çalıştı .. Sadece bu değil, basit bir boş dosya oluşturmak için boşluk bıraktı
PeterN

0

Daha rsync -avrz storage3 storage4sonra dosyaları kullanmış ve daha sonra silmiş olabilirim, ancak başka bir sorum var, neden Linux (Ubuntu) kullanıyorsanız NTFS dosya sistemini kullanarak bu paylaşımlara sahipsiniz? Bu paylaşımlar bir Windows kutusunda bulunuyorsa, lütfen bu dosyaları robocopy kullanarak Windows'tan Windows'a taşıyın ve bu açıdan mükemmeldir. Robocopy çoğunlukla rsync gibi çalışır.

rsync için sayfa: http://linux.die.net/man/1/rsync

robocopy için yardım sayfası: https://technet.microsoft.com/en-us/library/cc733145.aspx

Linux için 3g-ntfs sürücüleri için destek sayfası: www.tuxera.com/community/open-source-ntfs-3g/

3g-ntfs için SSS: www.tuxera.com/community/ntfs-3g-faq/

Ubuntu kurulumunuzda kullandığınız NTFS dosya sistemi sürücülerinde bir şeyin düzeltilmesi gerektiğinden şüpheleniyorum, hangi NTFS dağıtımını kullanıyorsunuz, diskleri nasıl monte ettiniz, oturduğunuz ubuntu kutusuna yerel olarak bağlı mı yoksa takılı mı SAN'dan iSCSI mi kullanıyorsunuz?

Bu sorun giderme işleminden daha fazlası var, sadece "Dosyalarımı NTFS'de bulunduramıyorum ve taşımak için ubuntu kullanıyorum."


Belirtildiği gibi, hiçbir kopya çalıştı, ben her türlü rsync komutları denedim. Ancak, storage4'te boş bir dosya oluşturmak bile bir istisna döndürdü. \ n NTFS kullanmanın nedeni, pencereleri çalıştıran başka sunucularımız olması ve disklerin bir sunucudan diğerine kolayca aktarılmasına izin vermek istememizdir. Geriye baktığımda, beraberinde getirdiği tüm sorunlar nedeniyle NTFS'yi kullanmazdım, Ubuntu bir NTFS montajı ile çok kararsız. \ n Diskler SATA kablosuyla doğrudan bilgisayardaki anakarta bağlanır, SAN veya başka bir şey yoktur. Linux sistemine doğrudan monte edilir.
PeterN

MS teknolojilerini saf MS kullanırken, NTFS'ye ihtiyacınız varsa bir Microsoft Windows Fileserver kullanın, başka ext4 veya diğer Linux dosya sistemlerine gidin ve diski Smb ile paylaşın.
OMG-1

Kendinize bazı sorunları kaydedin ve asla windows ve linux birleştirmeye çalışmayın. Hiçbir yardım sizi uzun vadede kurtaramaz, sonunda bu her zaman gözyaşlarıyla sonuçlanır. Bu inode veya dosya tanıtıcıları ile ilgili bir sorun gibi görünüyor, ancak NTFS'yi mix ... time bombasına koyduğunuzda. Ortamınızda linux ve NTFS etkileşimi gerekiyorsa, NTFS'yi bir windows sunucusuna koyun ve etkileşimi bu şekilde yapın. Aynı sistem üzerinde birleşmeye çalışmıyorum.
Baazigar
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.