Page suivante Page précédente Table des matières
11. Vérifier l'installation de NIS ou de NYS
Si tout fonctionne correctement (comme cela devrait être), vous devriez être capable de vérifier votre installation avec quelques commandes simples. Supposons que le fichier de mots de passe soit géré par NIS, la commande
% ypcat passwddevrait alors vous donner le contenu du fichier des mots de passe. La commande
% ypmatch id_utilisateur passwd(où id_utilisateur est le nom de login d'un utilisateur) devrait vous donner l'entrée de l'utilisateur dans le fichier des mots de passe NIS. Les commandes
ypcatetypmatchdoivent être incluses dans la distribution du NIS (ou NYS) traditionnel.Si un utilisateur ne peut pas se connecter, lancez le programme suivant sur la machine cliente :
#include <stdio.h> #include <pwd.h> #include <sys/types.h> int main(int argc, char *argv[]) { struct passwd *pwd; if(argc != 2) { fprintf(stderr,"Usage: getwpnam username\n"); exit(1); } pwd=getpwnam(argv[1]); if(pwd != NULL) { printf("name.....: [%s]\n",pwd->pw_name); printf("password.: [%s]\n",pwd->pw_passwd); printf("user id..: [%d]\n", pwd->pw_uid); printf("group id.: [%d]\n",pwd->pw_gid); printf("gecos....: [%s]\n",pwd->pw_gecos); printf("directory: [%s]\n",pwd->pw_dir); printf("shell....: [%s]\n",pwd->pw_shell); } else fprintf(stderr,"User \"%s\" not found!\n",argv[1]); exit(0); }Faites tourner ce programme avec le nom de l'utilisateur en paramètre. Il va afficher toutes les informations renvoyées par la fonction
getpwnamconcernant l'utilisateur. Cela peut vous permettre de savoir si l'entrée est correcte. Un problème assez fréquemment rencontré est une redéfinition du champ de mot de passe par un "*".
Page suivante Page précédente Table des matières