��Ʈ���� �̿��� ���� �ý����� ����
NFS(Network File System)

���� academic@lily.yonsei.ac.kr

    

 

    NFS(Network File System)�� ���Ͻý����� ��ǻ�ͳ��� ������ �� �ְ� ���ִ� �����̴�. ��, ���� ���� ��ǻ��(NFS Ŭ���̾�Ʈ)�� ū �뷮�� �ϵ��ũ�� ���� ��ǻ��(NFS ����)�κ��� ������ �ϵ��� �ü���� ������� ���Ͻý����� ������ ��ġ �ڽ��� ���� �ý����� ��ó�� ����� �� �ְ� ���ִ� ���� NFS�� �⺻ �����̴�. ��Ʈ��� NT, ������ 95������ ���� ������ ���غ� ���� �ִ� ����� ���� ������ ���̴�.

    �̷��� NFS�� ������ ���� �뷮�� ��ũ�� ����, �Ǵ� �ƿ� �װ������� ���� Ŭ���̾�Ʈ�� ��Ÿ���� �Ͽ���. �׸��� �̵��� NFS ������ ��뷮 ���� �ý����� ������ �� �ְ� �����ν� �ƹ��� ���� ���� �����ϰ� �ý����� ����� �� �ֵ��� �ϴ� �ı� ȿ���� ���⵵ �Ͽ���.

    NFS�� 1985�� ��(Sun Microsystems)�簡 �����ߴ�. ������ �ϵ��ũ�� ���� Ŭ���̾�Ʈ�� �����ϱ� ���� �����߾�����, ������ �������� ������ ��κ��� ���н��� � ���·ε��� NFS�� �����ϰ� ���� ������ ���н������� ��ǥ���� ���� ���� ����� �Ǿ���. �׸���, �̷� NFS�� ������ ������ ���н����� �ƴ϶� ������ ����� ���� ��� OS������ NFS�� �� �� �ִ�.

    �� ���� ���� �������� �߽����� ����������, �ٸ� ���н��� �ý����� NFS�� �����ϰԳ���
    �ٷ���� �Ѵ�. ���������� NFS�� �ʿ�� �ϴ� ��Ʈ��ũ�� ������������ �̷���� �ִ� ���� ���� �幰�� �����̴�. ���ٿ� �����ڸ�, �������� ������ �� ���� �ڼ��� �⺻ ���볪 ������ ����� �ľ��ϰ� �� ��, �ٸ� ���н� �ý��ۿ����� �̸� ��� �����ϰ� �ִ� ���� ���캸�� ���̴�. ���н� �ý����� �پ��ϱ� ������ �⺻ ö�а� ������ �����ϰ� �ٸ� ��� ���� ���׿����� �ణ Ʋ�� �����̱� ������, ���������� ������ ������ �ణ�� �Ű游 �� ���� ���н� �ý����� ���� �پ��� ���� ��(?)�� ������ ������ ���н� �������� �� �� ���� ���̴�.

    1�忡���� NFS ������ ���ؼ� �ٷ��. �������� NFS�� ��ġ�ϴ� ���, �׸��� NFS ������
    �����ϴ� �߿��� ������ ���캸��, ������ ȯ�� ���� ������ exports ������ �ڼ��� ��������� �ٷ��.

    �̾, 2�忡���� NFS Ŭ���̾�Ʈ�� ���ؼ� �ٷ��. NFSŬ���̾�Ʈ�� ��ġ�ϴ� ���, �׸��� Ŭ���̾�Ʈ�� ȯ�� ���� ����� fstab ������ �ڼ��� ���� ����� �ٷ��. 3�忡���� fstab ������ ������ �����ϱ� ���� ���� �ڵ� ������ �߿��� ���� ������ amd�� ������ �ٷ��, ������ 4�忡���� ���н� ������ ���忡�� NFS�� �ٷ� �� �˾Ƶξ�� �� UID�� GID�� ����, ǥ������ ���丮 ������Ģ�� �ʿ伺, �ܺ� ��Ʈ��ũ�� NFS�� �� ���� ������, ���� NFS ���ϼ���, ����, ����͸��� Ʃ�� ���� ������ �ٷ��.

     

1. NFS ����

    NFS�� ���Ͻý����� �������ִ� ������ ������ ���Ͻý����� �̿��ϴ� Ŭ���̾�Ʈ�� �����۾����� �̷������. ���⼭�� ���� NFS ������ ���ؼ� �˾ƺ���.

 

1.1 NFS ���� ���α׷� ��ġ

    ��� ���н� �ý����� ó�� ��ġ�� �� NFS�� �ʿ��� ������ ��ġ�Ѵ�. ���� ������ NFS ��ġ ������ �ʿ� ����. �������� �ʱ� ��ġ �������� NFS�� �⺻���� ���õǾ� �����Ƿ� ��κ��� �ý��ۿ� ��ġ�Ǿ����� ���̴�. �׷���, NFS�� ��ġ���� �ʾҴ��� ũ�� ������ �ʿ�� ����. ���� ���� ��ġ�� �� ������ ���̴�.
    �������� ���� ���̴� ������ �������� ��� nfs-server-???-?.rpm�� nfs-server-clients-???-?.rpm�� ��ġ�Ǿ� �ִ��� ���캸�� NFS�� ��ġ ���θ� �� �� �ִ�.
     

    rpm -aqi |grep nfs


    ��� �Է��غ���.
     

    Name : nfs-server
    ��
    Name : nfs-server-clients
    ��


     ��� �޽����� �ߴ� ��쿣 NFS�� �̹� ��ġ�Ǿ� �ִ� ���̴�.

    rpm -aqi |grep nfs ���ɿ� "no match"�޽����� �ߴ� ��쿣 ���� ��ġ���ָ� �ȴ�. �̹� �� �˰� �ְ����� �ٽ� �ѹ� �ݺ��Ѵٸ�,
     

    rpm -ivh nfs-server-???-?.rpm
    rpm -ivh nfs-server-???-?.rpm

 

    ��� �Է��� �Ŀ� /etc/rc.d/init.d/nfs start ������ �����ָ� �װ����� ��ġ ������ ���̴�.

     

1.2 NFS ���� ����  

    �翬�� ������� NFS ������ ����� ���ؼ��� ���õǴ� ���� ���α׷��� ����� �����Ǿ� ����Ǿ�� �Ѵ�. �̵� ���� ���α׷��� �ý����� rc ��ũ��Ʈ�� ���ؼ� ������ �� �ڵ����� ����ȴ�.
    BSD �迭�� rc ��ũ��Ʈ�� ���� �ý��ۿ����� �밳 /etc/rc.local ���Ͽ��� mountd�� nfsd�� ���� ���α׷��� ����ǰ� ���� ���̴�. Ȥ�� �� �κ��� �ּ� ó���Ǿ� ������ �ּ��� �����ؾ� �Ѵ�.

    AT&T �迭�� rc ��ũ��Ʈ�� ���� �ý��ۿ����� /etc, Ȥ�� /etc/rc.d ���丮�� �������丮�� rc2.d�� rc3.d ���丮 �ؿ� S??nfs�� ���� ��ũ��Ʈ�� ���ؼ� ����ȴ�. Ȥ�� �̷� ��ũ��Ʈ�� ���ٸ�, S??nfs��� �̸��� �ɺ��� ��ũ�� /etc/init.d/ Ȥ�� /etc/rc.d/init.d ���丮 �ȿ� �ִ� NFS ���� ��ũ��Ʈ�� ��Ű�� �ȴ�.
    ������ �������� ��� /etc/rc.d/rc3.d/S??nfs�� ���� ������ �� �ڵ����� ����ȴ�.
    �̵� ��ũ��Ʈ�� ���ؼ� ����Ǵ� ������ ������ ����.

 

    1.2.1. portmap: RPC ���񽺸� TCP/UDP ��Ʈ�� ����

      NFS�� ���� XDR(��Ű���Ŀ� �����ϰ� �����͸� ǥ���ϴ� ���)�� RPC(remote procedure call) �������̽��� ������� ����Ǿ���. RPC�� �̿��ϴ� ���α׷��� ���۵Ǹ� �� ���α׷��� �ڽ��� �����ϴ� ���񽺿� �ڽ��� ����ϴ� ��Ʈ�� portmap�� ����Ѵ�. �׸���, Ŭ���̾�Ʈ�� portmap�� ������ ���ϴ� ������ ������ �� �ִ� ����� �˾Ƴ��� �ȴ�. ���н� �ý��ۿ� ���󼭴� portmap ��ſ� rpc.portmap, �Ǵ� rpcbind����� �θ���.

 

    1.2.2. rpc.mountd: ����Ʈ ��û�� ������ ����

      NFS Ŭ���̾�Ʈ�� ������ ���Ͻý����� �̿��ϱ� ���ؼ��� ���� ������ �ڽ��� ���Ͻý����� NFS�� �̿��� �ٸ� ȣ��Ʈ�� ������ �� �ֵ��� �����ؾ� �Ѵ�. �̿� ���� �۾��� BSD �迭 ���н������� export��� ��, AT&T �迭 ���н������� share��� �� ����. �������� export��� �� ����.
      NFS Ŭ���̾�Ʈ�� ������ NFS ������ ���Ͻý����� �̿��ϱ� ���ؼ��� �ݵ�� ������ ���Ͻý����� ����Ʈ�ؾ� �Ѵ�. NFS Ŭ���̾�Ʈ�� ����Ʈ�� ��û�ؿ���, rpc.mountd ������ /etc/exports ������ ������ ���� ����Ʈ ��û�� ó���Ѵ�.

      Ŭ���̾�Ʈ�� ���� ���Ͻý����� ����Ʈ�� �� �ִ� ������ ȹ���� ���Ŀ��� ������ Ŭ���̾�Ʈ���� ������ ��� �����Ǵ� ���� �ƴ϶�� ���� �˾Ƶ� �ʿ䰡 �ִ�. ��, httpó�� ��û�� ������ ��쿡�� ������ �̷�����ٰ� �� �̻� �ʿ䰡 ������ ������ �����Ǵ� (stateless) ����� ���ϰ� �ȴ�.
      ���н� �ý��ۿ� ���󼭴� rpc.mountd ��ſ� mountd��� �� ���⵵ �Ѵ�.

 

    1.2.3. rpc.nfsd: ������ Ŭ���̾�Ʈ�� ����

      rpc.mountd�� Ŭ���̾�Ʈ�� ����Ʈ ��û�� �޾Ƶ��̸�, Ŭ���̾�Ʈ�� ����Ʈ�� ���Ͻý��ۿ� ���� �پ��� �۾��� �� �� �ִ�. Ŭ���̾�Ʈ�� �۾��� �����ϸ鼭 ���� �� ���Ͻý��ۿ� ���𰡸� �䱸�ϰ� �Ǹ� rpc.mountd�� ���������� �ڱ� �ڽ��� NFS �����μ��� ���ҵ� ���ÿ� �����ϰ� ���� �ʴٸ� NFS Ŭ���̾�Ʈ�� rpc.nfsd�� �����ų �ʿ�� ����.
      rpc.nfsd�� ��ũ(fork)�� ���� ������ �ڱ� ���纻�� ���� �� ���� �� ���ΰ��� �����ϴ� �ϳ��� �Ű������� �޾Ƶ��δ�. �������� ������ ��κ��� �ý��ۿ��� ������ ���� rpc.nfsd�� �����ϴ� ���� �ſ� �߿��ϴ�. ������, ��Ÿ���Ե� � ���� ������ �������� �� �� �ִ� ��Ȯ�� ô���� ����, ��κ��� ��� ���������� ���ؼ� �˾Ƴ� �� �ۿ� ����. �� ���ڰ� �ʹ� ���ų� ������ NFS�� ������ ũ�� ������ �޴´�.

      ��� 4���� rpc.nfsd�� �����Ű�� �� �Ϲ����̴�. NFS�� ���� �̿����� �ʴ´ٸ� 4�� ������ ����ϴ�. �̷������� ����, ��õ ���� rpc.nfsd�� �����ϴ� �͵� �����ϴ�. �׷���, �ʹ� ���� rpc.nfsd�� �����ϴ� �͵� ������ ���μ����� CPU�� �ΰ� ���� �����ϱ� ������ �ý��� ������ ���Ͻ�Ų��.
      ������ load average(uptime audfufd���� �� �� �ִ�)�� �ް��� �������� �������� rpc.nfsd�� ���ڸ� �÷�����, �ý����� ������ �� �ִ� rpc.nfsd�� �ִ� ���� �� �� �ִ�. �� �ִ� ������ �� ���� ���̸� ������ ���� �DZ� �ϰ�����, �� ���� �ּ��� ���̶�� ������ ����. ���� �ִ� ���� �������� �� ���̱� �����̴�.

      �� �ϳ��� ����� UDP �����÷ο��� ������ �ľ��ϴ� ����̴�. ���ϰ� ���� �ɸ��� NFS ������ ���, ��� rpc.nfsd�� ������� �� �Ǵٸ� ��û�� ������ UDP ������ �����÷ο츦 ����ų �� �ִ�. �����÷ο��� ������ netstat -s �������� �˾ƺ� �� �ִµ�, �̸� ���� UDP ���� �����÷ο찡 0���� ���������� �뷫 �󸶳� ���� rpc.nfsd�� �־�� �ϴ��� �˾Ƴ��� ���̴�. �̷��� �˾Ƴ� rpc.nfsd�� ���� ���� �ý����� rc ��ũ��Ʈ�� �����ϸ� �ȴ�.
      �׷���, �������� ��� rpc.nfsd�� ���� �� ���� ���� �Ұ������� ������, ���� �����ϰ� �׽�Ʈ�� ���� ������ �ƴϹǷ� �����ϰ� ���� �ʴ�.
      ���н� �ý��ۿ� ���󼭴� rpc.nfsd ��ſ� nfsd����� �Ѵ�.

 

    1.2.4. rpc.lockd

      ���� ���(lock)�� ���� ���� ���� ���ÿ� �� ������ �����ϴ� ���� ���´�. ������������ ������� �ʴ´�.

 

    1.2.5. rpc.statd

      ���� ����� ������ ������ ����Ѵ�. ������������ ������� �ʴ´�.

      �̵� ������ ����� ����Ǿ������� Ȯ���ϰ� �ʹٸ�, �켱 rpcinfo -p ������ ���ؼ� rpc.mountd�� rpc.nfsd�� portmap�� ����� ��ϵǾ������� Ȯ���غ���. ��ϵ� �̸��� ���� ���� �̸��� �ణ �ٸ� ���� �ִ�. �̸��׸� rpc.mountd�� mountd��, rpc.nfsd�� nfs�� ��ϵ� �� �ִ�. Ps -aux(AT&T �迭���� ps -ef) ������ ���ؼ� �ش� ������ ����ǰ� �ִ��� Ȯ���غ��� �͵� �����ϴ�. ���δ� �ش� ���μ����� ����� �۵����� �ʾƵ� portmap�� ��ϵǾ����� �� �ֱ� �����̴�.

 

1.3 ���Ͻý��� ���� ����

    ��κ��� ���н������� /etc/exports ���Ͽ� ��� ���丮(�Ǵ� ���� �ý���)�� � ������ �ξ� ������ ���ΰ� �ϴ� ������ ��´�. �ƹ����Գ� �ڽ��� ���� �ý����� ���� ����� �� �ְ� �ϴ� ���� ��ġ �빮�� Ȱ¦ ����ΰ� ��� �Ͱ� ���� ���̱� �����̴�.

    exports ������ ������ �����ϴ� ���丮�� ���ʿ� ���� �� ���丮�� ���õ� �ɼ��̳� �Ӽ��� �����ʿ� ���� �ش�. �鹮�� �ҿ��ϰ� �̹Ƿ� �������� exports ������ ���� ������ ����.
     

    /lily/users daisy(rw,no_root_squash) rose(ro) 
    /usr/share/man freesia(ro) clover(ro) daisy(ro)

 

    �� export ������ /lily/users ���丮�� daisy��� ȣ��Ʈ�� �а� �� �� �ְ� ��Ʈ�� �������� �����ϴ� �͵� �㰡�� ���̸�, rose��� ȣ��Ʈ�� �б� �������� ����Ʈ�� �� �ְ� ������ ���̴�. �׸��� /usr/share/man ���丮�� ���ؼ��� freesia, clover, disy�� �б� �������� ����Ʈ�� �� �ְԲ� ������ ���̴�. �߿��� �ɼ��� ǥ1�� ����.  

ǥ 1)exports �ɼ�(������)
 

    �ɼ�

    ����

    ro

    �б⸸ �����ϵ��� ����Ʈ

    rw

    �а� ���Ⱑ �����ϵ��� ����Ʈ

    no-root-squash

    ��Ʈ�� �ڰ����� ���Ͻý��ۿ� ������ �� �ֵ��� ����Ʈ

    root-squash

    ��Ʈ�� �ڰ����� ���Ͻý��ۿ� �����ϸ� anonymous uid/gid�� �ٲ㼭 �㰡

    noaccess

    ���丮�� �������� ���ϰ� �Ѵ�. ������ ���丮�� Ư�� ���� ���丮���� �������� ���ϵ��� �����ϰ� ���� �� �����ϴ�.

 

    �������� /etc/exports ���� ������ �ٸ� ���н� �ý��ۿ� ���� Ư���� ���̴�. �Ϲ����� ���н� �ý����� exports ������ �ɼǻ��̿� ��ǥ(,)�� ����, ȣ��Ʈ�� ������ ���� �ݷ�(:)�� �Ἥ ������ ���� ��Ÿ����.
     

    /lily/users -access=rose,rw=daisy,root=daisy
    /usr/share/man -access
           =freesia:clover:daisy,ro=freesia:clover:daisy

 

    exports ������ �ɼǵ� ���н����� �ణ �ٸ���, ���� ���̴� �ɼ��� �����ϸ� ���� ǥ 2,3�� ����.
     

    �ɼ�

    ����

    -access = ȣ��Ʈ �̸�

    ���Ͻý����� ����Ʈ�� �� �ִ� ȣ��Ʈ(":"���� �� ���� ����)

    -ro

    �б� �������� ����

    -rw = ȣ��Ʈ �̸�

    �а� �� �� �ִ� ȣ��Ʈ
    (":"���� �� ���� ����)

    -root = ȣ��Ʈ �̸�

    ��Ʈ�� �ڰ����� ���Ͻý��ۿ� ������ �� �ִ� ȣ��Ʈ (":"���� �� ���� ����)

    -anon = ����

    �͸� ������� ��û�� ���� �� �ο��ϴ� UID. ����Ʈ�� nobody


ǥ 2) exports �ɼ�(IRIX, HP-UX, SunOs)

  

    �ɼ�

    ����

    ȣ��Ʈ �̸�

    ������ ȣ��Ʈ�� ���Ͻý�����
    ����Ʈ�� �� �ִ�.

    -ro

    �б� �������� ����

    -root = ����

    ��Ʈ�� �ڰ����� ���Ͻý��ۿ� ������ ��
    �ο��ϴ� UID. ���� ���� ������ nobody


ǥ 3) exports �ɼ�(BSDI, OSF/1)

    ��ó�� ���н����� export �ɼ��� �ణ�� �ٸ��Ƿ� �ڼ��� exports ���� ������ man exports ������ �̿��� Ȯ���ϴ� ���� ����.
    NFS�� ������ ���Ͻý����� ������� �ϴ� ���� �ƴ϶� ������ ���Ͻý����� ������� �Ѵ�. �ٲ� ���ϸ�, �������� ���� �ý��ۿ� ���ֹ��� �ʰ� � ���丮�� ������ �� �ִ�. ���� ���丮�� �ٸ� ��Ƽ���� �����ϴ���, �̸� ���� �Ű� ���� �ʾƵ� �ȴ�.

    exports ���Ͽ� �ƹ��� ȣ��Ʈ�� �������� �Ȱ� �ܼ��� ������ ���丮�� �����ְ� �Ǹ� �� ���丮�� "���" ȣ��Ʈ�� ����Ʈ�� �� �ְ� �ȴ�. �� ��� ���Ȼ��� ������ �ҷ�����ų �� �����Ƿ� �����ؾ��Ѵ�. Solaris�� ��� /etc/exports ��� /etc/dfs/dfstab ������ ����. �� ������ ȯ�漳�������̶�⺸�ٴ� share ������ �����ϴ� ����ũ��Ʈ��. Share ���ɿ� ���̴� �ɼ��� SunOs�� export �ɼǰ� �����ϴ�. ���� ���ڸ�,
     

    share -F nfs -o rw=lily:rose,root=lily  /lily/users
    share -F nfs -o ro=lily:rose:daisy  /usr/share/man

 

    /etc/exports ������ �ٲ㵵 ���� �� ������ ȿ���� �߻����� �ʴ´�. exports ������ �ٲ� ���Ŀ��� rpc.mountd�� ���������� �ٽ� �е��� ����� �Ѵ�. /etc/exports ������ ������ ���� �̸� �ݿ��ϴ� ������ ���н� �ý��ۿ� ���� �ٸ���. �������� exportfs ������ ���� ������ kill �������� rpc.mountd�� rpc.nfsd�� SIGHUP �ñ׳��� ������ �Ѵ�. ������ ���� ��ũ��Ʈ�� /usr/sbin/exportfs��� �̸����� �����ϴ� �͵� �Ѱ��� ����̴�.
     

    #!/bin/sh
    killall -HUP /usr/sbin/rpc.mountd
    killall -HUP /usr/sbin/rpc.nfsd
    echo re-exportted file system

 

    ������ �������� ��� ���� ������ ��������൵ �ȴ�.
     

    /etc/rc.d/init.d/nfs stop
    /etc/rc.d/init.d/nfs start

 

    HP-UX, IRIX, SunOs ���� ���� /usr/etc/exportfs -a ������ �����Ű�� �ȴ�. Exportfs ������ ���� OSF/1�̳� BSDI�� kill �������� mountd�� SIGHUP �ñ׳��� �����־�� �Ѵ�. Solaris�� ���� Ư���ѵ�, share ������ �����ϸ� mountd���� ����� ������ �˷��ְ� �ǹǷ�, ������ /etc/dfs/dfstab ������ ��������ָ� ����� ������ �ݿ��Ȱ� �ȴ�.

 

2. NFS Ŭ���̾�Ʈ

 

2.2 Ŀ�� ������

    NFS Ŭ���̾�Ʈ�� �����ϱ� ���ؼ��� ���� Ŀ���� NFS�� �����ϵ��� �����ϵǾ� �־�� �Ѵ�. ������ Ŀ���� ����Ʈ�� NFS�� �����ϵ��� �����ϵǾ� �����Ƿ� �Ű澲�� �ʾƵ� �ȴ�. ���� ���� Ŀ���� �������� ��쿡�� make config ������ ���� ������,
     

    ��
    *
    * Filesystems
    *
    ��
    NFS filesystem support (CONFIG_NFS_FS)
                                     [M/n/y/?]

 

    �̿� ���� �κ��� ������ �� M �Ǵ� Y�� �������ָ� �ȴ�. M�� ������ ���� ���� �������ϰ� �ȴ�. ���� �׷� ���� ��������, ���� �ϵ��ũ�� ���� Ŭ���̾�Ʈ�� �����ϰ� �ʹٸ� �ݵ�� Y�� �����ؾ� �Ѵ�. �ٸ� ���н� �ý����� Ŀ�ε� ����Ʈ�� NFS�� �����ϵ��� �����ϵǾ� �ִ�.

 

2.2 NFS Ŭ���̾�Ʈ ���α׷� ��ġ

    ��� ���н� �ý����� ��ġ �������� NFS�� �ʿ��� ������ ��ġ�Ѵ�. ���� ������ NFS Ŭ���̾�Ʈ ���α׷� ��ġ�� �ʿ� ����. �������� NFS Ŭ���̾�Ʈ�� �����ϱ� ���ؼ� Ư���� ��ġ����� �ϴ� ���α׷��� ����. ������ �������� ���, nfs-server-clients-???-?.rpm�� ��ġ�ϸ� �ѵΰ��� ��ƿ��Ƽ�� ��ġ������, �ݵ�� �ʿ��� ���� �ƴϴ�.

 

2.3 NFS Ŭ���̾�Ʈ ����

    NFS Ŭ���̾�Ʈ�� �����Ű�� ������ nfsiod �ϳ������ۿ� ����. ������ ���� �ʼ����� ������ �ƴ�����, �ݵ�� �� ������ �����ϱ� �ٶ���. ������, �������� ���� Ŀ�� �������� nfsiod�� �����ϹǷ� �� ���� �Ű� ���� �ʾƵ� �ȴ�.

 

    2.3.1 nfsiod: Ŭ���̾�Ʈ ���� ij���� ���

      NFS�� ������ ���������� ����Ű�� ���ؼ� ��κ��� �ý����� �ڵ����� nfsiod�� �����ϰԲ� �ϰ� �ִ�. nfsiod ������ �⺻���� ij�� ���(read-ahead, write-behind)�� �����Ѵ�.

      �������� ������ ������ �ý��ۿ����� rpc.nfsdó�� nfsiod�� �� �Ű������� �ڱ� ���纻�� ���� �� ���� �� ���ΰ��� �����Ѵ�. Rpc.nfsd�� ������ ��Ģ�� �׷��� nfsiod�� ������ �� �ִ�. ����, NFS ������ Ŭ���̾�Ʈ�� ������ ���ÿ� �Ѵٸ� ���μ����� �������� rpc.nfsd�� nfsiod ���̿� �����ϰ� ������ ���� ����. ���� ������ ���� �ý��ۿ� ����, �׸��� ��� ������ ����ϴ��Ŀ� ���� �ٸ� �� �ִ�.

      ������, BSDI, OSF/1�� ������ �ٸ� ���н������� nfsiod��� �̸� ��ſ� biod(block I/O ����)��� �̸��� ���� ���� �Ϲ����̴�.

 

2.4 ���Ͻý��� ����Ʈ ����

    Ŀ���� �������ְ� nfsiod ������ ����ȴٸ�, ���� ���� NFS ���Ͻý����� ����Ʈ�ؼ� ���� �� ���̴�. NFS ������ ���Ͻý����� ����Ʈ�ϱ� ���ؼ��� mount ������ ��ġ(device) �̸��� ���� �ڸ��� ������ ���� ������� NFS������ ���Ͻý����� �����ϸ� �ȴ�.
     

    Lily:/usr/share/man

 

    �� �ǹ̴� lily��� ȣ��Ʈ�� /usr/share/man ���丮�� �ǹ��Ѵ�. ����, lily��� ȣ��Ʈ�� /usr/share/man ���丮�� /usr/share/man ���丮�� ����Ʈ�Ϸ���,
     

    mount -t nfs -o soft,intr lily:/usr/share/man
    /usr/share/man

 

    �� ���� ������ �ָ� �ȴ�. ���⿡�� soft,intr ���� NFS ���Ͻý����� ����Ʈ�� �� ���̴� �ɼ��̴�.

    ���н� �ý��۰��� ����� �ɼ��� ǥ 4�� ����.
     

    �ɼ�

    ����

    rw

    �а� ���Ⱑ �����ϰ� ���Ͻý����� ����Ʈ(�������� rw�� �����ؾ�)

    ro

    �б� �������� ����Ʈ

    bg

    ���� ù ��° NFS ����Ʈ �õ��� Ÿ�Ӿƿ��� �ɸ��� ���� �ý����� ��׶���� ����Ʈ��ų ���� �˷��ִ� �ɼ�. �̰��� NFS�� ���Ͻý����� �����ϴ� ���� ȣ��Ʈ�� ���ÿ� ������ �� ������ �ɼ��̴�. ȣ��Ʈ A�� B�� ���ÿ� ���� �Ѵٰ� �����غ���. ȣ��Ʈ A�� ȣ��Ʈ B�� ���Ͻý����� ����Ʈ�Ϸ� ������, �� �� ȣ��Ʈ B�� ���� ���̾ ȣ��Ʈ B�� ���Ͻý����� ���� �������� �ʾ��� �� �ִ�. �̶� ȣ��Ʈ A�� ����Ʈ�� �ٷ� ���� ������ �ϴ� mount ������ ��׶���� �����ϰ� �Ǵ� ���̴�. �����ϰԵ� ���������� ���������� �� �ɼ��� �޾Ƶ��̱� ������ �׳� �����ع�����.

    hard

    NFS ������ �ٿ�Ǿ��� �� ������ ������ ���� ������ ������ ����Ʈ �õ��� �Ѵ�. �̶� Ŭ���̾�Ʈ �ʿ��� �̸� ������ ���� ����. �� ���� hard ����Ʈ�� �ϵ��ũ ���� ��ǻ�Ͱ� ��Ʈ ����(boot server)�� ���� �ý����� ��Ʈ ��Ƽ���̳� ���� ��Ƽ���� ����Ʈ�� �� �����ϴ�. �� hard ����Ʈ�� �ٽ����� ���Ͻý��ۿ� ���ؼ� ���ϴ� ���� ����. ����Ʈ���� hard��.

    soft

    NFS ������ �ٿ�Ǿ��� ��, hard ����Ʈ�� �޸� ������ ���� ����Ʈ �õ��� �ߴ��Ѵ�. �� �ɼ��� �߿����� ���� ���Ͻý��ۿ� ���� ����Ʈ �õ� ������ �ý����� ���μ����� �� �̻� ������� �ʴ� �־��� ��Ȳ�� ���ϴµ� �����ϴ�.

    retrans=����

    soft����Ʈ�� ���, ����Ʈ�� ���� �ʾ� ������ ����ϱ� ���� �� �� �� �õ������� �����Ѵ�. �������� rudd �⺻ ���� 3�̴�.

    timeo=����

    Ÿ�Ӿƿ��� ����� ���� ù ��° �����ۿ䱸�� ���� �� ���Ǵ� �ð��̴�. ��Ʈ�� �ӵ��� �����ų� ���� ��ü�� �����ٵ��� ���� ���� ����Ϳ� ����Ʈ���̸� ��ĥ ���� Ÿ�� �ƿ� �ð��� �÷��ִ� ���� ����.

    intr

    ����ڰ� ����Ʈ �õ��� �ߴܽ�ų �� �ֵ��� �Ѵ�.

    raize=����

    NFS �����κ��� �о� ���̴� ����Ʈ ���� �����Ѵ�. �⺻ ���� Ŀ�ο� ���� �ٸ��� �������� �ܿ� ����μ��� 1024����Ʈ�̴�.

    wsize=����

    NFS ������ ���⸦ �� �� ����ϴ� ����Ʈ ���� ���Ѵ�. �⺻���� Ŀ�ο� ���� �ٸ��� �������� ��� ����μ��� 1024����Ʈ�̴�.

    nosuid

    ����Ʈ�� ���Ͻý��ۿ��� setuid ��Ʈ�� ���� ������ �����ų �� setuid�� ȿ���� �Ͼ�� ���ϵ��� OS �������� ���� �ִ� ������ �Ѵ�. ���� security ������ ���� �Ű� ���� ���� ��� nosuid�� ����Ʈ ���Ѿ� �Ѵ�.


ǥ 4) NFS�� ���õ� ����Ʈ �ɼ�

    NFS ��Ƽ���� umount ������ �̿��ؼ� ���� �� �ִ�.

 

    2.4.1 /etc/fstab�� �̿��� ����

      mount ������ ���� NFS ���Ͻý����� ����Ʈ ������ ���, �ý����� ����� �Ǹ� �ٽ� ���� ���´�� ���ư��Ƿ� �ӽ÷� ����Ʈ �� ���ۿ��� ������ �ʴ´�. �׷��� ������ ��� �ý����� �������� �������� ����Ʈ�� �Ϸ��� /etc/fstab ���Ͽ� �̸� �����ϰų� �ƴϸ� �ڵ����� ����Ʈ�� �������ִ� �ڵ������͸� ���� �� �Ϲ����̴�.
      ��� �ý��ۿ��� /etc/fstab ������ ���� ���� �ƴϴ�. Solaris�� ��� /etc/fstab ������ �ƴ϶� /etc/vfstab ������ ����Ѵ�. ���������� Sco Unix������ /etc/default/filesys ���Ͽ�, AIX�� /etc/filesystems ������ ����Ѵ�. �� ���ϵ��� /etc/fstab ���Ͽ� ���� ������ �ణ�� Ʋ������, NFS�� ���� �ɼ��� �����ϴ�.

      ���� /etc/fstab ������ lily ȣ��Ʈ�� /lily/users ���丮�� daisy ȣ��Ʈ�� /usr/share/man ���丮�� ����Ʈ�ϴ� ���� �����ִ� ���̴�.
       

      lily:/lily/users /lily/users nfs rw,bg,intr,hard 0 0
      daisy:/usr/share/man /usr/share/man nfs ro,bg,intr,soft 0 0

 

      ���� ������ /etc/fstab ������ ���� 4��° �׸��� NFS ����Ʈ�� ���� �ɼ��� �����ϴ� ���̴�. ���⿡ ���̴� �ɼ��� mount ���ɿ� ������ �ɼ�(���� ǥ ?)�� ����.

      hard �ɼ����� ���Ͻý����� ����Ʈ�� ��ǻ�ʹ� ������ �ٿ�Ǿ��� �� �ý����� ���μ����� �� �̻� �������� ���ϰ� �����ع�����. ��, ������ �ٿ�Ǿ��� ��, Ŭ���̾�Ʈ ���� ��������� ���̴�. ����, �Ϲ������� soft �ɼǰ� intr �ɼ��� ���� ���� NFS�� ������ ���� ��ġ ���� ������ ���̴� ����̴�. �׷��� �� �ɼ��� �ణ�� �ٶ������� ���� ���鵵 �ִ�. �̸��׸� 20�ð��� �ɸ��� �ùķ��̼��� ������ �ִµ� ����� ��Ʈ��ũ ��� ������ 18�ð��̳� ���� �ùķ��̼��� ����Ǿ������ �ϵ� �߻��� �� �ִ�.

      /etc/fstab ������ �ٲ� ���� �ﰢ �ݿ����ֱ� ���ؼ��� mount -a -t nfs ������ �������ָ� �ȴ�. �׸���, etc/fstab�� �׸��� �߰��� ���� ����Ʈ�� �� ���丮(mount point)�� �̸� �������� �Ѵ�.

 

3. �ڵ�������

    ��Ը� ��Ʈ��ũ������ ���� ���Ͻý����� ����Ʈ�ؾ� �ϹǷ� /etc/fstab ������ ������ ����� ����������. �̷� ���� �Ѳ����� ���� ���Ͻý����� /etc/fstab ������ ���� ����Ʈ�ϴ� ���� ��ġ ���� ������ �ҷ�����Ų��.

    ù°, /etc/fstab ������ ���� �����ϴµ� ����� �ð��� ����� ����. ���� ���� NFS Ŭ���̾�Ʈ�� �ְ�, �� ������ /etc/fstab ���Ͽ� ���� ���� NFS ������ �����Ѵٰ� �����غ���. ������ ��ǻ�͸��� /etc/fstab ������ ���ݾ� �޶�� �ϱ� ������ �ϳ��ϳ��� /etc/fstab ���ϸ��� ���Ǹ� ��←�� �Ѵ�.

    ��°, Ŭ���̾�Ʈ�� ���� �� Ȥ�� �� �̻��� NFS ��Ƽ���� ����Ʈ���� ��, �� �� �ϳ��� ������ �ٿ�Ǿ Ŭ���̾�Ʈ�� ���μ����� ������ ������� �� �ִ�.

    ��°, �߿��� ������ �ٿ�Ǹ�, ���� Ŭ���̾�Ʈ���� �ٿ���� �ʴ���, ����ڵ��� �߿��� ���Ͻý���, �̸��׸� /usr/share/man ���� ����� �� ���� �ȴ�. �� ��� ��� �����κ��� �ӽ÷� ���Ͻý����� ���� ���� ����Ʈ�� �� �־�� �ϴµ�, /etc/fstab ������ �������� �̷� ��� ��ó�� ����� ����.

    �ڵ������ʹ� ���Ͻý����� �ʿ��� �� ����Ʈ�ϰ� �ʿ���� �� ����Ʈ�� �����Ѵ�. ����ڴ� /etc/fstab ������ �̿��� ����� �ƹ��� ���̸� ������ ��������, �� ����� ���� ���� ����Ʈ�� ���� �ý����� ���� �ּ�ȭ�ǰ� ���� ���� �߻� ���ɼ� ��ü�� �پ���. ��κ��� �ڵ������ʹ� �߿��� ���ϼ����� �ٿ�Ǿ��� ������ �ڵ����� ��������� ����Ʈ�� ��� �۾��� ������ �� �ֵ��� �ϴ°� �����ϴ�.
    �ڵ������ʹ� ���� ���Ͻý����� �����, ��Ʈ��ũ���� ���� ���Ͻý����� �ű⿡ ������Ų��. ����ڰ� ���� ���Ͻý����� �̿��Ϸ� �ϸ� �ڵ������ʹ� �� �õ��� �ν��ؼ� ���� ���Ͻý����� ����Ʈ�Ѵ�. �׸��� ����Ʈ�� ���Ͻý����� ���� ���丮�� �ɺ��� ��ũ�� ��ġ ���� ���Ͻý����� ���� ���Ͻý����� ��ó�� ���̰� �ϴ� ȯ���� ������.

    �ڵ������Ϳ� ���� ���̵��� ���� �㿡�� ���Դ�. ���� �ڵ��������� automount�� ��κ��� �� ȣȯ NFS �ý��ۿ� ž��Ǿ�Դ�. �׷��� �����ϰԵ� automount�� ���׿� ������ ���� ������ ���� amd�� ���� ��������� ���� ��������.

    ���� ���丮�� Į������ Jan-Simon Pendry�� ���� ������� amd�� ���� ���̵� Ȯ���� �ڻ����� ������ ����̴�. amd�� automount�� �ɰ��� ������ ���� ���ư� �����̹Ƿ� ���� ���н� ������ ���� �Ǿ���. ���� �����ϴٸ� amd�� ���� ���� �����Ѵ�.

 

3.1. amd

    amd�� automount�� ���� ������ ���� ������ ������.

    -> amd�� ����ϴ� Ŭ���̾�Ʈ�� NFS ������ �ٿ�Ǵ� ��쿡�� ���� �ٿ���� �ʴ´�.

    -> amd�� ������ �������� NFS ������ ����ִ����� Ȯ���ϴ� �޽����� ������,
         ���� ������ ���� ����� �����Ѵ�. amd�� �� ������ ������ ���Ͻý����� ����Ʈ�ϰų�
         Ȥ�� ����Ʈ�� �����Ѵ�. ���� ������ �ٿ�ȴ� �ص�, Ŭ���̾�Ʈ���� �ٿ���� �ʵ���
         �� ������ ���� ����Ʈ �õ��� �����ϰ� ���� �޽����� ����ڿ��� �����ش�.

    -> amd�� �ҽ��ڵ尡 �����Ǿ� �־� 20�� �̻��� ���н������� ���� �Ǿ� �ִ�.
         �׸���, �������� �����̰� BSDI�� OSF/1���� OS ��ġ�� �� �⺻���� ���Եȴ�.

    -> amd�� �ؽ�Ʈ ������ �����̰� NIS, Hesiod, ndbm���� ���� ���� ������ �����ͺ��̽�
         ����, ������ Ȩ���丮�� ����Ʈ�� ��쿡�� /etc/passwd ���ϵ� ���� ���Ϸ� ������
         �� �ִ�.

    -> amd�� amd�� ���� ����Ʈ ��Ȳ�� �˷��ְ� ���� ���� ������ ���� (���� ��� ����
         ����Ʈ ����)�� ������ �� �ִ� ������ amq ���α׷��� �����Ѵ�.

    -> amd ���������� ������ automount ���������� �������� �� �Ϲ����̴�.
         �׷��Ƿ�, �� ���� �������� �����̶� �ٸ� ȣ��Ʈ�� ���̸� �� ȣ��Ʈ�� �°� ����
         �ϵ��� ������ �� �ִ�. ���� ���� ���� NFS Ŭ���̾�Ʈ�� �ִ��� ��� ȣ��Ʈ��
         ������ amd ���������� �� �� �ִ�.

    -> amd�� ���������� �ϰ��� �ִ� ���Ͻý��� ������ ����ϹǷ� automount����
         ���� ���丮���� �����ϰ� �ٷ� �� �ִ�.

 

3.2. amd�� ��ġ

    amd�� ��ġ�Ǿ����� ���� ���н� �ý����� ���ͳݿ��� �ҽ��ڵ带 �޾ƿͼ� �������� ��ġ�� �� �ִ�. Amd�� ���� �� �ִ� ftp ������ ftp://ftp.cs.umn.edu/pub/AMD/�� ftp://ftp.eunet.fr/.01/network/amd/ �� ���� ������ �ִ�.
    ���� ������ ������ ����ڴ� amd-???-?.rpm ������ ��ġ���ָ� �ȴ�. �������� ������� ��¥ ������ �����ǿ��� amd�� ��¾ ������ ���������� ��Ȳ�� �ʿ�� ����. ��ġ�� CD�� excluded ���丮�� rpm ������ �����Ǿ� �����Ƿ� �̰��� �̿��� ��ġ�ϸ� �ȴ�. ��ġ����� rpm -ivh amd-???-?.rpm ������ ��������ָ� �ȴ�.

 

3.3 amd�� ���� �� ����

    amd�� ������ �ɼ��� �پ�������, �ַ� ������ ���� �ɼ��� �Ἥ �����Ų��.
     

    amd -a /.automount -l syslog / net/ etc/amd.conf

 

    ���⼭ -a�� ���� ����Ʈ�Ǵ� ���丮�� �����ϴ� �ɼ��̰� ����Ʈ���� /a�̴�. �׸��� -l �������� �α� ���� �̸��̳� syslog�� ���ִµ�, ���� �޽����� ����ϱ� ���� �ɼ��̴�. �� ���� �ƹ��� �ɼǾ��� �����ִ� ���丮�� �������� ����Ʈ�Ǵ� ���丮�� ���ϰ�, �������� �����ִ� ���� �̸��� amd�� ���� ���� �̸��� �ȴ�. ����, �� ������ ���� ����Ʈ�Ǵ� ���丮�� /.automount�̰�, syslog�� ���ؼ� �α׸� ����ϸ�, �������� ����Ʈ�Ǵ� ���丮�� /net, �׸��� amd ���������� /etc/amd.conf�� �Ѵٴ� ���̴�.
    amd�� ������ �����ϸ� amd�� ���� ���Ͻý����� �����ϰ� ������ �� ����. ���� amd�� �����ϱ� ���ؼ��� amd�� kill �������� SIGTERM �ñ׳��� �ִ� ����� ���ؾ� �Ѵ�.

    ���õ� ������ �ڵ����� ����ǰ� �ϱ� ���ؼ��� BSD�迭 ���н��� ��� /etc/rc.local ���Ͽ� ���� ������ �߰� �ϸ� �ȴ�. AT&T �迭 ���н������� ���� �������� /etc/init.d/amd �Ǵ� /etc/rc.d/init.d/amd��� ��ũ��Ʈ�� �����, �� ��ũ��Ʈ�� /etc, Ȥ�� /etc/rc.d ���丮�� �������丮�� rc2.d�� rc3.d ���丮 �ؿ� S??amd��� �ɺ��� ��ũ�� ����� �ȴ�.
    ������ �������� ��� amd�� ��ġ�ϸ� �ڵ����� ���� ��ũ��Ʈ���� ������ش�. amd�� �����Ű�� ���ؼ��� /etc/rc.d/init.d/amd start ������ �����Ű�� ���ؼ��� /etc/rc.d/init.d/amd start ������ �����Ű�ų� �ý����� ����� ��Ű�� �ȴ�. �׸��� amd�� �����ϱ� ���ؼ��� /etc/rc.d/init.d/amd stop ������ �����Ű�� �ȴ�.

    ����ڰ� amd �������Ͽ� ���ǵ� ���� ����Ʈ ���丮 ���� ���Ͻý����� �̿��Ϸ� �ϸ�, amd�� ���Ͻý����� ����Ʈ�ϰ�, ��� ��Ȳ�� ��������� ����� �Ѵ�. ����Ʈ�� ���Ͻý����� ������ �ð��� �������� �ƹ��� ������� ������ amd�� ����Ʈ�� �����ϰ� �ٽ� ���� ���� ��ٸ���.
    ����Ʈ ���¸� ���� ���ؼ��� amq ������ �̿��ϸ� �ȴ�.

 

3.4. amd�� ����

    amd ���������� ������ �ſ� �����Ͽ� �ϳ��� ������ ������ ���� ��ǻ�Ϳ� ���� �� �ִ�. amd �������Ͽ� ������ �� ���� �ý����� ������ ����Ʈ ������ ������ �־�� �Ѵ�. ���� ���� ����Ʈ ������ ǥ 5�� �����Ǿ� �ִ�.
     

    �ɼ�

    ����

    nfs

    NFS������ ���� ���丮�� �Ϲ����� ������� ����Ʈ

    ufs

    ���� ���Ͻý����� �Ϲ����� ������� ����Ʈ

    host

    NFS ������ ���� ���丮�� ��ü ��� ������ ������ ����Ʈ

    nfsx

    /usr/man�̳� /usr/local/man�� ���� ���������� �� �׸� ���ŵ� NFS ������ �ִ� ���� �������丮�� ���ÿ� ����Ʈ

    program

    Ư���� ���Ͻý����� ��� ����Ʈ �Ǵ� ����Ʈ�� �����ϱ� ���� �뵵�� ���α׷��� ���� �ִ�. �̷� ���Ͻý����� �ٷ� �� ���.

    link

    amd�� ���� � ���丮���� ������ �� �ֵ��� ���� ����Ʈ ���丮�� ����Ű�� �ɺ��� ��ũ ����  

    auto

    �̹� �����ϴ� ����Ʈ ���丮 �Ʒ��� ���ο� �ڵ�����Ʈ ���丮�� ����. �ַ� �߿��� ������ �ٿ�Ǿ��� �� ��� ������ ����Ʈ�ϴ� �뵵�� ���ȴ�.

    direct

    ���� ���丮 ���� �ƴ϶� �ٸ� ���丮�� ����Ʈ

    union

    ���� ���� ���丮�� ���ļ� �ϳ��� ���丮�� ����Ʈ (���� ��� /tmp�� /var/tmp�� ��ġ��)


ǥ 5) ���� ���Ǵ� amd ����Ʈ ����

    Ư���� ����, �̸��׸� Ư���� ȣ��Ʈ�� �ϵ���� ���¿����� ����ǵ��� ���������� ������ ���� �ִ�. �̷� ������ ������ ����ؼ� '{������}' �������� ǥ���Ѵ�. �̿� ������ ������ ǥ 6�� �����Ǿ� �ִ�.
     

    ����

    ����

    arch

    ȣ��Ʈ�� �ϵ���� ����(architecture)

    autodir

    ���� �ý����� ����Ʈ�Ǵ� ����Ʈ ���丮

    byte

    �ý����� byte ordering("little" �ƴϸ� "big")

    cluster

    ȣ��Ʈ�� ����ü �̸�, ����Ʈ�� domain

    domain

    NIS ������ �̸�

    host

    ȣ��Ʈ �̸�

    hostd

    ȣ��Ʈ �̸� + ������ �̸�

    karch

    Ŀ�� ����(����Ʈ���� arch ������ ���� ����)

    key

    �ؼ��� ���� �̸�

    map

    ���� ����Ʈ ���������� �̸�

    os

    OS ����

    wire

    ��ī�尡 ����Ǿ� �ִ� ��Ʈ��ũ �̸�


ǥ 6) amd �������Ͽ��� ��� ������ ����

    ������ amd ���������� �������� ���̴�.

    '�̸�=��' ���� ������ ����Ʈ�� �پ��� �Ӽ��� �����ϴµ� ���δ�. ���� ��� ù ��° ���� ����Ʈ ����Ʈ �ɼ���
     

    /default opts:=rw,soft,timeo=10,retrans=5
    usr/man host==lily;type:=ufs;dev:=/dev/sdlf
                 host!=lily;rhost:=lily;rfs:=/${key};
                 type:=nfs;fs:=${autodir}/${key}
    cs/tools host==daisy;type:=ufs;dev:=/dev/sd3c
                 host!=daisy;rhost:=lily;rfs:=/${key};
                 type:=nfs;fs:=${autodir}/${key}

 

    "rw,soft,timeo=10,retrans=5"�� ������ ���̴�. '�̸�=��' '�̸�=��' ���� ������ ���ǹ��� ��Ÿ����. ���ǹ��� �����ʿ� ���� ������ ���ǹ��� ���� ��쿡�� ���δ�. ${autodir}�̳� ${key} �ڸ����� �ش� �������� ���� �ȴ�.

    �� amd ���������� /usr/man, /cs/tools �� ���� ���� �ý��۵鿡 ���� ������ ���̴�. /default �׸��� ���������� �ɼ��� �������� �ʾ��� ��� ��� �׸� ����Ǵ� ����Ʈ���� �����Ѵ�. Mad �������Ͽ��� ���̴� �ɼ��� ���� ǥ 7�� ���� �ִ�.
     

    �ɼ�

    ����

    rhost

    Ư�� ������ �����ϴ� NFS ����

    rfs
    type

    NFS ���Ͻý��� �̸�
    ����Ʈ ����

    fs

    ����Ʈ ����Ʈ


ǥ 7) amd �������� �ɼ�

3.5. ������� ����

    automountó�� amd�� Ư�� ���Ͻý��ۿ� ���� ������ ������ �����ϴ� ���� �����ϴ�. �׷��� amd�� ��κ��� ��쿡 �ּ����� ����߿� �ٿ�Ǵ��� ���Ͻý����� ����Ʈ�� �����ϰ� ��ٷ� ��� ������ ����Ʈ�� �� �ִ� �ΰ����� �ɷ��� �ִ�.

    ���� ������ /usr/man ���丮�� lily�� daisy �� ���� �������� ����Ʈ�ϵ��� ������ ���̴�.
     

    /default opts:=rw,soft,timeo=10,retrans=5
    usr/man host==lily;type:=ufs;dev:=/dev/sdlf ||
                 host==daisy;type:=ufs;dev:=/dev/sd3c ||
                 rhost:=lily rhost:=daisy;rfs:=/${key};
                 type:=nfs;fs:=${autodir}/${key}

 

3.6. ������ ��� ��

    ���� ������ ����Ʈ�� amd ���������� �����ϱ⿡ ���� �����ϰ� �� �� �ִ�. �ѹ� �پ��ϰ� ����Ʈ�� �õ��غ��� �ٶ���.
    �׷���, amd�� �̷� ��������� ��ư� Ʈ�����ٸ�, ������ ���� ���� ������ /etc/amd.conf��� �̸����� �����ϰ�, ���� ����Ʈ ���丮�� /net���� �ؼ� mad�� �����غ���.

     ls /net ������ ������ /net ���丮���� �ƹ��� ���ϵ�
     

    /defaultstype:=host;fs:
                      =${autodir}/${rhost}/root;rhost:=${key}
    *           opts=rw,nosuid,grpi

 

    ���ٴ� �� �� �� ���� ���̴�. �׷���, ls /net/lily ������ ������ amd�� lily�� ���Ͻý����� �ڵ������� ����Ʈ�ϰ�, �� ���Ͻý��� ������ �����ش�. ���������� ls /net/daisy ������ ������ daisy�� ����Ʈ�� �� �ִ�. �׸���, ���� �ð����� lily�� daisy�� ���Ͻý����� ���� ������ amd�� �ڵ������� ����Ʈ�� �����Ѵ�.

    �̷� ���� ������ �������Ϸε� ���� ����, ��õ ���� NFS ���Ͻ����� ����Ʈ�� �� �ִ�. � ȣ��Ʈ�� ���Ͻý����� ����Ʈ�ϰ� �ʹٸ�, �ܼ��� /net/[ȣ��Ʈ �̸�] ���丮�� ���ֱ⸸ �ϸ� �Ǵ� ���̴�.

 

4. ������ ���������� NFS

 

4.1. UID�� GID

    ��Ʈ��ũ�� �ִ� NFS ������ �����ϰ��� �ϴ� ����ڴ� �α��� �̸��� �ݵ�� passwd ���Ͽ� �־�� �Ѵ�. �׸��� �� ���� UID�� GID�� ���Ͻý����� �����ϴ� ������ Ŭ���̾�Ʈ���� ���ƾ� �Ѵ�. ���� �Ը� �̻��� ��Ʈ��ũ������ UID�� GID�� �����ؾ� �ϴ� �͸�ŭ �Ӹ� ���� ������ ����. �� ���� ����ڰ� 10���� NFS ����/Ŭ���̾�Ʈ�� �̿��Ѵٰ� �ϸ� ���� õ ���� passwd ���� �׸��� UID�� GID�� �Ű� ��� �Ѵٴ� ��Ⱑ �ȴ�. ���� �� ���� �������� �������� �ð����� ���̱� ���ؼ��� NIS ���� �̿��� ��ü ����Ʈ�� UID�� GID�� �����ϵ��� �ϴ� �� ����.

 

4.2. ���丮 ���� ��Ģ

    ǥ������ ���丮 ������Ģ�� �����ϰ� �ִٸ� NFS�� �ٷ��� ���� ��������. �����̸��� ������ ���丮 ���� ���� ���� �ȴ�. ����ڵ��� ���� ������ �� �ֱ� �����̴�. �̸��׸� lily�� �ָ��� �ٿ�� ���̶�� �������� ������ ���� ����ڴ� '/lily/share/data��� ���丮�� ����� �� ���� �״� ���߿� �۾��� ������ �ָ��� ���̳� �ھ߰ڴ�' ��� ���� ������ �� �ֱ� �����̴�. Ŭ���̾�Ʈ�� ���� �ý��ۿ��� ���Ͻý����� ����Ʈ�� ��, ��Ʈ ���丮�� �ʹ� ���� ���丮�� ���� �������� ���δٸ�, �� �� ���� ���������� ����� �ȴ�. �̸��׸� /net/lily/share/man ���丮ó��.

 

4.3. �ܺ� ��Ʈ��ũ���� NFS

    �������� NFS�� ����� �Ǵ� Ʈ������Ʈ ���� �������ݷ� UDP�� �̿��Ѵ�. NFS�� ��Ŷ ���İ� ���� Ȯ�� ����� ������ �ִ� �ص� NFS�� UDP ��� ��Ը��� IP ��Ʈ��ũ���� ���� ������ �����ϴµ� �ʼ����� ������������� ������ ���� �ʴ�.

    �̷� ������ ���� ��Ʈ��ũ�� �ƴ� ����͸� ������ ��ǻ�ͳ����� NFS ����Ʈ, Ȥ�� WAN ��ũ�� ���� ��ǻ�ͳ����� NFS ����Ʈ�� ���ؾ� �Ѵ�. ����ͳ� WAN�� ���� NFS ����Ʈ�� �ϱ� ���ؼ��� UDP ��ſ� TCP�� ��� �Ѵ�. ��� ���н�������(OSF/1�̳� BSDI�� �����ؼ�) �̹� UDP ��ſ� TCP�� ���� NFS�� ����� ������ "TCP-NFS"�Ƿ��ִ�. �׷��� �������� �������� TCP ����� NFS�� ���������� ���ϰ� �ִ�. ���� ���� ��Ʈ��ũ�� �ƴ� ���� ȣ��Ʈ���� NFS�� �ﰥ ���� ���Ѵ�.

 

4.4. ���� NFS ���ϼ���

    NFS�� ���������� ������(stateless) ����Ǿ��� ������ �߻��ϴ� ���ɻ��� ���� ������ �����ϰ� �ִ�. ������ ��� ����� ������ ���н� ���� ij���� �����ߴٰ� ���߿� �Ѳ����� �ϵ��ũ�� ����� �ϸ� �Ǵµ� ����, NFS ������ ���� �۾��� �� ������ �ݵ�� ��ũ�� ����� ������ ����ؾ� �Ѵ�. �̷� ���� ������ NFS ������ ���� �۾��� �� ������ �ɰ��� ���������� �߻��Ѵ�.

    �׷���, NFS�� ���߼��� ���Ծ� �̸� �ذ��ϱ� ���� ���� ��ǰ���� ���忡 �����ִ�. � ij�� ����� ���� NFS ������ ���� ���������� �ذ��ϱ� ���� ����ũ ���� �̿��� ����� ������ �����ϰ� ���� �Ϸ� ��ȣ�� Ŭ���̾�Ʈ�� ��� �����ش�. �׸��� ����� ������ �ý����� �Ѱ��� �� ��ũ�� ����Ѵ�. �� �ܿ��� ���� NFS ������ ���� Ư���� �ϵ������ ����� NFS�� ������ �������� ����Ų ��ǰ�� �ִ�.

 

4.5. ���Ȱ� NFS

    NFS�� ��Ʈ��ũ ���� ���Ͽ� �����ϴ� �ս��� ����� �����Ѵ�. �׷��� �ɰ��� ���� ������ ����ų ������ �׻� ������ �ִ�. ��κ��� ����Ʈ������ /etc/exports(Ȥ�� /etc/dfs/dfstab) ������ �����ϰ� �����ϴ� �͸����ε� ������ �ʴ� ���ٿ� ���ؼ� ������ �� �ִ�.
    ���� �ʿ��� ��Ʈ �������� �������� ���ϰ� �����ϸ�, ��Ʈ ������ �߿��� ���̳ʸ� ���� � ������ �� ���Բ� ������ �� �ִ�. �׷��� �� ����� �������� ȿ���ۿ��� �ŵ� �� ����. ���� �ʿ��� ��Ʈ ������ ������ �ٸ� ������� ������ ������� �ǵ帱 �� �ִ� ����� �����ϱ� �����̴�.

    ����ư, Ŭ���̾�Ʈ�� ��Ʈ ����ڸ� �ʹ� �ŷ��ϴ� ���� ���� �ʴ�. ����ڰ� �׻� �ҹ����� ��Ʈ ������ ���� ���ɼ��� �ֱ� �����̴�. �� �Ƚ��� ���� �ʴ´ٸ�, ������ �ŷ����� ���ϴ� ȣ��Ʈ���� ������ �������� �ʴ� �͵� �����غ� �� �ϴ�.

    ������ó��, portmap�� ���� ������ ������ �� �ִ� �ý����� ��쿡�� /etc/hosts.deny�� /etc/hosts.allow ������ �����ϰ� �����ؼ� ���Ȼ��� ������ ���� �� �ִ�. ���� ���, ���� ��Ʈ��ũ�� ��Ʈ��ũ ��巹���� xxx.xxx.xxx.0�̰� ����� ����ũ�� 255.255.255.0�̶��, /etc/hosts.deny ������ ������ 'portmap:ALL'�̶�� �ٲٰ� /etc/hosts.allow ������ ������ 'portmap:xxx.xxx.xxx.0/255.255.255.0'�̶�� �ٲپ ���� ��Ʈ��ũ �ۿ����� ������ ������ �� �ִ�.

    �� �ܿ� �� ���� �� �߰��Ѵٸ�, ���� ���Ͻý����� localhost�� 127.0.0.1�� �������� ���ƾ��Ѵٴ� ��, rpc.mountd ���� �n �ɼ��� ������ ���ƾߵȴٴ� ���� ����Ű�� �ʹ�. �׸��� ���������� exports ������ �ɼ��� 256�ڸ� �Ѿ��� �� ���ȿ� ������ ����� �ý����� �����Ƿ� �̸� �����϶�� ���� ���Ľɿ��� ���صд�.
    Ŭ���̾�Ʈ ���� ������ ����Ʈ�� ���� �ɼ��� �����ϰ� �����ϴ� ������ ��� ���� �޼��� �� �ִ�. ���� ���, NFS ���Ͻý����� ����Ʈ�� ��, suid-root ���α׷��� ����Ǵ� ���� ���� ���� nosuid �ɼ��� �ִ� �͵� �����غ��� �ϴ�.

 

4.6. NFS ����͸��� Ʃ��

    ��κ��� ���н��� nfsstat�̶�� NFS �ý��ۿ� ���� �پ��� ���¸� �� �� �ִ� ���ɾ �����Ѵ�. nfsstat -s�� NFS ���� ���μ����� ���� ���ġ�� �����ְ� nfsstat -c�� Ŭ���̾�Ʈ ���� ������ �����ش�. �׷��� �ƽ��Ե� ���������� �������� �̿� �ش��ϴ� ���ɾ ���� ���ϴ�. NFS�� ������ ����ȭ ��Ű�� �Ǵٸ� ����� NFS �������� �б�� ���⸦ �� ���� ���� ũ��(rsize, wsize)�� ����
     

    time dd if=/dev/zero of=/mnt/testfile bs=16k count=4096

 

    �ϴ� ����� �ִ�. �Ϲ������� SunOs�� Solaris�� ��� 4096����Ʈ�� ������ �� ���� �����ٰ� �Ѵ�. ���� �ٸ� �÷��������� ���� ���� �̿� �ٸ��� �����̴�.
    ���� �۾��� wsize�� ���Կ� ���� ���� ���̰� �󸶳� ������ �˾ƺ��� ���ؼ� ������ ���� ������ �ݺ��ؼ� �������� ��հ��� ���غ���.

    �� ������ �ƹ� ���� ���� 64�ް� ������ /mnt/testfile�̶�� �̸����� ����� �� �ð��� �����ϴ� �����̴�. /mnt ��Ƽ�ǿ� NFS ������ ���Ͻý����� ����Ʈ�ϰ� ������� ����. �� �� ���ۻ������ 1024 ����Ʈ�� ����� ������Ѿ� �Ѵ�.
    �б� �۾��� rsize�� ���Կ� ���� �󸶳� �������̰� �������� �� /mnt/testfile�� �ٽ� �о���� �ð����� �� �� �ִ�.
     

    Time dd if=/dev/zero of=/mnt/testfile bs=16k

 

 

5. ��õ�Ҹ��� �ڷ�

    * Langfeldt, Nicolai, "NFS HOWTO", v0.5, 9 March 1997

    * Nemeth, Evi, Snyder, Garth, Seebass, Scott, and Hein, Trent R., "Unix System Administration Handbook", 2nd Ed., Prentice Hall PTR., 1995.

    * Stem, Hal., "Managing NFS and NIS" O'Reily & Associates, 1992.

    * Pandry, Jan-Simon and Williams, Nick, AMD: The 4.4 BSD Automounter Reference Manual., "4.4BSD System Manager's Manual", Usenix and O'Reilly. 1994.




�� top

home����...