CentOS에서 파일 공유 마운트
이 지침에 따라 Linux® 기반 IBM Cloud® 컴퓨팅 인스턴스를 새로운 네트워크 파일 시스템(Network File System, NFS) 파일 공유에 연결하십시오.
시작하기 전에
-
파일 공유가 보안 그룹 액세스 모드로 설정된 경우, 컴퓨팅 호스트가 공유와 동일한 보안 그룹에 속해 있는지 확인합니다. 파일 공유가 VPC 액세스 모드로 설정된 경우, 공유를 마운트하려는 서버가 파일 공유와 동일한 영역에 있는지 확인합니다. 자세한 내용은 대상 액세스 모드 마운트하기를 참조하세요.
-
서버가 있는 VPC에 공유에 대한 마운트 대상이 있는지 확인합니다. 새 마운트 대상이 필요한 경우 파일 공유 및 마운트 대상 작성 의 지시사항을 따르십시오.
-
마운트 대상에서 파일 공유의 마운트 경로를 가져오십시오. 마운트 경로 정보는 콘솔의 파일 공유 세부 정보 페이지, CLI, API 또는 Terraform을 통해 얻을 수 있습니다.
-
전송 시 암호화를 사용하려면 메타데이터 서비스에서 IPsec 인증서를 발급받아야 합니다. 마운트 대상에 대해 전송 중인 암호화가 사용으로 설정되어 있는지 확인하십시오. 또한 보안 연결을 사용하여 파일 공유를 마운트하십시오. 이 기능은
dp2
프로파일 및 보안 그룹 액세스 모드와의 파일 공유에만 사용할 수 있습니다. 자세한 정보는 전송 중 암호화-파일 공유와 호스트 간 마운트 연결 보안 을 참조하십시오.마운트 도우미 유틸리티 를 설치하고 실행하여 암호화된 연결 없이 또는 전송 중에 암호화를 사용하여 파일 공유를 마운트하십시오.
File Storage for VPC 서비스에는 NFS 버전 v4.1 이상이 필요합니다.
CentOS에서 파일 공유 마운트
다음 단계를 수행하여 CentOS 호스트에서 파일 공유를 마운트하십시오. 예제는 CentOS 8. 이 단계는 Red Hat Enterprise Linux®에서 파일 공유 마운트 에 설명된 단계와 유사합니다.
파일 공유를 마운트하려는 컴퓨팅 인스턴스에 SSH 연결 한 후 다음 단계를 계속하십시오.
-
필요한 도구를 설치하십시오.
yum install nfs-utils
-
인스턴스에서 디렉토리를 작성하십시오.
mkdir /mnt/test
-
원격 파일 공유를 마운트하십시오.
mount -t nfs4 -o <options> <host:/mount_target> /mnt
다음 예를 참조하십시오.
mount -t nfs4 -o sec=sys,nfsvers=4.1 10.240.64.11:/384f711c_0684_4643_b1c3_dc7acb36d04a /mnt/test
-
디스크 파일 시스템 명령을 사용하여 마운트가 완료되었는지 확인하십시오.
$ df -h Filesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 798M 660K 798M 1% /run /dev/vda2 99G 1.6G 93G 2% / tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/vda1 240M 73M 155M 33% /boot fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136 190G 384K 190G 1% /mnt/test tmpfs 798M 0 798M 0% /run/user/0
-
마운트 지점으로 이동하여 테스트 파일을 작성하고 모든 파일을 나열하여 공유가 읽기/쓰기로 마운트되었는지 확인하십시오.
touch /mnt/test/test.txt ls -al /mnt/test
$ touch /mnt/test/test.txt ls -al /mnt/test total 12 drwxr-xr-x 2 nobody nobody 4096 Apr 8 15:52 . dr-xr-xr-x. 22 root root 4096 Apr 8 14:30 .. -rw-r--r-- 1 nobody nobody 0 Apr 8 15:52 test.txt
파일은 루트에 의해 생성되며 소유권은
nobody:nobody
입니다. 소유권을 올바르게 표시하려면 올바른 도메인 설정을 사용하여idmapd.conf
를 업데이트하십시오. 자세한 정보는 NFS용 no_root_squash를 구현하는 방법을 참조하십시오. -
시작 시 원격 파일 공유를 마운트하십시오. 설정을 완료하려면 파일 시스템 테이블(
/etc/fstab
)을 편집하고 시작 시 자동으로 마운트된 항목 목록에 원격 파일 공유를 추가해야 합니다.fstab
에 항목을 만들기 전에 다음 단계를 수행하여/etc/hosts
에 마운트 경로 호스트명을 추가합니다.-
마운트 경로의
hostname.com
부분(예:fsf-dal2433a-dz.adn.networklayer.com
)을 가져와서 IP 주소를 가져옵니다. 인스턴스에서 다음 명령을 실행하여 IP 주소를 가져오십시오.host hostname.com
다음 예를 참조하십시오.
host fsf-dal2433a-dz.adn.networklayer.com fsf-dal2433a-dz.adn.networklayer.com has address 203.0.113.0
host
명령을 실행할 때 명령을 찾을 수 없음 오류가 표시되면yum install bind-utils
을 사용하여 설치하세요. -
/etc/hosts
를 편집하고 IP를 호스트 이름 항목에 추가하십시오.<IP_Address> hostname.comhostname.com
다음 예를 참조하십시오.
198.51.100.0 fsf-dal2433a-dz.adn.networklayer.com
-
파일 시스템 테이블
/etc/fstab
을 편집하고 항목을 추가합니다.(hostname):/(file_share_path) /mnt nfs_version options 0 0
다음 예를 참조하십시오.
fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136 /mnt/test nfs4 nfsvers=4.1,sec=sys,_netdev 0 0
-
-
구성 파일에 오류가 없는지 확인하십시오.
mount -fav
오류 없이 명령이 완료되면 설정이 완료됩니다.
NFS 4.1의 경우 파일 소유권 문제가 발생하지 않도록 하려면
sec=sys
를 마운트 명령을 추가하십시오._netdev
을 사용하여 모든 네트워크 구성 요소가 시작될 때까지 스토리지가 마운트될 때까지 기다립니다.
NFS용 no_root_squash
구현(선택사항)
기본적으로 NFS는 루트 권한으로 작성된 파일을 nobody
사용자로 다운그레이드합니다. 이 보안 기능을 사용하면 요청하지 않는 한 공유되지 않습니다.
no_root_squash
을 구성하면 루트 클라이언트는 원격 NFS 파일 공유에 대한 루트 권한을 유지할 수 있습니다.
NFSv4.1 의 경우 nfsv4 도메인을 slnfsv4.com
로 설정하고 rpcidmapd
또는 사용 중인 OS에서 사용하는 유사한 서비스를 시작합니다. 다음 예를 참조하십시오.
-
호스트에서
/etc/idmapd.conf
에서 도메인 설정을 설정합니다.$ vi /etc/idmapd.conf [General] #Verbosity = 0 #The following should be set to the local NFSv4 domain name #The default is the host's DNS domain name. Domain = slnfsv4.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
-
nfsidmap -c
을(를) 실행하십시오.
파일 시스템 마운트 해제
호스트에서 현재 마운트된 파일 시스템을 마운트 해제하려면 디스크 이름 또는 마운트 지점 이름을 사용하여 umount
명령을 실행하십시오.
umount /dev/sdb
umount /mnt