Jak mogę usunąć ten katalog? Zrobiłem to fsck
i znalazłem śmieci, przejrzałem te pliki i nie było nic ważnego. Więc próbowałem usunąć zawartość /lost+found
i wszystko poszło oprócz tego dziwnego katalogu. Pomyślałem, że ustawienie go /tmp
(mogę przenieść ten katalog na wolumin) spowoduje usunięcie go przy następnym restarcie, ale nadal będzie dostępne zarówno po ponownym uruchomieniu, jak i kolejnym fsck
.
Ponieważ wydaje się, że problem jest niski, a gra z prawem własności i uprawnieniami nie wystarczy, sprawiłem, że możesz sam odtworzyć problem. Cieszyć się!
- Jest to bezpieczne, będziesz mógł umountować obraz, aby pozbyć się tych katalogów na swoim komputerze ;
- To nie jest izo-obraz, to wynik
dd if=/dev/sda1 of=/files/broken.iso
;
Zrobiłem 15 MB archiwum z obrazem o wielkości ~ 1,2 GB. Możesz go pobierać i stosować za pomocą następujących poleceń:
cd /tmp
wget https://dl.dropboxusercontent.com/u/22701362/broken.tar.xz
tar xvf broken.tar.xz
mkdir test
sudo mount broken.iso test
cd test
Byłyby dwa katalogi (podczas tworzenia tego obrazu wydaje się, że na moim dysku są dwa takie katalogi):
/tmp/test> tree
.
├── 1
│ └── plexus-component-annotations-1.5.5.jar.sha1 [error opening dir]
└── 2
└── #1589030 [error opening dir]
4 directories, 0 files
Powodzenia w usuwaniu tych dwóch katalogów:
/tmp/test> sudo rm -rf *
rm: cannot remove '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
rm: cannot remove '2/#1589030': Operation not permitted
/tmp/test> sudo chown -R root:root *
chown: changing ownership of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chown: cannot read directory '2/#1589030': Permission denied
/tmp/test> sudo chmod -R 777 *
chmod: changing permissions of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chmod: changing permissions of '2/#1589030': Operation not permitted
chmod: cannot read directory '2/#1589030': Permission denied
/tmp
na tym samym woluminie? Czy możesz opublikować wynikdf
? Ponadto, proszę opublikować wyniksudo perl -MFile::Path -e 'rmtree("/tmp/foo") || die "$!"'
na wypadek, gdybyśmy otrzymali bardziej informacyjny komunikat o błędzie.df
wynik pokazuje, że twój / tmp` jest w rzeczywistości normalnym katalogiem,/
a nie tmpfs, który jest domyślną konfiguracją. To zaskakujące, ale wyjaśnia zarówno, dlaczego można skopiować katalog/tmp
i dlaczego przetrwa ponowne uruchomienie.perl
Wyjście naprawdę nie dodać dużo nie, ale warto było spróbować. Trzymam się tutaj słomek./tmp
domyślnie jest normalny katalog. Odbywa się to, aby zapobiec jego wypełnieniu do 100% i zaoszczędzić pamięć RAM. Jest czyszczony podczas uruchamiania. To zachowanie istnieje przez długi czas.Odpowiedzi:
Jedną z możliwości jest niezmienna flaga w przypadku systemu plików ext. Zobacz wyjście
lsattr
polecenia. Jeśli jesti
obecny, można go usunąć za pomocąchattr -i filename
W tym przypadku dzieje się coś jeszcze
To wydaje się działać
źródło
sudo
? Byłbym wdzięczny za pobranie obrazu, zamontowanie go i wypróbowanie.dd if=/dev/sda1 of=broken.iso
spróbuj zostać użytkownikiem, który go posiada, aby go usunąć
źródło
sudo -u '#6666' -g '#19311' rm -rf \#1589030
rm: cannot remove '#1589030': Permission denied
sudo -u '#6666' -g '#19311' chmod 777 \#1589030
chmod: cannot access '#1589030': Permission denied