Je peux lire/écrire des fichiers dans un lecteur USB externe NTFS.
J'ai des problèmes avec de grands fichiers tels que AVI/MKV stocké sur un lecteur externe NTFS. Ces fichiers apparaissent grisés dans Finder et, toujours à l'aide de Finder, lorsque je "ouvert avec" mon lecteur vidéo, je reçois une erreur étrange:
Item "File.avi" est utilisé par Mac OS X et ne peut pas être ouvert.
Eh bien, j'ai trouvé une solution de contournement: si je traîne et dépose file.avi
Dans mon lecteur vidéo Tout fonctionne bien.
Mais vraiment, je ne peux pas comprendre pourquoi ce problème apparaît.
Veuillez considérer que je n'ai pas installé de pilotes personnalisés NTFS (I.e. Macfuse ou NTFS-3G). Pour monter mon lecteur USB NTFS en r/w, j'ai modifié seulement /etc/fstab
, ajouter la ligne suivante:
LABEL=WD320 none ntfs rw
J'ai trouvé n fil qui traite du même sujet. Les fichiers apparaissent grisés et ne peuvent pas être ouverts avec le même message d'erreur.
Voici les étapes à suivre (espérons-le) la résoudre:
Ouvrez un terminal et courez
xcode-select --install
Ce qui précède installera les outils de ligne de commande Xcode
Ensuite, courez
GetFileInfo /Volumes/WD320/yourfile.avi
Il devrait y avoir des informations sur le type de fichier et le créateur et d'autres attributs de fichiers.
Maintenant, changez ces attributs en appelant
SetFile -c "" -t "" /Volumes/WD320/yourfile.avi
Maintenant le fichier devrait jouer
Je ne pouvais évidemment pas l'essayer (que je ferais normalement), mais peut-être cela aide-t-il.
Item "File.avi" est utilisé par Mac OS X et ne peut pas être ouvert.
Cela signifie que l'article a eu un type de fichier 'brok'
et un code de créateur de 'MACS'
Ensemble pour cela (et non effacé):
Lorsque vous utilisez le Finder pour dupliquer des fichiers, lorsque le Finder crée d'abord le fichier dupliqué, il définit un type de fichier spécial de 'brok'
, et un code de créateur de 'MACS'
(le code de créateur du Finder lui-même), de signifier que le fichier est utilisé. Une fois que le Finder a fini de créer le fichier en double, il réinitialise le type de fichier et le code de créateur à ceux du fichier d'origine.
Ordinairement, vous ne rencontreriez qu'une situation où le 'brok'
Le type de fichier n'est pas réinitialisé si le Finder devait se bloquer ou être d'une manière ou d'une autre interrompue pendant la copie de fichier. Si ce n'est pas le cas pour vous, alors ce que vous voyez pourrait bien être un bug dans le support rw
support du pilote NTFS intégré.
AS SLHCK mentionné, vous devriez pouvoir effacer cette réaction par le Finder en supprimant le type de fichier et le code de créateur du fichier-in-question.
Ma réponse à ce problème est le résultat de la pontage des réponses regroupées de plusieurs autres postes (merci beaucoup) et de ma propre expérience.
L'arrière-plan: j'ai un disque dur externe avec un système de fichiers NTFS. Je veux le brancher à l'occasion. Auparavant, le volume montait "Lecture seulement". Une fois que j'ai reçu cela, les fichiers du volume étaient dans un état inutilisable. Pour obtenir le volume monté correctement et avoir les fichiers accessibles, je devais procéder comme suit:
FYI: Je suis un utilisateur de Kornshell. Ajustez ces commandes à votre coquille préférée.
$ Sudo ksh
<password>
$ mv /sbin/mount_ntfs /sbin/mount_ntfs.orig
$ vi /sbin/mount_ntfs
Puis collez le contenu ci-dessous:
#!/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
Puis:
$ chmod a+x /sbin/mount_ntfs
$ chown root:wheel /sbin/mount_ntfs
Maintenant, chaque fois que je branche le disque, il est monté "lecture/écriture" et les fichiers du disque ont leur statut "Brok". Ce script fonctionne bien pour moi. Votre kilométrage peut varier.
Prendre plaisir --
Merci beaucoup pour cela - j'ai amélioré le script ci-dessus car il n'a pas été exécuté sur ma machine OSX 10.8.4 (a donné des erreurs) et était un peu lent. Il suffit de vérifier lorsqu'un disque en lecture seule est monté ... Changements marqués de JCV CHANGED
:
#!/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 MOUNT_PT=\${$#}
# -- JCV CHANGED: corrected eval expression
echo "\${MOUNT_PT} = \"${MOUNT_PT}\""
echo
echo "Mounting $@"
# --- call the original ntfs mounter with the arguments handed in
/sbin/mount_ntfs.orig "$@"
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
#JCV CHANGED: added check whether file type affected
GetFileInfo -t "${FILE}" | read FILETYPE
if [[ $FILETYPE = "\"brok\"" ]];then
# ---
# --- 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}"
echo "fixing file ${FILE}"
fi
done