[ Avertissement : il n'y a aucune intention malveillante à cette question, j'essaie de comprendre la commande ln -s pour un projet d'école]
Dire que j'ai un système de fichiers avec mon dossier, /home/anna
. /home/bob
est un dossier auquel je ne peux pas accéder, avec un fichier auquel je ne peux pas accéder,foo.txt
Puis-je exécuter avec succès ln -s /home/bob/foo.txt
dans mon dossier d'accueil? Est-il correct de supposer que si je le peux, cela produira un lien auquel je ne pourrai pas accéder (avec les mêmes autorisations que foo.txt
)?
Et si j'avais des privilèges de lecture foo.txt
, mais pas accès /home/bob
?
Qu'en est-il du cas inverse, où je pouvais accéder /home/bob
mais pas lire foo.txt
?
permissions
symlink
MyStackRunnethOver
la source
la source
ls
le montrera généralement commelrwxrwxrwx
, il est donc un peu mal de parler des autorisations d'un llink.Réponses:
Oui, vous pouvez créer un lien symbolique vers n'importe quel emplacement.
Correct. Les restrictions d'accès du fichier cible s'appliquent. Si vous créez un lien symbolique vers une ressource restreinte, vous ne pourrez tout simplement pas y accéder. Il n'est même pas nécessaire que le fichier cible existe réellement.
Une démo:
Si vous ne disposez pas des autorisations sur le répertoire parent, vous ne pouvez pas accéder au fichier contenu . Ainsi, avec un lien symbolique, vous ne pourrez toujours pas y accéder. La création d'un lien symbolique n'affecte pas les autorisations.
Encore une fois, vous pouvez créer un lien symbolique vers celui-ci, mais pas accéder au fichier.
la source
/home
et est placé dans un groupe du même nom que son nom d'utilisateur, c'est-à-dire que l'utilisateur bob est dans le groupe bob, jusqu'à ce qu'il soit ajouté à d'autres pour empêcher les utilisateurs de lire les fichiers les uns des autres. Autrefois, tous les utilisateurs appartenaient à des utilisateurs de groupe, ce qui permettait l'intention malveillante à laquelle vous avez fait allusion. Pour qu'Anna puisse voir les fichiers de bob, bob doit l'ajouter au groupe bob.