Pourquoi ne puis-je en chmod dans Cygwin sous Windows 8 CP?
Je ne peux pas le chmod autorisation de groupe dans Cygwin sous Windows 8, de sorte que je ne peux pas ssh connecter à un serveur à l'aide d'une clé ssh.
Invite Bash avertissement: "les Autorisations 0660 pour" /home/KeepZero/.ssh/id_rsa " sont trop ouvert.
Il est nécessaire que vos fichiers de clés privées ne sont PAS accessibles par les autres."
KeepZero@t400win8 ~
$ ls
test
KeepZero@t400win8 ~
$ ls -l
total 0
-rwxrwx--- 1 KeepZero KeepZero 0 Mar 4 15:07 test
KeepZero@t400win8 ~
$ chmod 700 test
KeepZero@t400win8 ~
$ ls -l test
-rwxrwx--- 1 KeepZero KeepZero 0 Mar 4 15:07 test
KeepZero@t400win8 ~
$ chmod 777 test
KeepZero@t400win8 ~
$ ls -l test
-rwxrwxrwx 1 KeepZero KeepZero 0 Mar 4 15:07 test
- Fonctionne pour moi. Quel type de système de fichiers utilisez-vous là?
- Ah, j'avais oublié que c'est sur Windows 8, donc oubliez mon commentaire. Mieux à le signaler à l'Cygwin liste de diffusion, je pense.
Vous devez vous connecter pour publier un commentaire.
Faire un
ls -al
et vous verrez que vos fichiers n'appartenant à aucun groupe (aucun).Il suffit de faire une
chgrp Users *
sur vos fichiers, et vous êtes bien à nouveau.chmod 600 <file>
par la suitechgrp Users * ~
et puis je veux modifier un fichier en l'ouvrant par le biais de l'Explorateur dans le bloc-notes? Est-ce à fonctionner normalement? Et si oui, est-il un document de dire pourquoi ils ne font pas ça par défaut en premier lieu?/etc/group
. Choisissez-en un.Roi Danton de la solution œuvres, cependant il ne permet pas de résoudre la cause du problème, et le problème va se reproduire avec n'importe quel utilisateur-créé le fichier sur lequel vous souhaitez modifier les autorisations.
Pour résoudre le problème de façon permanente:
Rechercher l'ID de groupe du groupe "Utilisateurs" dans
/etc/group
(ou l'équivalent de nom de groupe pour vos paramètres régionaux).Dans mon installation c'était 545 (votre kilométrage peut varier).
cat /etc/group|egrep '^Users:'
vous obtiendrez la bonne ligne. Le troisième champ sur la ligne est l'id de groupe. (cat /etc/group|egrep '^Users:'|cut -f3 -d':'
pour obtenir juste l'id).Modifier votre
/etc/passwd
fichier. Recherchez le dossier de votre utilisateur. Le quatrième champ est le "groupe primaire" pour l'utilisateur. Il est défini de manière incorrecte à une inexistant groupe. Changer ce nombre pour le nombre que vous avez trouvé dans l'étape 1 ci-dessus. Enregistrer leetc
fichier de mot de passe.De fermer les Cygwin windows/terminaux et ouvrez-en une nouvelle. Créer un nouveau fichier. Il devrait avoir un groupe des "Utilisateurs", et vous devriez être en mesure de changer les permissions souhaitées.
Une raison possible de ce problème est que vous avez copié votre .ssh dossier sur le pc...
Créer votre propre dossier, et puis, vous obtenez le droit de l'utilisateur de groupe. Ne pas copier les dossiers... ils sont affectés à des groupes d'utilisateurs qui ne correspondent pas.
J'ai eu le même problème sur Windows Server 2012 R2. Après avoir essayé de changer le propriétaire ou le groupe, ou même les autorisations d'un fichier, il montrait toujours les valeurs d'origine et ignoré mes paramètres.
Après la lecture de Les autorisations de fichier,
J'ai compris que le noacl option a été définie pour la mountpoins:
J'ai donc enlevé le noacl option dans les points de montage dans
/etc/fstab
et fermé tous les Cygwin windows. Après la réouverture de la console de paramétrage des autorisations avec chown, chgrp, et chmod a fonctionné comme prévu.noacl
dans la sortie demount
mais pas dans/etc/fstab
. Pourriez-vous s'il vous plaît montrer ce que vous avez dans votre/etc/fstab
maintenant?