Ou: où puis-je mettre des fichiers appartenant à un groupe?
Supposons qu'il y ait deux utilisateurs sur un système Unix: joe et sarah . Ils sont tous deux membres du groupe des passionnés de cinéma . Où devrais-je mettre leurs fichiers de film?
/home/{joe,sarah}/movies
ne sont pas appropriés car ces répertoires appartiennent à joe / sarah et non à leur groupe;/home/movies-enthusiast
n'est pas approprié aussi, parce que cinéphiles est un groupe et non un utilisateur;/var/movies-enthusiast
pourrait être une option, mais je ne suis pas sûr que cela soit autorisé par la FHS;/srv/movies-enthusiast
Cela peut également être une option, mais les films ne sont pas des fichiers requis par les services système.
directory-structure
fhs
utilisateur16538
la source
la source
Réponses:
Ne pas utiliser
/usr
est pour les données partageables en lecture seule. Les données ici ne devraient changer que pour des raisons administratives (par exemple, l'installation de nouveaux paquets.)/opt
s'adresse généralement aux programmes qui sont autonomes ou qui doivent être isolés du reste du système pour une raison quelconque (programmes à pots de miel à interaction faible et moyenne, par exemple)./var
est destiné aux "fichiers dont le contenu doit changer continuellement pendant le fonctionnement normal du système, tels que les journaux, les fichiers spool et les fichiers de courrier électronique temporaires". J'aime y penser comme ceci: si vos données ne paraissaient pas bien résumées dans une liste, elles n'appartiennent généralement pas à la liste/var
(bien qu'il y ait des exceptions à cela.)Utilisation
/home
est destiné aux répertoires personnels des utilisateurs. Certains voient dans ce répertoire une zone pour les fichiers de groupe. La FHS note en fait que "sur les grands systèmes (en particulier lorsque les répertoires / home sont partagés entre de nombreux hôtes utilisant NFS), il est utile de subdiviser les répertoires personnels des utilisateurs. La subdivision peut être réalisée à l'aide de sous-répertoires tels que / home / staff, / home / invités, / accueil / étudiants, etc. "/srv
est un emplacement acceptable et souvent préféré pour les fichiers de groupe. J'utilise généralement ce répertoire pour les fichiers partagés par un groupe pour la raison mentionnée dans la réponse de Chris Down ; Le partage de fichiers en groupe est un service fourni par le serveur.Consultez la page de manuel hier (7) (
man hier
) pour plus d’informations sur la fonction de chaque répertoire décrit par le FHS.la source
/srv/data
répertoire pour les fichiers de données.À mon avis, le bon endroit est
/srv/movies-enthusiast
. Un "service" ne doit pas obligatoirement être un démon ou un programme, il doit simplement être un service fourni par le système (par exemple, pouvoir y placer vos films). Voici une citation de la FHS :Je pense vraiment que votre utilisation relève de cette définition et fournit un service.
la source
/srv/data
répertoire pour les fichiers de données.La norme FHS ( Filesystem Hierarchy Standard ) spécifie une disposition à suivre par les "développeurs de distributions Unix, les développeurs de packages et les développeurs de systèmes" afin de ne pas gâcher votre espace de noms.
Comme il s'agit de votre espace de noms, vous devez choisir le nom que vous jugez approprié. Si vous trouvez que
/groups/movies-enthusiast
cela a du sens, vous devriez le mettre là. Si vous aimez les noms de chemins courts, car ils sont plus faciles à taper/g/movies-enthusiast
(ou peut-être/g/m-e
) conviendraient.Comme les chemins que vous choisissez ne sont pas définis dans la FHS, la distribution ou les packages tiers ne doivent pas les toucher. En tant que tel, vous devriez lire la FHS pour savoir quels chemins peuvent être utilisés par un logiciel compatible (la table des matières vous dira la plupart de ce que vous devez savoir).
Par exemple, j'utilise personnellement
/av
pour où je stocke mon contenu audiovisuel,/src
pour le code source et/data
pour des données non définies (telles que des images de machine virtuelle, des images de CD, des chroots, des packages sauvegardés, etc.).la source
Il n'y a rien de mal à créer un nouveau point de montage ou un répertoire à cette fin à partir de la racine.
Particulièrement si c’est l’objectif premier de ce système, je créerais simplement
/ passionné de cinéma
S'il existe d'autres "groupes" similaires, je peux ou non préférer les héberger ensemble, par exemple
ou
Questions à considérer: Allez-vous dédier un point de montage à cette fin?
Avez-vous envisagé des softlinks?
En tout cas il n'y a pas de règles. Si vous voulez désigner un utilisateur comme dépositaire et permettre aux autres utilisateurs d'accéder à cet espace de projet, n'hésitez pas à l'héberger dans le répertoire de base de l'utilisateur. Ou créez un espace de nom / home / shared / *. Vous êtes votre propre patron.
Oh, une chose: quoi que vous fassiez, documentez-le. Cela doit faire partie de la récupération du système, des vérifications quotidiennes, des sauvegardes, etc. Il faut noter les retenues de configuration importantes (par exemple, appartenances à un groupe, ensembles d'autorisations, paramètres de performance fs, et tout ce qui n'est pas par défaut).
la source
FHS doit également faciliter l’administration, aussi j’irais avec / srv pour cette raison bien que ce ne soit pas ce que j’ai fait. Avoir un recul parfait cependant. J'utilise / export / srv car c'est sur NAS.
Si c'est une boîte de dépôt, assurez-vous qu'il est à la fois fixe et collant. Assurez-vous également que ceux qui l'utilisent disposent d'un umask utile. Cependant, n'utilisez pas la molette comme je l'ai fait dans l'exemple des modes d'accès aux fichiers. Ne dépouillez pas eXecute ou vous risquez une surprise.
la source
Il est important de se rappeler que le FHS traite des questions où les placements de fichiers doivent être coordonnées entre plusieurs parties telles que les sites locaux, distributions, applications, documentation, etc ; La FHS n'essaie pas de définir des règles pour chaque situation: le placement local de fichiers locaux est un problème local ( FHS 3.0, section 1.1 ).
Par conséquent, vous pouvez techniquement placer votre
movies
répertoire n'importe où, à condition qu'il ne soit pas contraire aux conventions FHS . Néanmoins, votre question portait sur l’ endroit le plus approprié ; considérons donc quelques réponses communes (classées par ordre de préférence préféré à celui que je préfère, compte tenu de votre cas d’utilisation spécifique):/<someprefix>/<groupname>
ou/media/<volumename>/<groupname>
: honnêtement, je ne sais pas pourquoi cette option a une mauvaise réputation dans le monde Linux, mais soyons clairs: c'est vraiment votre système, et la FHS vous dit que vous êtes libre de créer de nouveaux répertoires au niveau racine aussi longtemps car vous n’entrez en conflit avec rien pour lequel il existe une sémantique bien établie. Vous pouvez par exemple créer un répertoire/groups
ou/shared
organiser des fichiers à votre convenance. Je sais que certains administrateurs préfèrent les isoler quelque peu du reste du système de fichiers, ils montent donc un volume distinct (c.-à-d. Sous/media/<volumename>/<groupname>
). Les deux sont bien et les deux sont compatibles FHS, vraiment./srv/<groupname>
ou/srv/<someprefix>/<groupname>
: selon la FHS,/srv
contient des données spécifiques au site qui sont servies par ce système . La FHS continue ensuite en expliquant que la méthodologie utilisée pour nommer les sous-répertoires de / srv n’est pas spécifiée . D'après mon expérience personnelle, la plupart des administrateurs qui exploitent le/srv
répertoire utilisent un sous-répertoire par client, par site ou par projet, puis placent des répertoires de données à ce niveau. Quelle que soit votre structure, le/srv
est parfaitement acceptable de stocker des fichiers à partager entre plusieurs utilisateurs si vous pouvez raisonnablement considérer que le partage de ces fichiers constitue un service en soi. Demandez-vous: "Serait-il judicieux de partager éventuellement ces fichiers via SMB / NFS / AFS / GIT / ...?" Si tel est le cas, vous pouvez raisonnablement considérer que votre répertoire est un service de partage de fichiers local et donc le stocker dans un sous-répertoire de/srv
, même si aucun démon ne fournit réellement ces fichiers à d'autres systèmes./home/<groupname>
ou/home/<some-prefix>/<groupname>
: La FHS indique:/home
est un concept assez standard, mais il s'agit clairement d'un système de fichiers spécifique à un site . Il n’est absolument pas nécessaire que chaque répertoire/home
soit le nom d’un utilisateur réel, et il est acceptable d’avoir des sous-répertoires pour les groupes, bien que des précautions soient nécessaires pour éviter tout conflit éventuel entre un groupe et un utilisateur. J'ai néanmoins constaté que cette stratégie était utilisée dans plusieurs grandes installations (notamment les universités) avec une stratégie de compartimentage pour éviter la possibilité d'un conflit; par exemple, les vrais utilisateurs auraient leurs répertoires personnels dans/home/students/<studentid>
,/home/teachers/<username>
ou/home/staff/<username>
, tandis que les contenus partagés seraient par exemple placés dans/home/workgroup/<workgroupname>
. Parfois, ils seraient aussi une subdivision de département; encore, vous avez l'idée. Pour être honnête, je n’apprécie pas personnellement cette stratégie, mais elle facilite un peu les choses quand elle/home
est répartie sur plusieurs serveurs (par exemple via NFS), raison pour laquelle elle a tendance à être préférée dans les très grandes organisations.la source
Personnellement, je choisirais / usr / share / cinéphile ou / opt / cinéphile
la source
Je suggère de créer un répertoire séparé comme / opt / movies, de définir les autorisations d'utilisateur et de groupe appropriées pour eux et d'utiliser le disque
quota
pour éviter une consommation totale de disque.la source
C’est autant un commentaire qu’une réponse (ne me découragez donc pas pour cela!), Mais c’est beaucoup trop long pour tenir dans un commentaire.
Je fais deux choses, toutes deux évitant le problème auquel vous êtes confronté.
1) Je crée une partition distincte de tout l’espace libre sur mon disque système et l’étiquette en espace de données. C'est là que vont tous mes fichiers multimédias actuels et autres données. Il se monte automatiquement en tant que / media / dataspace et je place tout ce qui est "data" dans un répertoire appelé "data" pour le séparer des fichiers tels que les fichiers de travail, les vms ou les images iso que je ne souhaite pas sauvegarder régulièrement.
L'utilisation d'une partition séparée présente l'avantage supplémentaire que, si elle se remplit, le système ne sera pas compromis comme s'il était stocké sous / ou / home.
2) Je mets la plupart de mes données / supports, en particulier ceux que je n'utilise pas "en ce moment", sur un autre lecteur physique (USB dans mon cas avec un ordinateur portable). Cela facilite la sauvegarde et la connexion à un autre ordinateur, le cas échéant.
la source