Redhat 버전 7.2에서 다음 서비스를 만듭니다.
more nfsshare.mount
[Unit]
Description=nfs mount script
Requires=network-online.target
After=network-online.service
[Mount]
What=master1:/nfs
Where=/nfsshare
Options=noauto,user,rw,group
Type=nfs
TimeoutIdleSec=10
[Install]
WantedBy=multi-user.target
서비스를 다시 시작하면 마운트 지점이 그대로 마운트됩니다.
master1:/nfs 41932800 6559744 35373056 16% /nfsshare
이제 /nfsshare 폴더를 마운트 해제합니다.
umount /nfsshare
이제 /nfsshare 폴더가 다시 마운트되고 서비스가 자동으로 폴더를 마운트할 것으로 예상됩니다.
하지만 아무 일도 일어나지 않고 폴더가 마운트되지 않습니다.
여기서 내가 어디서 잘못됐나요?
나도 노력해
more nfsshare.automount
[Unit]
Description=nfs mount script
Requires=network-online.target
After=network-online.service
[Automount]
What=master1:/nfs
Where=/nfsshare
Options=noauto,user,rw,group
Type=nfs
TimeoutIdleSec=10
[Install]
WantedBy=multi-user.target
하지만 서비스를 다시 시작한 후에도 폴더를 마운트할 수 없습니다.
답변1
올바른 설정은 장치에 다음을 nfsshare.mount
포함하는 것입니다.
[Unit]
Description=Mount nfsshare
Wants=network-online.target
After=network-online.target
[Mount]
What=master1:/nfs
Where=/nfsshare
Options=rw,group
Type=nfs
다음을 포함하는 장치 의 경우 nfsshare.automount
:
[Unit]
Description=Automount nfsshare
Wants=network-online.target
After=network-online.target
[Automount]
Where=/nfsshare
TimeoutIdleSec=10
[Install]
WantedBy=multi-user.target
일반적으로 해당 장치를 활성화하려고 합니다 .automount
.
$ sudo systemctl enable nfsshare.automount
이 설정을 사용하면 시작 후(NFS 공유에 액세스하는 실행 중인 데몬이 없다고 가정) 공유가아니요설치되어 있습니다. 그러나 일단 액세스되면(예 ls /nfsshare
: ) 필요에 따라 설치됩니다. 10초 동안 마운트된 상태로 유지된 후 마운트 해제되지만 다시 액세스하면 다시 마운트됩니다.
이 두 장치는 함께 .mount
작동하여 .automount
이 동작을 유발합니다. 장치 .automount
는 자동 마운트를 위한 마운트 지점 디렉토리를 설정할 위치만 알면 됩니다. 디렉터리에 액세스하면 동일한 이름(동일한 경로)을 가진 유닛에 대한 요청을 트리거 .mount
하고 계속하기 전에 해당 유닛이 시작될 때까지 기다립니다.
보다자동 설치 장치 매뉴얼 페이지자세한 내용은.
귀하의 설정에 어떤 다른 변경 사항을 적용했습니까?
network-online.target
네트워크 종속성의 경우 존재 하지 않는 것을 사용해야 합니다 .service
. 나는 또한 Wants=
이 경우에 권장되는 지시어인 를 사용하고 있습니다(참조이 위키 페이지네트워크 목표에 대한 보다 심층적인 논의입니다. )
설치 옵션에서 noauto
및 를 제거했습니다 user
. 해당 옵션은 에서만 사용할 수 있기 때문입니다 . 또한 권한이 없는 사용자가 util을 호출하여 설치하도록 허용하는 대신 /etc/fstab
실제로 거기에 있고 싶지 않고 자동으로 설치되도록 하는 것이 좋습니다. , 자동으로 더 좋은 것을 설치합니다.user
mount
어느 유닛에서 받는 지시사항이 다르기 때문에( Where=
두 유닛에서 받는 지시사항은 제외) 유효한 지시사항만 보관합니다.
이 장치를 활성화할 필요가 없으므로 [Install]
이 장치에 대한 섹션을 제거했습니다 . 부팅 시 장치가 시작되도록 장치를 .mount
활성화하기만 하면 .automount
장치는 필요할 때(액세스 중인 대상 디렉터리에 따라) 설치 장치를 시작(및 종료)하는 작업을 처리합니다.
을 사용할 수도 있습니다 . 실제로 설치 단위를 생성하는 것보다 구성을 /etc/fstab
위해 일반적으로 systemd를 권장합니다 ./etc/fstab
자동 마운트를 위해 해야 할 일은 x-systemd.automount
해당 파일 시스템 항목에 대한 마운트 옵션 목록에 의사 옵션을 추가하는 것뿐입니다. (이 경우에는 일반적으로 /etc/fstab
해당 항목도 포함하려고 합니다.)noauto
바라보다Arch Linux 위키의 이 섹션자세한 내용은. (이 중 어느 것도 Arch Linux에만 국한된 것이 아니며 RHEL 7에서도 정확히 동일하게 작동합니다.)