1 votes

L'AFP ne peut pas écrire à cause d'un volume verrouillé

J'essaie d'écrire le contenu de mes dossiers partagés sur mon Raspberry Pi via AFP. Cependant, je reçois toujours la même erreur/alerte concernant les permissions et le volume verrouillé :

Screenshot

Je suis presque sûr que les permissions sont correctes, je me suis connecté en tant qu'utilisateur par défaut de pi et j'ai utilisé chown -R pi /mnt/seagate sur le pi pour posséder mon montage de disque dur pour l'utilisateur du pi.
Cela n'a pas fonctionné, alors j'ai essayé de définir les permissions pour mon dossier /var/www avec chmod -R 777 /var/www ce qui donne lieu à la même erreur que celle illustrée ci-dessus.

En vérifiant les permissions dans le Finder pour le dossier personnel (ce qui ne devrait pas poser de problème, étant connecté en tant qu'utilisateur pi), je vois que tout le monde a les permissions RW.

screenscreen

Je pense que le problème ne vient pas de mon pi (d'où la raison pour laquelle j'ai posté ceci ici et non sur raspberrypi). Je pense qu'il doit y avoir un problème avec ma configuration AFP sur mon Mac (notez également que j'ai déjà utilisé cette méthode de partage de dossiers de pi avec AFP vers mac et que cela a toujours fonctionné auparavant).
J'ai joint une capture d'écran de ma configuration afp ci-dessous, car je n'ai aucune idée de ce qui pourrait être incorrect. Si nécessaire, je peux également fournir les configurations pour netatalk (protocole afp sur le pi).

afp_conf_screen

1voto

klanomath Points 63400

Il est probable que certaines permissions et/ou les paramètres sont mal définis sur votre Raspberry. Je soupçonne le disque externe ou un dossier partagé sur le disque externe d'avoir des permissions incorrectes. Comparez cela avec votre dossier personnel sur le Raspberry où vous avez probablement un accès complet.

Veuillez essayer ceci dans un premier temps. Vous pourrez appliquer des paramètres/configs spéciaux plus tard. Ci-dessous, je suppose que votre disque externe est sdb et contient un volume ext4 sdb1 avec le nom seagate. Le volume/partition lui-même doit no n'appartiennent pas à pi mais à Root !

Premier arrêt netatalk avec :

sudo /etc/init.d/netatalk stop

Démontez votre volume externe après avoir vérifié les volumes montés avec df o cat /proc/mounts pour obtenir l'identifiant de votre disque externe :

sudo umount /dev/sdb1

D'abord, nous devons fixer votre point de montage :

Les autorisations suivantes devraient s'appliquer (à vérifier auprès de ls -la sur le Raspberry) :

Pour /mnt

drwxr-xr-x  3 root root  4096 Apr  6 13:52 mnt

Vérifiez que le dossier /mnt contient un dossier seagate avec ls -la :

drwxr-xr-x  3 root root 4096 Apr  6 13:52 .
drwxr-xr-x 22 root root 4096 Apr  6 11:21 ..
drwxr-xr-x  8 root root 4096 Apr  6 14:14 seagate

Ajoutez le dossier si nécessaire avec sudo mkdir /mnt/seagate et changez les permissions et la propriété en conséquence avec chown et chmod.

Obtenez l'UUID de tous les volumes avec sudo blkid . Vous devriez obtenir un résultat similaire à celui-ci :

/dev/sda5: UUID="7a7dd5de-758e-4488-b78d-dd7f7c61cfbc" TYPE="swap" 
/dev/sda1: UUID="9b4285a8-3290-469a-91f3-7517f286856e" TYPE="ext4" 
/dev/sdb1: LABEL="seagate" UUID="522e7f4c-ee90-4265-82c1-e46f48f969b5" TYPE="ext4"

sda1 et sda5 sont votre partition principale interne et votre partition d'échange. sdb1 est le premier volume de votre disque externe.

Vérifiez avec sudo nano /etc/fstab si votre fichier fstab monte le volume du disque externe à /mnt/seagate. Remplacez les UUIDs ci-dessous par ceux trouvés dans votre installation.

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=9b4285a8-3290-469a-91f3-7517f286856e /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=7a7dd5de-758e-4488-b78d-dd7f7c61cfbc none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
UUID=522e7f4c-ee90-4265-82c1-e46f48f969b5" /mnt/seagate/     ext4    errors=remount-ro 0       1

Remonter sdb1 avec sudo mount /dev/sdb1 et vérifiez le point de montage avec df . Il devrait ressembler à ceci :

...
...
/dev/sdb1   8256916  170156   7667332    3% /mnt/seagate

Maintenant, créez un dossier de base pour l'utilisateur pi :

sudo mkdir /mnt/seagate/pi

Déplacez tous vos dossiers personnels vers pi avec :

sudo mv /mnt/seagate/folder sudo mv /mnt/seagate/pi/folder

Exemple :

sudo mv "/mnt/seagate/Film - 1" "/mnt/seagate/pi/Film - 1"

Puis appliquer la propriété de manière récursive avec

sudo chown -R pi:pi /mnt/seagate/pi

Réappropriez-vous la propriété et les permissions de /mnt/seagate/lost+found avec

sudo chown -R root:root /mnt/seagate/lost+found
sudo chmod 700 /mnt/seagate/lost+found

Maintenant vous devez vérifier netatalk et le corriger si nécessaire :

Localisez les options de démarrage suivantes et modifiez-les comme indiqué ci-dessous dans /etc/default/netatalk avec sudo nano /etc/default/netatalk :

ATALKD_RUN=no
PAPD_RUN=no
CNID_METAD_RUN=yes
AFPD_RUN=yes
TIMELORD_RUN=no
A2BOOT_RUN=no 

Allez à la fin du fichier /etc/netatalk/afpd.conf. Il devrait ressembler à ceci :

# default:
- -tcp -noddp -uamlist uams_dhx.so,uams_dhx2.so -nosavepassword

Maintenant, configurez les volumes partagés dans /etc/netatalk/AppleVolumes.default vers la fin du fichier :

~/              "Home Directory"
/mnt/seagate/pi "pi-seagate" allow:pi

Le premier est le répertoire à partager, le second est le nom visible dans la fenêtre "Connecter au serveur" -> "Volumes à sélectionner" et plus tard sur votre bureau et le troisième est le ou les utilisateurs autorisés.

Redémarrez netatalk avec :

sudo /etc/init.d/netatalk start

Essayez de vous connecter au(x) partage(s) avec votre client Mac OS X 10.10 en entrant : "afp://adresse-ip" dans 'Go to...' -> 'Connect to Server'.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X