Next Previous Contents

9. Pemeriksaan terhadap instalasi NIS/NYS

Jika segalanya berjalan lancar (sudah seharusnya), Anda harus dapat menguji instalasi Anda dengan beberapa perintah sederhana. Asumsikan, sebagai contoh, berkas passwd Anda di sediakan oleh NIS, perintah

        
        % ypcat passwd

harus menampilkan isi dari berkas passwd milik NIS. Perintah

        
        % ypmatch userid passwd

(dimana userid adalah nama login dari sembarang user) harus memberykan isian dari user tersebut yang berasal dari berkas passwd milik NIS. Program "ypcat" dan "ypmatch" harus disertakan didalam distribusi milik NIS yang tradisional ataupun NYS.

Jika seorang user tidak dapat login, jalankan program berikut ini pada klien :

        
  #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);
  }

Jalankan program tersebut dengan nama user sebagai parameter. Program tersebut akan menampilkan semua informasi mengenai user yang dihasilkan dari fungsi getpwnam. Hal yang paling sering terjadi dimana seorang user tidak dapat login adalah, field password dari /etc/passwd terisi dengan tanda "*".


Next Previous Contents