web-dev-qa-db-ja.com

空のディレクトリを削除しようとすると、「Directory not empty」というメッセージが表示されるのはなぜですか?

この空のディレクトリがありますが、次のエラーメッセージが表示されます。

Cannot remove test: Directory not empty

私はこの質問が何度も聞かれたことを知っていますが、誰も助けませんでした。

ls -laを試して、隠しファイルがないことを確認しました。 enter image description here

Sudo rmdir testSudo rm -rf testを試しましたが、何が間違っているのかわかりません。

私はそれがファイルシステムに問題があるかもしれないと読みましたが、私はそれをどのように修正しようとするのか分かりません。

36
rbrick

外付けハードディスクでも同じ問題が発生しました。コマンドラインを使用してさまざまな方法を試しましたが、毎回失敗しました。それが私のために働いたものです:

  1. フォルダーを右クリック
  2. ゴミ箱に移動
  3. 空のごみ箱

はい、それはばかげていますが、私にとってはうまくいきました(方法と理由は本当にわかりませんが、いまいましいフォルダはもう存在しません)

36
Marco Ottina

Win 10 + Ubuntuデュアルシステムがインストールされています。そして、両方のシステムがWindowsのパーティションを共有しています。

最近、ubuntuの下のパーティションにある空のフォルダーを削除できなくなった。 Linuxでそれを解決する解決策を見つけることができません。

ただし、ウィンドウに切り替えて実行した後

chkdsk

ターゲットディスクのcmd経由。いくつかのエラーがチェックアウトされました。そして、私は走る

chkdsk /F

ディスクエラーを修正します。

終了後、これらのフォルダーを削除できるようになりました。

5
e-cloud

Sudo rm -rf {dir_name}と入力して削除できます。ディレクトリーは読み取り専用許可に設定されている可能性があります。指定されたコマンドでフォルダを削除できることを願っています。

4
Wolverine

空ではないため、ディレクトリを削除できないという同じ問題がありました。

この一連の操作がうまくいきました。

  1. 最初にコマンドラインから

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

上記のコマンドは、ubuntuがディレクトリが空でないことを無視するのに役立ちます。

  1. 次に、フォルダに移動し、Shift + Delを押します。これで完了です。
4
Amit

GUIソリューション

  1. フォルダーをゴミ箱フォルダーに移動または切り取りと貼り付け
  2. ゴミ箱を空にする

されております。

コマンドラインソリューション

Sudo mv folder_error/ .local/share/Trash

trash-cliでクリアできます:trash-emptyまたは

Sudo rm -fr ~/.local/share/Trash/*
3
Kadir Y.

Btrfsを使用している場合は、i_sizeがゼロ以外の空のディレクトリである可能性があります。これが事実かどうかは、次の方法で確認できます。

stat -c %s test

Btrfsの空のフォルダーのi_sizeはゼロでなければなりません。私の場合、~/.config/chromium/Defaultで6160を取得しました。

推奨される解決策は、ファイルシステムをアンマウントし、btrfs checkを実行して問題を確認し、他の問題のあるディレクトリを確認し、最後にbtrfs check --repairを実行して修正することです。ただし、この操作にはリスクが伴うため、最初にファイルをバックアップすることをお勧めします。

ソース: Btrfs Problem FAQ

2
wzhd

Ubuntu 16.04でも同じ問題が発生し、次のように修正しました。

  1. ごみ箱を空にする
  2. 再起動

ファイルマネージャを開いて閉じてもうまくいきませんでした。再起動のみが機能しました。

1
dale

ディレクトリがCIFS(別名samba)でマウントされたファイルシステムの一部であり、壊れたシンボリックリンクであるファイルが含まれている場合、lsはそのファイルについて言及しません。 (14.04.2 LTSを実行しているCIFSクライアント、および12.04.5 LTSを実行しているサーバーでbugを確認しています。)

したがって、ディレクトリは空ではありませんが、(CIFSでは)それを確認する方法はありません。ファイルは、そのファイルシステムをホストしているファイルサーバーで実行されているコマンドによってのみ表示されるため、削除することしかできません。

1

このコマンドを試してください:

Sudo lsof | grep deleted 

ディレクトリがまだ使用されている場合は、リストを確認してください。 :D

その場合は、サービスを停止すると、ディレクトリを削除できます。

0
ashwin2011

この問題は、これらのフォルダーまたはファイルが完全にコピーされない場合に発生します。入力/出力エラーです。で削除しようとしました Shift+Del またはコマンドを使用しましたが、これらは機能しませんでした。右クリックして「ゴミ箱に移動」を試してみましたが、うまくいきました。

0
lhodeniz