#1 Le 24/01/2022, à 01:59
- Batman85
[Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Bonsoir à tous,
J’espère tout d'abord que je poste ce message dans la bonne catégorie du forum. Si je me suis trompé, je reposerai dans la bonne catégorie dès que vous me l'aurez indiquez.
Voici mon problème:
J'ai nouvellement installé Lubuntu 20.04 sur un PC portable équipé de 2 disques durs (un SSD de 256 Go sur lequel est installé Lubuntu nommé sdb et un HDD de 1To formaté en ext4 nommé sda1).
J'ai crée plusieurs comptes utilisateurs sur cet ordinateur. Pour des raisons techniques, j'aimerai maintenant pouvoir accéder à mon second disque dur depuis tous les comptes utilisateurs, afin notamment de pouvoir y partager des fichiers communs (fichier vdi de machine virtuelle notamment)
Or, dès que je tente d'accéder à ce HDD depuis un compte utilisateur autre que l'admin, j'ai un message d'erreur interdisant l'accès au disque dur.
Pour le moment, j'ai essayé principalement de passer par des interfaces graphiques. Voici ce que j'ai déjà tenté:
- Installé Nautilus, Gparted et le gestionnaire de profil de Gnome (non installés par défaut sur Lubuntu)
- Via Nautilus en mode su, crée un groupe nommé "Partage" dans lequel j'ai mis tous les utilisateurs (marioneo (admin); apolline: alienor)
- Via Nautilus en mode su, donné les droits en lecture et écriture à ce groupe
Avec cette méthode, j'ai réussi très facilement à partager un dossier lambda avec tous les utilisateurs...
Mais cela ne fonctionne pas pour un disque dur, malgré mes nombreuses tentatives,
- formatage en NTFS au départ, puis reformatage en ext4
- Création ou utilisation de groupes déjà existants ("users" par exemple)
- modification des droits utilisateurs pour le groupe
- démontage du hdd sur le profil admin, puis montage manuel depuis un autre profil en indiquant le mot de passe admin (là ça marche pour le profil concerné, mais je n'y ai plus accès depuis mon compte admin...)
- autres...
J'ai bien remarqué que le disque dur se monte à l'adresse du compte Admin: /media/marioneo pour mon cas. Il semble donc logique qu'un autre compte n'y ait pas accès. J'ai aussi remarqué que, depuis un autre compte (ex: Apolline), je peux démonter le HDD, puis le remonter. Alors le HDD est désormais monté à l'adresse du compte utilisateur: /media/apolline pour mon exemple. Ce qui fait que je n'ai plus accès au HDD depuis le compte administrateur (marioneo). Je ne sais absolument pas comment changer cela (j'avais réussi une fois à monter le HDD dans /media/root immédiatement après le formatage du HDD, mais depuis que je l'ai démonté/remonté depuis un des comptes utilisateur, impossible de le monter dans /media/root...)
J'imagine que la solution est très simple (sans doute en ligne de commande?), mais malgré mes nombreuses heures de recherche sur le net, je n'ai pas réussi.
Quelqu'un peut-il m'aider?
Merci beaucoup d'avoir pris le temps de me lire, et pour votre éventuelle réponse.
Dernière modification par Batman85 (Le 24/01/2022, à 09:27)
Hors ligne
#2 Le 24/01/2022, à 12:00
- jpoc
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
/etc/fstab
voir ce wiki Droits par défaut du volume
Système de fichier linux
En ce qui concerne les systèmes de fichiers qui ont une gestion des permissions (comme Ext2, Ext3, ReiserFs etc…), si vous souhaitez pouvoir écrire dans cette partition en tant que simple utilisateur, vous devez changer les permissions ou l'appartenance du répertoire racine de la partition.
Dans notre exemple précédent, si /dev/sdc3 est en ext3 :
Après avoir monté la partition dans /media/stock :
sudo chown utilisateur /media/stock
Désormais cette partition appartient à l'utilisateur, peu importe où elle sera montée ensuite.
(Les droits sont attachés au répertoire racine de la partition et non au répertoire du point de montage)
Hors ligne
#3 Le 24/01/2022, à 12:13
- erresse
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Bonjour,
La réponse à tes questions se trouve ICI dans la documentation.
Sous Linux, on ne gère pas des "disques" mais des "volumes" qui sont représentés dans un disque par une "partition" à laquelle on a associé un "système de fichiers".
Un volume est monté normalement par le super-utilisateur "root" et lui appartient, à charge pour lui de créer un ou plusieurs répertoires affectés aux utilisateurs. Dans ces espaces, l'utilisateur aura la faculté de lire, créer ou supprimer des sous-répertoires (aussi appelés dossiers) et des fichiers.
Lorsque plusieurs utilisateurs doivent partager des objets (répertoires ou fichiers) communs, il doivent appartenir à un même "groupe", ce groupe étant autorisé à lire, créer ou supprimer des objets dans l'espace réservé. Exemple rapide :
- le groupe "Partageurs" sera créé et les utilisateurs pouvant partager des objets y seront affectés.
- le répertoire "Partage" sera créé dans un volume monté par "root" et affecté par lui au groupe "Partageurs".
- dès lors, tous les utilisateurs répertoriés auront accès à cet espace "Partage" en lecture et écriture. Toutefois, en l'état, les objets créés par un utilisateur appartiendront seulement à cet utilisateur, il faut jour sur les ACL pour que les objets créés soient vraiment communs, mais je n'expliquerai pas le détail ici, ce serait trop risqué (j'ai moi-même besoin de me rafraîchir la mémoire sur ce sujet...).
La lecture de la documentation devrait déjà éclaircir le problème. Bonne lecture.
Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois le problème solutionné, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Hors ligne
#4 Le 24/01/2022, à 19:55
- Coeur Noir
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Jpoc il vaut mieux qu'un point de montage reste propriété de root : le « matériel » ( ici une partition ) est géré par le système, les données elles ( dossiers, fichiers ) sont gérées par leurs utilisateurs et groupes respectifs.
Erresse, pas besoin de passer par les ACL, il y a effectivement plus simple : le bit sgid sur le dossier, avec droits rw pour le groupe « partageur » sur le dossier « partage ».
En faisant cela, tout élément créé dans ce dossier hérite des droits du dossier parent~contenant.
Ici Batman85 en fait t'étais pas loin d'arriver à tes fins ;-) c'est juste qu'il faut monter dès le démarrage ta partition sda1.
Tu crées un dossier vide qui lui servira de point de montage :
sudo mkdir /media/Disque-1To
Puis tu modifies le fichier /etc/fstab afin d'y ajouter une ligne pour « monter » la partition, ça ressemblera à
UUID=uuid_de_sda1 /media/Disque-1To ext4 defaults 0 2
Pour repérer les disques et partitions en présence ( leurs nom, étiquette, uuid, point de montage, etc ) :
lsblk -fe7,11 -o +size
Au prochain redémarrage, le montage sera effectif.
Tu pourras dès lors créer dans cette partition des dossiers appartenant à tel ou tel utilisateur, tel ou tel groupe, et ranger DANS ces dossiers leurs affaires respectives.
Exemple pour un dossier nommé COMMUN qui sera accessible en lecture-écriture uniquement aux utilisateurs membres du groupe commun :
sudo mkdir /media/Disque-1To/COMMUN
sudo chown root:commun /media/Disque-1To/COMMUN
sudo chmod a+rwx,o-rwx,g+s /media/Disque-1To/COMMUN
Dès lors :
⋅ seuls les membre du groupe commun peuvent accéder, lire, écrire, effacer dans ce dossier COMMUN ( et root, bien sûr ).
⋅ seul le propriétaire root peut effacer ce dossier ( car le dossier~point~de~montage~contenant Disque-1To appartient à root ) ou en modifier les droits ( car seul l'utilisateur proprio peut changer les droits d'un élément ).
⋅ tout élément créé dans ce dossier se verra attribuer le groupe commun et ses droits, tout en conservant son utilisateur propriétaire initial.
Dernière modification par Coeur Noir (Le 25/01/2022, à 01:11)
Débuter ⋅ Doc ⋅ Bien rédiger ⋅ Retour commande ⋅ Insérer image | illustrations & captures d'écran < ⋅ >
Hors ligne
#5 Le 24/01/2022, à 20:05
- iznobe
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
⋅ tout élément créé dans ce dossier se verra attribuer le groupe commun et ses droits, tout en conservant son utilisateur propriétaire initial.
Bonsoir , @Coeur Noir , serait il possible d' avoir le detail correpondant dans la commande , ca m' interresse .
je n ' ai encore jamais eu besoin de mettre cela en pratique jusqu' a maintenant , mais sachant que c ' est possible , je me suis toujours demandé comment faire justement .
a+rwx , c ' est pour mettre tout les droits au proprietaire => 7 , a veut dire quoi ?
o-rwx , on supprime tous les droits pour others => 0
et g+s on fait quoi avec group ?
Dernière modification par iznobe (Le 24/01/2022, à 20:08)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#6 Le 24/01/2022, à 23:38
- Coeur Noir
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
J'aime pas l'octal avec chmod, c'est moins clair pour moi, ch'uis un littéraire, lol. Bref.
En littéral ( ou symbolique ), les opérations sont effectuées dans l'ordre où on les écrit.
-R → traitement récursif d'un dossier visé ET son contenu
+ → ajout ( aux droits existants )
- → retrait ( aux droits existants )
= → remplacement ( des droits existants )
u = user, utilisateur propriétaire
g = group, groupe propriétaire
o = other, le reste du monde, ceux qui ne sont ni un user, ni un group
a = all, tous ( u+g+o )
r = read, lecture
w = write, écriture
x = execute, exécution
X = exécution sur les dossiers uniquement [ en fait c'est à cause de lui que je préfère le littéral ] puisque 99% du temps les fichiers n'ont pas besoin d'être exécutables ; ou maintien de l'exécution sur les éléments en disposant déjà. Très utile en cas de traitement récursif.
s = special pour exécuter en tant que propriétaire de l'élément ( suid ou sgid ) ce qui sur un dossier induit « tout élément créée dans le dossier prend les droits et permissions du groupe de ce dossier ».
t = sticky restreint l'effacement à l'utilisateur propriétaire de l'élément ( c'est le fonctionnement du dossier /tmp ) qui peut aussi être intéressant dans un dossier commun à plusieurs utilisateurs ( les modifications de fichiers seront possibles par divers utilisateurs membres d'un groupe en rw, mais l'effacement dudit fichier est restreint à son utilisateur propriétaire initial uniquement ).
Ici au lieu de
sudo chmod a+rwx,o-rwx,g+s /media/Disque-1To/COMMUN
j'aurais pu écrire
sudo chmod u+rwx,g+rwx,o-rwx,g+s /media/Disque-1To/COMMUN
ou
sudo chmod ug+rwx,o-rwx,g+s /media/Disque-1To/COMMUN
ou
sudo chmod 2770 /media/Disque-1To/COMMUN
L'ajout du bit sgid est à faire au cas par cas uniquement sur les dossiers mis en commun entre plusieurs utilisateurs membres d'un groupe. Donc pas de chmod -R g+s /dossier on vise juste LE dossier, pas son contenu en récursif ( en cas de bévue, voir note en bas ).
Attention au bit suid qui lui peut avoir des implications bien plus fâcheuses en termes de sécurité [ c'est sgid qui nous intéresse ici, à bon escient. ]
a+rwx → rwxrwxrwx → 777 ( mal, dossier à poil ) → suivi de o-rwx → on obtient 770 ( et s'applique dans l'exemple à l'utilisateur proprio root, et au groupe proprio commun autrement dit personne en dehors de root ou des membres du groupe commun n'accède à ce dossier ) → puis g+s → 2770 ou rwxrws---
En mode moins parano :
ug=rwx,o=rx,g+s → 2775 → rwxrwsr-x → ça permet aux autres de voir et lire ce qu'il y a dans ce dossier, l'exécution sur un dossier c'est ce qui permet de l'ouvrir/traverser. D'où l'utilité de X plutôt que x, souvent.
Pourquoi s'occuper explicitement de other ?
Parce que de base le réglage d'UMASK global d'une Ubuntu ( avant 21.04 ) fait produire aux $USER des dossiers avec droits rwxr-xr-x ( umask = 022 soit 777-022 = 755 )
L'umask global se règle dans le fichier /etc/login.defs et dans un cadre multi-utilisateurs amenés à partager des dossiers c'est éventuellement plus commode de passer l'umask à 002, voire 007.
Un changement d'umask est sans effet sur les dossiers créés antérieurement, il faut donc ajuster manuellement aux emplacements nécessaires à coups de
chmod -R ug+rwX,o-rwx /chemin_vers/dossier/m'appartenant
ou
sudo chmod -R ug+rwX,o-rwx /chemin_vers/dossier/ne_m'appartenant_pas
c.à.d donner à utilisateur et groupe les droits lecture+écriture, et exécution seulement sur les dossiers ( primordial ) et fichiers qui l'auraient déjà ( lanceurs, scripts, programmes ) ; enlever aux autres tous les droits.
Un chmod -R ug+rwx s'appliquerait à tous les éléments ( dossiers + fichiers ) or l'exécution n'est pas souhaitable sur tous les fichiers. Elle est par contre nécessaire sur les dossiers.
L'effacement d'un élément, fichier ou dossier.
Effacer n'est pas un droit particulier. C'est lié au droit d'écriture des propriétaires du dossier contenant. Si mimi est propriétaire ( via groupe ou utilisateur ) d'un dossier et que mimi a le droit d'écriture « sur » ce dossier, alors mimi peut effacer dans ce dossier des éléments ne lui appartenant pas.
https://www.redhat.com/sysadmin/suid-sgid-sticky-bit ⋅ https://doc.ubuntu-fr.org/droits ⋅ https://doc.ubuntu-fr.org/permissions
________________________________
Note :
⋅ si on veut n'appliquer une commande ( par ex. ajouter le bit sgid ) qu'à des (sous-)dossiers de ce_dossier
find /chemin_vers/ce_dossier/ -type d -exec chmod -c g+s {} \;
⋅ si on veut n'appliquer une commande ( par ex. retirer le bit sgid et le droit d'exécution ) qu'à des fichiers parmi ce_dossier et ses (sous-)dossiers
find /chemin_vers/ce_dossier/ -type f -exec chmod -c g-s,a-x {} \;
Ouep j'suis passé par là, on ne fait pas d'omelette sans casser des œufs ;-)
Dernière modification par Coeur Noir (Le 25/01/2022, à 01:22)
Débuter ⋅ Doc ⋅ Bien rédiger ⋅ Retour commande ⋅ Insérer image | illustrations & captures d'écran < ⋅ >
Hors ligne
#7 Le 24/01/2022, à 23:41
- Batman85
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Bonsoir à tous,
Merci à tous pour vos réponses rapides et qui m'éclairent bien sur le sujet!
Je tenterai demain la solution proposée par Coeur Noir, qui m'a l'air on ne peut plus claire. Je me doutais bien qu'il y avait quelque chose à faire dans fstab, mais je ne savais pas quoi exactement.
Bref, je vous tiendrai au courant et reviendrai vers vous si je rencontre des difficultés.
Merci encore pour votre aide!
Hors ligne
#8 Le 26/01/2022, à 10:54
- Batman85
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Bonjour à tous,
A force de jouer avec le feu, on finit par se bruler les ailes!
Mon Pc ne boot désormais plus... J'ai le message d'erreur suivant au démarrage:
[ 1.260168] nouveau 0000:0:00.0: bus: MMIO write of ffffffff FAULT at 10ecc0
|PRIVING]
Impossible d'aller plus loin, ni d'écrire quoi que ce soit.
J'ai suivi le premier post de Coeur Noir, (un peu trop) confiant en ma capacité à résoudre le problème à l'aide de ses explications claires, et que je pensais avoir compris.
J'ai donc crée le dossier comme prévu, et édité fstab. Mais dans fstab, il y avait déjà une ligne "UUID=uuid_de_sda1". Pensant que cette ligne servait à monter le disque sda1, mais uniquement pour le compte administrateur, j'ai pris la liberté de la supprimer, avant d'inscrire la ligne préconisée par Coeur Noir, sans faire une sauvegarde du fichier initiale ou simplement en mettant la ligne en commentaire! Erreur monumentale: visiblement, cette ligne servait sans doute à autre chose...
Voilà, désormais je ne peux plus booter lubuntu...
Adieux veaux, vaches, cochons... mais ce n'est (malheureusement) pas si grave! Je m'explique.
Je suis en train de monter le premier PC portable pour ma fille. A l'origine, j'avais préféré (et de loin!) l'environnement linux. Pourquoi? Parce que
-L'environnement me semble plus sécurisé (moins de risques avec les virus)
-Profiter de l'excellent contrôle parental "CTparental"
-Ne nécessite pas de création de compte @microsoft ou @gmail pour avoir un semblant de contrôle parental. Autant que ma fille soit trackée le moins possible pour le moment. Elle le sera suffisamment lorsqu'elle grandira.
-Pour son ergonomie et sa fluidité, surtout pour Lubuntu sur un PC core i7 avec 16Go de Ram et 256SSD.Ca faisait de ce PC un petit avion de chasse pour ma fille
Ce faisant mon objectif était surtout que ma fille puisse
- naviguer sur un internet techniquement "sécurisé", et sous la surveillance de ses parents ça va sans dire
- jouer à son tout premier jeu vidéo (et le seul, pour le moment!): l'excellent PowerZ
Et c'est sur ce dernier point que le bas blesse! PowerZ n'est disponible que sous l'environnement Windows (grrr)! J'espérait donc créer une machine virtuelle sous Windows pour pouvoir installer le jeu! Or, le jeu ne supporte pas la carte graphique émulée par la machine virtuelle (Virtualbox, en l'occurrence)
Je me retrouve donc obligé d'installer Windows, quitte à faire une VM sous Lubuntu ensuite...
Bref, tout ça pour rien. Je m'excuse par avance pour tous ceux qui ont gentiment accepté de m'aider... pour rien! Et je serai ravi d'obtenir (si vous le souhaitez) plus d'informations sur la raison de mon démarrage impossible avec Lubuntu, notamment pour aider ceux qui se trouveraient dans pareille situation à l'avenir!
Merci beaucoup!
Hors ligne
#9 Le 26/01/2022, à 15:23
- Coeur Noir
Re : [Lubuntu 20.04] Second HDD accessible pour tous les utilisateurs?
Bon, il semble que mes explications n'étaient pas assez claire. Pourtant j'ai bien écrit :
Puis tu modifies le fichier /etc/fstab afin d'y ajouter une ligne pour « monter » la partition, ça ressemblera à
UUID=uuid_de_sda1 /media/Disque-1To ext4 defaults 0 2
ajouter ça n'est pas remplacer, hein ;-)
Là je suppose que le montage que tu as remplacé, c'était celui de la racine système…
Pour réparer tout ça, il faudra :
⋅ booter ton pc avec le support d'installation de ta Lubuntu, en live-session.
⋅ en mode essayer sans installer.
⋅ ouvrir un terminal, bien agrandir sa fenêtre et lancer la commande :
lsblk -fe7,11 -o +size
histoire de repérer les disques, partitions en présence ( leurs noms, uuid, etc )
⋅ ensuite il faudra « réparer » le fichier /etc/fstab du système installé.
Pour accéder aux fichiers du système installé depuis cette live-session, dans l'explorateur de fichiers, tu te promènes dans « périphériques » ou « autres emplacements » où tu dois trouver le⋅s disque⋅s interne⋅s de ton ordinateur.
Et tu montres ici le contenu du fichier /etc/fstab ( celui qui correspond au système installé sur disque interne, pas celui de la live-session ).
À priori en live-session, ça « monte » dans un chemin du genre /media/ubuntu/uuid_ou_label_partition_du_disque_interne une fois que tu as cliqué sur le disque ou la partition dans ton explorateur de fichiers.
Avec ces 2 retours, on aura les infos nécessaires pour réparer.
Dernière modification par Coeur Noir (Le 26/01/2022, à 15:25)
Débuter ⋅ Doc ⋅ Bien rédiger ⋅ Retour commande ⋅ Insérer image | illustrations & captures d'écran < ⋅ >
Hors ligne