stat
나는 NFS 서버[VM Debian 8.11]에서 파일 공유 디렉터리를 마운트 하려고 시도했습니다 touch
. 디렉터리의 파일을 편집하고 디렉터리 내용을 읽은 후 여기에서 모든 것이 잘 되도록 수정한 다음 파일 공유 디렉터리를 마운트했습니다 ls
. atime,mtime and ctime
물리적 시스템에서 [Debian 7.9] 마운트된 파일 공유는 동일한 작업을 수행했으며, 편집하고 편집했음에도 atime
디렉토리의 디렉토리는 동일하게 유지되었습니다 . 두 파일 공유 모두 에 의해 마운트되는데, 왜 이런 일이 발생하는지 알고 싶습니다. 방금 실제 머신(NFS SERVER)에서 실행했을 때 대부분의 로컬 파일이 마운트된 것을 볼 수 있었습니다.touch
ls
realtime
mount
noatime
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=26352140k,mode=755)
/dev/sda2 on /lib/live/mount/medium type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/loop0 on /lib/live/mount/rootfs/filesystem.squashfs type squashfs (ro,noatime)
tmpfs on /lib/live/mount/overlay type tmpfs (rw,relatime)
tmpfs on /lib/live/mount/overlay type tmpfs (rw,noatime,mode=755)
aufs on / type aufs (rw,noatime,si=b3e6ae3b999120a9,noxino)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=52704260k)
/dev/sda2 on /var/lib/dsnet-config type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /var/log type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /var/spool/rsyslog type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /var/lib/dsnet-core type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /var/lib/dsnet-md type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /etc/corosync type ext4 (rw,noatime,user_xattr,data=ordered)
/dev/sda2 on /var/lib/heartbeat type ext4 (rw,noatime,user_xattr,data=ordered)
위의 설치로 인해 반드시 내 문제가 해결되는지는 확실하지 않지만, 그 둘 사이에서 내가 본 유일한 이상한 점은 이것뿐입니다.
NFS 요청을 하는 경우 물어볼 또 하나의 질문은 MKDIR()
이 호출이 클라이언트 또는 NFS 서버에서 시간 정보를 얻을지 여부입니다.
답변1
최신 Linux 시스템은 이 옵션을 사용하여 파일 시스템을 마운트하지 않는 한 디렉토리 액세스 시간을 기록하지 않습니다 diratime
. 액세스 시간 업데이트는 성능에 큰 영향을 미칠 수 있으며, 디렉터리 액세스 시간은 일반 파일 액세스 시간과 달리 매우 자주(누군가 ls
디렉터리에서 실행될 때마다 위치 데이터베이스를 업데이트할 때마다) 업데이트되므로 그다지 유용하지 않기 때문입니다 . .. ).
디렉토리 액세스 시간을 기록하려면 diratime
서버의 옵션을 사용하여 파일 시스템을 마운트해야 합니다. (원칙적으로 diratime
클라이언트도 전달해야 하지만 대부분의 다른 파일 시스템과 달리 NFS 드라이버는 이 옵션을 무시하고 서버가 때때로 암시적으로 디렉터리를 업데이트하도록 허용한다고 생각합니다.)