NFS 프로토콜 사용해보기

Root File System을 Host PC 디렉토리로 지정해서 사용하는 방법을 서술한다.

기존에 있던 uEnv.txt파일을 수정해서 NFS를 사용할 수 있게 수정한다.

바꾸기 전 :

console=ttyO0,115200n8
ipaddr=192.168.7.2
serverip=192.168.7.1
loadaddr=0x82000000
fdtaddr=0x88000000
ramfsaddr=0x88080000
loadtftp=tftpboot 0x82000000 uImage; tftpboot 0x88080000 initramfs; tftpboot 0x88000000 am335x-boneblack.dtb
tftpbootargs = bootargs console=${console} root=/dev/ram0 rw initrd=${ramfsaddr}

uenvcmd=setenv autoload no; run loadtftp; run tftpbootargs; bootm ${loadaddr} ${fdtaddr} ${ramfsaddr}

바꾸고 난 뒤

console=ttyO0,115200n8
ipaddr=192.168.7.2
serverip=192.168.7.1
rootpath=/srv/nfs/bbb,nolock,wsize=1024,rsize=1024 rootwait rootdelay=5
loadtftp=echo Booting from network ...;tftpboot ${loadaddr} uImage; tftpboot ${fdtaddr} am335x-boneblack.dtb
netargs=setenv bootargs console=${console} root=/dev/nfs rw nfsroot=${serverip}:${rootpath} 
uenvcmd=setenv autoload no; run loadtftp; run netargs; bootm ${loadaddr} - ${fdtaddr}

loadaddr, fdtaddr 등은 기본 설정 값이 있으므로 생략해도 괜찮다. host pc에서는 /srv/nfs/bbb를 rootpath로 사용하고 absolutepath는 tftpboot 폴더로 지정해 두었다.

uimage와 dtb파일은 /var/lib/tftpboot/ 폴더에 넣어두고 빌드한 RFS파일은 /srv/nfs/bbb 폴더에 넣어둔다.

먼저 nfs 부터 설치한다.

sudo apt-get install nfs-kernel-server

/etc/exports 파일을 수정한다.

/srv/nfs/bbb 192.168.7.2(rw,sync,no_root_squash,no_subtree_check)

그 다음 export 후 nfs를 재시작한다.

sudo exportfs -arv

댓글 남기기 응답 취소

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.