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

16

Je suis sur 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 /dev/sda4partition à la fois à partir de Windows 7 et d'Ubuntu. En utilisant Nautilus, je fais un clic droit sur le répertoire, puis je clique sur 'Options de partage', puis je coche les trois cases à cocher. Cependant, lorsque j'essaie d'appliquer les paramètres, il est indiqué «Impossible de modifier les droits du dossier« nom de dossier »».

J'ai mis la sortie de sudo blkidet cat /etc/fstabci - 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 partager ce dossier?

Accélération-G
la source
Lorsque vous dites "sur le réseau", que voulez-vous dire, quel type d'ordinateurs vont être là? Les fenêtres? Ensuite, vous avez besoin de samba, uniquement Linux? Ensuite, NFS est recommandé ... Donnez-nous plus d'informations.
Bruno Pereira
1
Je pense que les autorisations fstabdoivent être modifiées. Essayez la même procédure avec supprimé gid(n'oubliez pas de remonter) et dites-nous si cela a aidé.
Andrejs Cainikovs
J'ai mis à jour la question. Suppression gidde /etc/fstabmarques le dernier regard de la ligne comme ceci: /dev/sda4 /media/Data ntfs defaults,umask=007 0 0. /dev/sda4n'est pas monté au démarrage, sudo mount /dev/sda4 /media/Datame donne la sortie suivante:Mount is denied because the NTFS volume is already exclusively opened. The volume may be already mounted, or another software may use it which could be identified for example by the help of the 'fuser' command.
Exeleration-G

Réponses:

14

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

Tout d'abord, je devais me donner la propriété /dev/sda4, et je devais donner groupet otherslire et exécuter la permission. Je l'ai fait en modifiant l'entrée de partition dans /etc/fstab.

Pour ce faire, je devais connaître mon uidet gid. La première chose que j'ai faite a donc é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 mon uidet moi l' gidétions 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 modifier les autorisations, j'ai édité /etc/fstabavec l' nanoéditeur de texte. Ainsi, 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/sda4par la partition NTFS que vous avez notée précédemment).

Explication: umask=0022définit les dautorisations du répertoire ( ) sur drwxr-xr-x, pour vous assurer que l'utilisateur (moi) peut lire, écrire et exécuter ( rwx) tandis que groupet otherspeut uniquement lire et exécuter ( r-x) le répertoire, ce que je voulais.

Après cela, je pouvais cocher les trois cases à cocher sans aucune 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 et ajouté des lignes à la /etc/samba/smb.confplace. Je l'ai fait de cette façon:

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

J'ai défilé jusqu'à la dernière ligne et y ai collé ce qui suit:

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

J'ai enregistré le fichier, puis redémarré. Le dossier était désormais accessible depuis le réseau.

Accélération-G
la source
1
Brillant. En tant que novice linux / ubuntu complet, je me suis cogné la tête contre le mur pendant 2 jours parce que si cela avait été une machine Windows, je l'aurais fait en 10 minutes.
Patrick
Pouvez-vous modifier cette réponse avec toutes les commandes que vous avez dû écrire, s'il vous plaît? Je ne suis pas sûr de comprendre ce que vous entendez par «me donner la propriété /dev/sda4».
Tente Enrique Moreno
Bien sûr, mais après, veuillez me donner une mise à jour pour savoir si les instructions ont fonctionné pour vous. Je n'utilise plus de partition NTFS donc je ne peux pas vérifier par moi-même.
Exeleration-G
0

La solution la plus simple à laquelle je peux penser est d'utiliser un lien symbolique vers la partition NTFS.

Comment je ferais ceci:

  • Créez un dossier sur votre partition Ubuntu que vous pouvez partager.
  • Liez le dossier sur la partition Windows pour qu'il se trouve 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 qu'il soit partagé sur le réseau, en choisissant toutes les options supplémentaires que vous souhaitez (par exemple, autoriser l'invité, etc.).
  • Cliquez sur "appliquer des autorisations aux fichiers joints" dans l'onglet autorisations. Bien entendu, toutes les autorisations ne seront pas appliquées, mais l'accès en lecture devrait être suffisant.

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

RolandiXor
la source
Ce serait ln -s, non? L'essayer maintenant.
Exeleration-G
@ Exeleration-G: oui désolé pour la faute de frappe
RolandiXor
1
Cela n'a pas fonctionné pour moi, merci cependant.
Exeleration-G
0

montez simplement le répertoire ntfs comme:

-o uid=current_user,gid=current_usergroup

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

id MyUserName
ashishsony
la source