macOSコマンドラインで私のディレクトリを「rm -rf」しようとすると、権限が拒否されました。

macOSコマンドラインで私のディレクトリを「rm -rf」しようとすると、権限が拒否されました。

rm -rfmacOS BigSurで奇妙な動作を見つけました。フォントインストールディレクトリを作成しました。

~/code ❯ ls -la                                                         10:06:54
total 16
drwxr-xr-x  21 fredguth  staff   672 Oct 30 08:47 .
drwxr-xr-x+ 71 fredguth  staff  2272 Nov  5 10:07 ..
drwxr-xr-x   7 fredguth  staff   224 Nov  5 09:57 FontPro  <<<<======== This directory
...

私はfredguthディレクトリの所有者であるuserです。

~/code ❯ whoami                                                  3m 34s 10:21:34
fredguth

努力していますrm -rf FontPro

時には次のように進行します。

rm: FontPro/tfm/MinionPro-MediumItCapt-osf-l1-ly1--lcdfj.tfm: Permission denied
rm: FontPro/tfm/MinionPro-BoldIt-lf-t2a--base.tfm: Permission denied
...
rm: FontPro/dvips/a_fzbwjk.enc: Permission denied
rm: FontPro/dvips: Directory not empty
rm: FontPro: Directory not empty

私は理解できません。私は空でないディレクトリにこれを使用しますが、必ずしも必要でない限り使用したくありませんrm -rfsudo

私をブロックするmacOS設定がありますかrm -rf、それとも他のものがありませんか?

答え1

初心者ミス。コメントと提案:

~/code ❯ ls -ld FontPro/tfm
drwxr-xr-x  8156 root  staff  260992 Oct 26 21:26 FontPro/tfm

私はこのサブディレクトリがルートの所有であることに気づきました。これが犯人です。

~/code ❯ sudo chown -R fredguth FontPro                             33s 10:33:20
~/code ❯ ls -ld FontPro/tfm                                             10:33:39
drwxr-xr-x  8156 fredguth  staff  260992 Oct 26 21:26 FontPro/tfm
~/code ❯ rm -rf FontPro                                                 10:33:44
~/code ❯ 

私は今働いています。

PS @JG7と@roaimaさん、回答を投稿すると、あなたの回答を正解で表示することができます。

答え2

同様の状況がありましたが、フォルダは私の所有でした。わかると、そのフォルダをバインドマウントとして使用するMac用Dockerコンテナを実行していることがわかりました。私のコンテナを停止すると、フォルダを削除できます。

> rm -rf The.Folder.In.Question/
rm: The.Folder.In.Question/: Permission denied
> docker ps
CONTAINER ID   IMAGE                           COMMAND                  CREATED          STATUS          PORTS                     NAMES
26072a9ee2d7   logtestmicroservice             "dotnet watch"           12 minutes ago   Up 12 minutes   0.0.0.0:55008->8080/tcp   LogTestMicroService_container
bcf515e5792e   logtestmicroservice_generator   "dotnet watch -- run…"   13 minutes ago   Up 13 minutes   0.0.0.0:55007->8080/tcp   LogTestMicroService_generator_container
> docker stop 26072a9ee2d7 bcf515e5792e
26072a9ee2d7
bcf515e5792e
> rm -rf The.Folder.In.Question/ && echo good
good

関連情報