Почему я получаю “Каталог, не пустой”, когда я пытаюсь удалить пустой каталог?

У меня есть этот пустой каталог, но я продолжаю получать следующее сообщение об ошибке:

Cannot remove test: Directory not empty

Я знаю, что этот вопрос задали много времен, но ни один из них не помог.

Я попробовал ls -la для проверки не было никаких скрытых файлов, и, кажется, нет: enter image description here

Я попробовал sudo rmdir test а также sudo rm -rf test, и я просто не знаю что не так.

Я читал, это могла бы быть проблема с файловой системой, но я понятия не имею, как я пошел бы о фиксации этого.

37
задан 16 January 2015 в 00:53

13 ответов

У меня была та же проблема на внешнем жестком диске, я попробовал столько способов использовать командную строку, но я перестал работать каждый раз. Это - то, что работало на меня:

  1. Щелчок правой кнопкой по папке
  2. Перемещение к мусору
  3. Очистить корзину

Да, это глупо, но это работало на меня (я действительно не знаю, как и почему, но проклятая папка больше не существуют)

36
ответ дан 23 November 2019 в 00:17

Вы могли удалить его путем ввода sudo rm -rf {dir_name}. Каталог, возможно, был установлен на разрешение только для чтения. Я надеюсь, что данная команда может удалить папку.

4
ответ дан 23 November 2019 в 00:17

У меня была та же проблема, не удалось удалить каталог, так как он не пустой.

Эта последовательность операций работала для меня.

  1. Сначала из командной строки

    sudo rmdir  --ignore-fail-on-non-empty folder-name-to-be-deleted
    

Приведенная выше команда помогает Ubuntu игнорировать каталог не пустой.

  1. Тогда просто зайдите в папку и Shift + Del. Вот и все.
4
ответ дан 23 November 2019 в 00:17

У меня есть победа 10 + человечность двойная установленная система. И обе системы совместно используют окна parititions.

Недавно, я также столкнулся не могущий удалить пустые папки в тех разделах под человечностью. Я не могу узнать решение решить его в соответствии с Linux.

Однако после того, как я переключаюсь на окна и работаю

chkdsk

через cmd для целевого диска. Проверяются некоторые ошибки. и затем я работаю

chkdsk /F

для фиксации ошибки диска.

После него конец, я могу удалить те папки теперь.

5
ответ дан 23 November 2019 в 00:17

При использовании btrfs это - возможно пустой каталог с ненулевым i_size. Можно проверить ли дело обстоит так с:

stat -c %s test

i_size пустой папки в btrfs должен быть нулем. В моем случае я добрался 6160 с ~/.config/chromium/Default.

предложенное решение состоит в том, чтобы размонтировать файловую систему, работать btrfs check, чтобы подтвердить проблему и проверку на другие проблематичные каталоги, и наконец работать btrfs check --repair для фиксации. Эта операция опасна, тем не менее, таким образом, это - хорошая идея файлам резервных копий сначала.

Источник: проблема FAQ

Btrfs
2
ответ дан 23 November 2019 в 00:17

Решение

  1. GUI Перемещение или сокращение & вставьте папку к папке "Удаленные"
  2. , освобождают мусор

, это сделано.

решение

sudo mv folder_error/ .local/share/Trash

Командной строки можно очиститься с мусором-cli: пустой от мусора или

sudo rm -fr ~/.local/share/Trash/*
3
ответ дан 23 November 2019 в 00:17

У меня была та же проблема о Ubuntu 16.04, и я зафиксировал ее:

  1. освобождение папки "Удаленные"
  2. перезагрузка

Открытие и закрытие файлового менеджера не сделали никакого good— только обработанная перезагрузка.

1
ответ дан 23 November 2019 в 00:17

Если каталог является частью файловой системы, смонтированной с CIFS (иначе самба), и это содержит файл, который является разорванной символьной связью, то ls сбои для упоминания того файла. (Я наблюдаю этот ошибка на клиенте CIFS, выполняющем 14.04.2 LTS и сервер, выполняющий 12.04.5 LTS.)

Так каталог не пуст , но (по CIFS) у Вас нет способа видеть это. Файл может только быть замечен, и таким образом может только быть удален командой, работающей на файловом сервере, размещающем ту файловую систему.

2
ответ дан 23 November 2019 в 00:17

попробуйте эту команду:

sudo lsof | grep deleted 

Регистрация списка, если Ваш каталог все еще используется.: D

Если так, остановите сервис, и Вы будете в состоянии, удаляют каталог.

0
ответ дан 23 November 2019 в 00:17

Эта проблема появляется, когда те папки или файлы не копируются полностью. Это - Ошибка ввода/вывода. Я пытался удалить с Сдвиг + Del или посредством команд, но они не работали. Я попробовал щелчок правой кнопкой и "Перемещение к Мусору", и это работало.

0
ответ дан 23 November 2019 в 00:17

Перед удалением проверьте, не активен ли каталог для какого-либо запущенного приложения. Мне не удалось удалить каталог с таким же сообщением, я выяснил, что причина в том, что каталог был открыт в приложении node.js. После закрытия / выхода из приложения я смог удалить папку.

0
ответ дан 18 January 2020 в 23:42

В моем случае у меня была отдельная команда, которая выполнялась одновременно и добавляла файлы во время удаления; вероятно, rm закончил удаление всего, что планировал удалить, затем попытался удалить папку в конце, увидел, что в ней есть содержимое, а затем выдал ошибку: «Эй, что-то не так».

(Для меня это было связано с запуском кода в последовательном, а не случайном параллельном режиме.)

Вы можете подумать об этом, если имеете дело с этой проблемой.

1
ответ дан 9 June 2020 в 23:42

Может быть, в каталоге или файле в нем установлен неизменяемый бит?

root@lina:~# mkdir test
root@lina:~# chattr +i test
root@lina:~# rmdir test
rmdir: konnte 'test' nicht entfernen: Die Operation ist nicht erlaubt
root@lina:~# lsattr -d test
----i---------e---- test
root@lina:~# chattr -i test
root@lina:~# rmdir test

тогда вам следует удалить неизменяемый бит сначала с ''chattr -i''.

0
ответ дан 24 September 2020 в 14:27

Другие вопросы по тегам:

Похожие вопросы: