CIFSインストールディレクトリの1つで奇妙な動作が発生しました。たとえば、cp /mnt/source/movie.mp4 /mnt/target/
最初に正常に実行されたときにファイルをディレクトリにコピーしました。ただし、同じコマンドを使用してファイルを上書きしようとすると、cp /mnt/source/movie.mp4 /mnt/target/
システムはPermission Deniedを返します。
ファイル名の問題が原因であるようです。ファイル名を変更するとファイルを上書きできるようです。その後、ファイル名を再び同じ名前に変更し、問題がなくなりました。を使用して元のファイル名と新しい名前を確認しましたが、両方がfile -bi movie.mp4
返されましたvideo/mp4; charset=binary
。ファイル名に何の問題がありますか?
別のテストも試しましたが、ファイルを最初にコピーした後、ターゲットファイルの権限が555に変更されたことがわかりました。 777に変更した後、元のcp
フォルダに戻って実行すると上書きが可能になりました。ただし、最初にファイル名を変更するか、または新しいファイルを直接作成すると、コピーされたターゲットファイルには777権限があり、同様にターゲットフォルダに作成されたすべての新しいファイルに対して777権限が得られます。ソースファイルのファイル名がターゲットフォルダのファイル権限に影響するのはなぜですか?
環境に関するいくつかの情報
宛先フォルダのフォルダ権限はですdrwxrwxrwx 2 root root 0 Apr 12 23:44 20180427031647
。ユーザーを使用してコマンドをroot
実行していますcp
。
- カーネルバージョン: 3.10.0-1062.9.1.el7.x86_64
- CentOSバージョン:7.7.1908(コア)
- cifs-utils-6.2-10.el7.x86_64
fstabマウントパラメータ:
vers=2.0,credentials=/root/.credentials,file_mode=0777,dir_mode=0777,iocharset=utf8