web-dev-qa-db-fra.com

Comment partager un dossier sur une partition NTFS sur le réseau?

Je suis sous Ubuntu 11.10 et je souhaite partager un dossier sur une partition NTFS montée automatiquement (/dev/sda4) sur le réseau. Le but de ce réseau est de partager des fichiers entre ordinateurs, il contient principalement des ordinateurs Windows. J'utilise cette partition /dev/sda4 à la fois sous Windows 7 et Ubuntu. En utilisant Nautilus, je clique avec le bouton droit sur le répertoire, puis je clique sur "Options de partage", puis je coche les trois cases à cocher. Lorsque j'essaie d'appliquer les paramètres, le message "Impossible de modifier les droits du dossier" NomDossier "'.

J'ai mis la sortie de Sudo blkid et cat /etc/fstab ci-dessous.

Sudo blkid

/dev/sda2: LABEL="Windows" UUID="481319C261268D8D" TYPE="ntfs" 
/dev/sda3: UUID="23dac5e8-aae7-43ac-964c-c8a5a033b0d7" TYPE="ext4" 
/dev/sda4: LABEL="Data" UUID="00F1B269675B86AE" TYPE="ntfs" 
/dev/sda5: UUID="6de8b757-f17e-4e36-935c-a3fd6012c628" TYPE="ext4" 
/dev/sda6: UUID="d504bae2-fad6-4f6a-b489-7719ad0fe3b3" TYPE="swap" 

cat /etc/fstab

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/sda3 during installation
UUID=23dac5e8-aae7-43ac-964c-c8a5a033b0d7 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda6 during installation
UUID=d504bae2-fad6-4f6a-b489-7719ad0fe3b3 none            swap    sw              0       0
/dev/sda4 /media/Data ntfs defaults,umask=007,gid=46 0 0 

Comment puis-je partager ce dossier?

16
Exeleration-G

Après quelques recherches, j'ai trouvé la solution moi-même:

Premièrement, je devais me donner la propriété de /dev/sda4 et je devais donner les autorisations group et others lire et exécuter. Je l’ai fait en modifiant l’entrée de la partition dans /etc/fstab.

Pour ce faire, je devais connaître mes uid et gid. Donc, la première chose que j'ai faite a été d'écrire la commande suivante dans un terminal:

id $USER

Cela donnera une sortie comme celle-ci:

UID=1000(myname) GID=1000(myname) groups=1000(myname),4(adm),24(cdrom), ...

Alors maintenant, je savais que mes uid et gid étaient 1000.

Connaissez-vous déjà le nom de la partition NTFS? Sinon, tapez cette commande dans un terminal:

Sudo blkid

et notez la partition NTFS sur un morceau de papier.

Maintenant, pour changer les permissions, j'ai édité /etc/fstab avec l'éditeur de texte nano. Donc, la prochaine commande que vous devez taper dans un terminal est:

Sudo nano /etc/fstab

Allez tout en bas et tapez cette ligne:

/dev/sda4 /media/Data ntfs defaults,umask=0022,uid=YourUIDHere,gid=YourGIDHere 0 0

(Vous devez remplacer /dev/sda4 par la partition NTFS que vous avez notée précédemment).

Explication: umask=0022 définit les autorisations du répertoire (d) sur drwxr-xr-x, afin de s'assurer que l'utilisateur (moi) peut lire, écrire et exécuter (rwx), alors que group et others peuvent uniquement lire et exécuter (r-x). ce que je voulais.

Après cela, je pourrais cocher les trois cases sans erreur et le dossier serait partagé sur le réseau. Comme je ne savais pas si les paramètres de partage seraient conservés après un redémarrage, j'ai décoché les cases à cocher et ajouté quelques lignes dans /etc/samba/smb.conf à la place. Je l'ai fait de cette façon:

Dans un terminal, j'ai tapé Sudo nano /etc/samba/smb.conf

J'ai fait défiler la liste jusqu'à la dernière ligne et y ai collé le texte suivant:

[MyShare]
    comment = My Share
    path = /media/Data/FolderToBeShared
    browseable = yes
    guest ok = yes
    read only = yes
    create mask = 0755

J'ai sauvegardé le fichier, puis redémarré. Le dossier était accessible depuis le réseau maintenant.

14
Exeleration-G

La solution la plus simple que je puisse penser à nous consiste à utiliser un lien symbolique vers la partition NTFS.

Comment je ferais ceci est:

  • Créez un dossier sur votre partition Ubuntu que vous pouvez partager.
  • Liez le dossier sur la partition Windows pour qu'il soit dans ce dossier:
    ln -s /path/to/folder/on/ntfs /path/to/new/location/linkname
  • Définissez le dossier parent que vous avez créé pour être partagé sur le réseau, en choisissant les options supplémentaires que vous souhaitez (par exemple, autoriser l'invité, etc.).
  • Cliquez sur "appliquer les autorisations aux fichiers joints" dans l'onglet autorisations. Bien sûr, toutes les autorisations ne seront pas appliquées, mais un accès en lecture devrait suffire.

Je n'ai pas testé cela moi-même, mais si je comprends bien le partage, il devrait pouvoir fonctionner.

0
RolandiXor

montez simplement le répertoire ntfs en tant que:

-o uid=current_user,gid=current_usergroup

obtenir l'utilisateur actuel et le groupe d'utilisateurs actuel comme indiqué par Exeleration-G:

id MyUserName
0
ashishsony