ls -F/--classify は、各ファイルを実行可能ファイルとして表示します。

ls -F/--classify は、各ファイルを実行可能ファイルとして表示します。

ls -F分類みんな実行可能ファイルとしてマウントされたパーティションのファイル(ファイル名の末尾にアスタリスクが追加されます)

同じコマンドが別の場所(たとえば、私のホームフォルダ)でも正しく実行されるため、誤動作の原因が何であるかがわかりません。

~
❯ cd /tmp && mkdir somefolder && cd somefolder

/tmp/somefolder 
❯ touch file{0..3}

/tmp/somefolder 
❯ ls -F
file0  file1  file2  file3

/tmp/somefolder 
❯ cd /mnt/sdd2 && mv /tmp/somefolder . && cd somefolder

/mnt/sdd2/somefolder 
❯ ls -F
file0*  file1*  file2*  file3*

なぜこれが起こるのか知っている人がいますか?

答え1

すべてのファイルシステムタイプがファイル権限をサポートしているわけではありません。私はFAT32のようにあなたのようなものではないと思います。このタイプのファイルシステムでは、Linuxはデフォルトですべてを実行可能として扱います。なぜなら、実行ビットを持たない実行ファイルは問題が発生しますが、実行ビットを持つ実行不可能なファイルはそうではないからです。その中にあるファイルを実行できないようにするには、fmask=0111マウントオプションを使用してマウントするだけです。 (またはグループ/他の人がファイルに書き込みまたはアクセスしたくないfmask=0155場合fmask=0177。)一部のファイルに実行ビットがありますが、他のファイルには存在しない場合は、そのファイルを消去して別の権限で再フォーマットする必要があります。 ext4などのファイル権限タイプはサポートされていません(ただし、そうすることで、他のオペレーティングシステム(Windowsなど)はサードパーティのドライバなしではアクセスできません)。

関連情報