Używam RHEL4 z LVM2. Czasami nawet po usunięciu dużych plików większych niż GB rozmiar partycji nie jest aktualizowany podczas używania df
polecenia.
-bash-3.00$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/sys-root 3.9G 1.4G 2.3G 39% /
/dev/cciss/c0d0p1 251M 19M 219M 8% /boot
/dev/mapper/sys-home 250G 125G 113G 53% /home
/dev/mapper/sys-tmp 3.9G 41M 3.7G 2% /tmp
/dev/mapper/sys-var 3.9G 3.6G 98M 98% /var
Ale kiedy sprawdzam za pomocą du, pokazuje odpowiedni rozmiar
-bash-3.00$ sudo du -sh /var/
179M /var/
widać tam, że wyjście df pokazuje, że użyto partycji / var, która ma być 3.6Gb, ale du pokazuje, że ma tylko 179Mb.
Problem polega na tym, że ani synchronizacja, ani sonda częściowa nie aktualizuje informacji. Ale na pewno ponowne uruchomienie hosta rozwiąże problem. Ale ponieważ jest to serwer produkcyjny, nie mogę go ponownie uruchomić. Czy jest jakiś sposób na ręczne zaktualizowanie informacji o dysku bez ponownego uruchamiania hosta?
rhel
partition
disk-usage
lvm
deleted-files
Kannan Mohan
źródło
źródło
lsof
. Używany / dostępny nie jest przechowywany w tablicy partycji, partprobe (lub jakikolwiek inny typ partycji ponownie) nie pomoże.Odpowiedzi:
Kiedy plik jest usuwany / usuwany / rozłączany, jeśli jest nadal utrzymywany przez dowolny proces, usuwana jest tylko pozycja katalogu dla pliku, a nie dane pliku. Gdy plik zostanie całkowicie zamknięty przez wszystkie procesy, dane są zwracane do puli wolnego miejsca. Jest to funkcja, ponieważ w ten sposób możesz mieć anonimowe pliki.
Aby sprawdzić, czy masz otwarty plik usunięty w systemie plików, uruchom jedno z poniższych poleceń, gdzie
/mount/point
jest punkt montowania (/var
w twoim przypadku):Ten artykuł na temat otwartych niepołączonych plików powinien pomóc w dalszym wyjaśnieniu tego.
źródło
df
nie pokazywałem wolnego miejsca, dopóki nie zrestartowałem procesów serwera. Dzięki!