Wheezy: nis/autofs가 작동하지 않습니다

Wheezy: nis/autofs가 작동하지 않습니다

Debian lenny가 설치된 컴퓨터가 여러 대 있습니다. 그 중 하나에는 nis 서버가 있습니다. 193.167.1.75 로그인 시 홈 디렉터리를 자동으로 마운트할 수 있습니다.

>ssh 193.167.1.80 -l myuser
>pwd
 /home/nis/myuser

이제 그 중 하나에 debian wheezy를 설치했는데 더 이상 홈 디렉토리를 자동 마운트할 수 없습니다(하지만 여전히 myuser로 로그인할 수 있습니다).

>ssh 193.167.1.80 -l myuser
 Could not chdir to home directory /home/nis/myuser: No such file or directory
>pwd
 /

지금까지 내가 한 일:

apt-get install nis nfs-common portmap autofs
echo "+::::::" >>/etc/passwd
echo "+::::::::" >>/etc/shadow
echo "+:::" >>/etc/group
echo "mynisserver" > /etc/defaultdomain
echo "ypserver ##.##.##.75" > /etc/yp.conf
nisdomainname mynisserver
/etc/init.d/nis restart
echo "+auto.master" > /etc/auto.master
rm /etc/auto.home
/etc/init.d/autofs restart

홈 디렉토리가 아직 마운트되지 않은 이유를 아시나요?

편집 1:

클라이언트 (193.167.1.80)

grep -i automount /var/log/messages
grep -i automount /var/log/syslog

아무것도 반환하지 않음(로그인 시 줄 바꿈 없음)

/etc/init.d/autofs status
[ ok ] automount is running.

ns 스위치:

cat /etc/nsswitch.conf 

passwd:         compat nis
group:          compat nis
shadow:         compat nis

hosts:          files dns nis
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

이것이 무엇과 관련이 있는지는 확실하지 않지만 다음과 같은 경우에 대비합니다.

showmount -a
clnt_create: RPC: Port mapper failure - Unable to receive: errno 111 (Connection refused)

서비스 터미널(193.167.1.75):

cat /etc/exports
/home/nis 193.167.1.0/24(sync,rw,no_root_squash,no_subtree_check)

편집 2:

루트를 사용하여 193.167.1.80에 수동으로 nfs 마운트를 시도했습니다. 효율적인. 이제 autofs가 이 작업을 자동으로 수행하지 않는 이유를 알아내야 합니다.

mount -t nfs -o rw 193.167.1.75:/home/nis /home/nis

답변1

NFS에서 내보낸 파일 시스템이 없는 것 같습니다. 자동 맵에 항목을 배치하는 것만으로는 아무것도 자동으로 내보내지지 않습니다. /etc/exports원본 서버의 파일을 확인하세요 .

또한 두 자동 마운트 맵의 컨텍스트가 무엇인지 표시해야 합니다.

또, 짚고 넘어가야 할 점 /etc/nsswitch. 이 파일을 잘못 설정하면 NIS가 참조되지 않습니다.

답변2

내 시스템에서도 이 내용이 표시됩니다. 내 경우에는 로그인했을 때 NIS가 시작되었지만(yp가 서버 이름을 반환함) 자동 설치 프로그램이 어떤 매핑도 읽지 않은 것을 확인했습니다. autofs를 다시 시작하면(/etc/init.d/autofs restart) 다음에 재부팅할 때까지 문제가 해결되었습니다.

내 컴퓨터에서 왜 이런 일이 발생하는지 파악하지 못했습니다.

나는 NIS 서버에 대한 브로드캐스트 액세스 권한이 없는 서브넷에서 실행되는 일부 RedHat 시스템에서 이런 일이 발생하는 것을 보았습니다. "Domain MYDOMAIN Server MYNISSERVER"와 같은 yp.conf를 구성합니다. ypbind를 시작한 시작 시퀀스 중에 MYNISSERVER에 대한 DNS 확인이 실패하고 YP가 바인딩되지 않았음을 발견했습니다. MYNISSERVER를 DNS 이름에서 숫자 IP 주소로 변경하거나 /etc/hosts에 MYNISSERVER 줄을 추가하면 됩니다.

그러나 내 데비안 컴퓨터에서는 이것이 문제가 되지 않습니다. Ypbind가 성공적으로 시작됩니다. 시작 메시지에 따르면 실패했지만 백그라운드에서 계속 실행되었습니다. autofs가 시작된 후 어느 정도 시간이 지나면 성공할 것으로 생각되므로 문제가 발생합니다.

재시도 사이에 5초의 지연 시간을 갖도록 /etc/init.d/nis를 편집했을 때 문제는 바뀌지 않았으므로 단순히 오래 기다리는 문제는 아닙니다.

로그 파일을 보면 NetworkManager/DHCP가 인터페이스 시작 시도를 마치기 전에 시작 코드가 NIS를 시작하려고 시도하고 있는 것 같습니다. 이는 연결을 시도할 인터페이스가 없음을 의미합니다.

/etc/rc.local에 다음 두 줄을 추가하여 문제를 해결할 수 있었습니다.

/etc/init.d/nis start
/etc/init.d/autofs restart

분명히 NIS를 시작하려는 초기 시도와 부팅 시퀀스의 끝(rc.local에서) 사이에 로드된 항목이 더 일찍 실행되어야 합니다. /etc/rc5.d의 내용에 따르면 이는 nfs-kernel-server(내가 사용하지 않음), cron 및 minissdpd만 가능하지만 그 중 아무 것도 이해가 되지 않습니다.

그래서... 정확히 무엇이 문제를 일으키는지는 모르겠지만 해결책을 드릴 수는 있을 것 같습니다. 나보다 경험이 많은 누군가가 여기에 추가하여 내가(그리고 아마도 당신도) 관찰하고 있는 문제의 실제 원인을 알아낼 수 있기를 바랍니다.

관련 정보