AFP non può scrivere a causa del volume bloccato

1

Sto provando a scrivere contenuti nelle mie cartelle condivise sul mio Raspberry Pi su AFP. Tuttavia continuo a ricevere lo stesso errore / avvertimento relativo alle autorizzazioni e al volume bloccato:

Sonoabbastanzasicurocheleautorizzazionisianocorrette,sonoregistratoecomeutentepipredefinitoehousatochown-Rpi/mnt/seagatesulpiperpossedereilmiosupportoHDDperl'utentepi.
Questononhafunzionato,quindihoprovatoaimpostareipermessiperlamiacartella/var/wwwconchmod-R777/var/www,risultandonellostessoerrorenellafotosopra.

ControllodelleautorizzazioninelFinderperlacartellahome(chenondovrebbeessereunproblema,essendoconnessocomeutentepi)VedochetuttihannoipermessiRW.


Pensocheilproblemanonsiacolpamia(quindiperchél'hopostatoquienonsuraspberrypi).PensochecisiaqualcosadisbagliatonellamiaconfigurazioneAFPsulmioMac(sinotianchechehousatoquestometododicondivisionedellecartelledapiconAFPamacprimaehasemprefunzionatoprima).
Hoallegatounoscreenshotdellamiaconfigurazioneafpdiseguitodatochenonhoideadicosapotrebbeesseresbagliato.Senecessarioperaiutare,possoanchefornireleconfigurazionipernetatalk(protocolloafpsulpi).

    
posta thibmaek 05.04.2015 - 23:15
fonte

1 risposta

1

Probabilmente alcune autorizzazioni e / o impostazioni sono errate sul tuo Raspberry. Sospetto che l'unità esterna o una cartella condivisa sull'unità esterna abbia impostato le autorizzazioni errate. Confrontalo con la tua cartella home sul Raspberry dove probabilmente hai accesso completo in r / w.

Per favore, prova questo come primo passo. È possibile applicare impostazioni speciali / configurazioni successivamente. Sotto suppongo che il tuo disco esterno sia sdb e contenga un volume ext4 sdb1 con il nome seagate. Il volume / partizione stesso dovrebbe non essere di proprietà di pi ma di root!

Prima interrompi il netatalk con:

sudo /etc/init.d/netatalk stop

Smonta il volume esterno dopo aver controllato i volumi montati con df o cat /proc/mounts per ottenere l'identificativo del tuo disco esterno:

sudo umount /dev/sdb1

Per prima cosa dobbiamo correggere il tuo punto di mount:

Dovrebbero essere applicate le seguenti autorizzazioni (controlla questo con ls -la sul Raspberry):

Per / mnt

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

Verifica che la cartella / mnt contenga una cartella seagate con 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

Aggiungi la cartella se necessario con sudo mkdir /mnt/seagate e modifica i permessi e la proprietà di conseguenza con chown e chmod.

Ottieni l'UUID di tutti i volumi con sudo blkid . Dovresti ottenere un risultato simile come quello:

/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 e sda5 sono la tua partizione interna principale e di scambio. sdb1 è il primo volume sul tuo disco esterno.

Verifica con sudo nano /etc/fstab se il tuo file fstab monta il volume del disco esterno in / mnt / seagate. Sostituisci gli UUID di seguito con quelli trovati nella tua configurazione.

# /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

Rimontare sdb1 con sudo mount /dev/sdb1 e controllare il mountpoint con df . Dovrebbe assomigliare a questo:

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

Ora crea una cartella di base per l'utente pi:

sudo mkdir /mnt/seagate/pi

Sposta tutte le tue cartelle personali in pi con:

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

Esempio:

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

Quindi applica la proprietà in modo ricorsivo con

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

Riapplica proprietà e permessi di / mnt / seagate / lost + trovati con

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

Ora devi controllare netatalk e correggerlo se necessario:

Individua le seguenti opzioni di avvio e modificale come indicato di seguito in / etc / default / netatalk con sudo nano /etc/default/netatalk :

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

Vai alla fine del file /etc/netatalk/afpd.conf. Dovrebbe assomigliare a questo:

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

Ora configura i volumi condivisi in /etc/netatalk/AppleVolumes.default vicino alla fine del file:

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

Il primo è la directory da condividere, il secondo è il nome visibile in "Connetti al server" - > La finestra "Volumi da selezionare" e più avanti sul desktop e la terza è / sono gli utenti consentiti.

Riavvia netatalk con:

sudo /etc/init.d/netatalk start

Prova a connetterti alla / e condivisione / i con il tuo client Mac OS X 10.10 inserendo: "afp: // ip-address" in "Vai a ..." - > 'Connetti al server'.

    
risposta data 06.04.2015 - 14:48
fonte

Leggi altre domande sui tag