この問題に対する私の回答は、他のいくつかの投稿から得られた回答(感謝の意)と私自身の経験をまとめた結果です。
背景:NTFSファイルシステムの外付けハードドライブがあります。たまに差し込みたいです。以前は、ボリュームは「読み取り専用」でマウントされていました。修正すると、ボリューム上のファイルは使用できない状態になりました。ボリュームを正しくマウントしてファイルにアクセスできるようにするために、次のことを行う必要がありました。
参考:私はKornshellユーザーです。これらのコマンドを好みのシェルに調整します。
$ sudo ksh
<password>
$ mv /sbin/mount_ntfs /sbin/mount_ntfs.orig
$ vi /sbin/mount_ntfs
次に、以下の内容を貼り付けます。
#!/bin/ksh
# --- direct all script stdout to a temp file for examination
exec > /tmp/ntfs
# --- connect all stderr to stdout
exec 2>&1
# --- get the last argument on the command line - this is the mount point
eval echo \$$# |
read MOUNT_PT
echo "\${MOUNT_PT} = \"${MOUNT_PT}\""
echo
echo "Mounting $@"
# --- call the original ntfs mounter with the arguments handed in
/sbin/mount_ntfs.orig -o rw "$@"
echo "Mounted $@"
# --- show the result of the mounting operation
mount
# --- fix files at the newly mounted MOUNT_PT that are in the 'brok' state
find "${MOUNT_PT}" -type f |
while read FILE; do
# ---
# --- use 'SetFile' to modify the file status
# ---
# --- this command line assumes the 'SetFile' command has been installed
# --- and is available in your PATH
# ---
SetFile -c "" -t "" "${FILE}"
done
次に:
$ chmod a+x /sbin/mount_ntfs
$ chown root:wheel /sbin/mount_ntfs
これで、ディスクを接続するたびに、ディスクが「読み取り/書き込み」でマウントされ、ディスク上のファイルの「状態」がリセットされます。このスクリプトは私にとってはうまくいきます。あなたのマイレージは異なる場合があります。
楽しい -