mvを使用するときにディレクトリ権限が正しいのに権限が拒否されるのはなぜですか?

mvを使用するときにディレクトリ権限が正しいのに権限が拒否されるのはなぜですか?

ディレクトリ所有者が自分のユーザーに設定され、ユーザー権限が7に設定されているがフォルダを移動しようとすると、権限が拒否されました。どうなりますMusicmv

(Sudoが利用可能であることを知っていますが、問題が何であるかを知りたいです。ここで何か不審な臭いがします。)PS:私はMac OS X El Capitanを使用しています。

ターミナルスクリーンショット

答え1

私はLinux用のWindowsサブシステムを使用しています。別のbashインスタンスでディレクトリを開きました。閉じるとディレクトリを移動できます。

答え2

フォルダ権限は、フォルダ内をa移動しbたときに実行できる操作を決定します。ca

この場合、権限が.最も重要です。

権限は単純な権限よりも複雑ですrwx。フォルダの末尾に1つ、musicこのフォルダの末尾に1つあります。@.+

  • xattr -h@記号を決定するための複雑な権限。
  • getfacl+シンボルを決定するために使用されるACL。

答え3

そのディレクトリのどこかに正しい権限がないファイルが1つ以上あるようです。

だから私がしたことは次のとおりです。

sudo chown -R valmar ./Music
sudo chmod -R 755 ./Music

今大丈夫です。

答え4

削除するディレクトリで一連のプログラムが実行されているときにこの問題が発生しました。ディレクトリを移動するには、まずそのディレクトリで実行されているすべてのプログラムを終了する必要があります。

次のコマンドで変更します。とても慎重ですプログラム名を選択する方法について。参考までに、次のコマンドを使用しました。

ps aux | grep -i [NAME_OF_ANNOYING_PROGRAM] | grep -v grep
# make sure that you are only about to kill the programs you want to kill

ps aux | grep -i [NAME_OF_ANNOYING_PROGRAM] | grep -v grep | awk '{print $2}' | sudo xargs kill -9
sudo mv /usr/local/[DIR_FOR_ANNOYING_PROGRAM] /usr/local/[DIR_FOR_ANNOYING_PROGRAM]2

一般的な手順は次のとおりです。

  1. そのディレクトリで実行されているすべてのプログラムを終了します。
  2. ディレクトリの名前を変更してみてください
  3. 失敗すると強制終了(kill -9多い)警告する) ディレクトリ内のすべてのプログラム
  4. ディレクトリの名前を変更してみてください
  5. 失敗した場合は、プログラムが再実行されていることを確認してください。つまり、別のディレクトリで実行されているいくつかのデーモンによって再起動されたことを確認します。
  6. 迷惑なプログラムを再起動する強制終了デーモン
  7. 面倒なプログラム強制終了
  8. ディレクトリ名の変更
  9. 利益

関連情報