참고: 이것은 nfs를 rootfs로 사용하거나 tftp를 사용하여 커널을 다운로드하는 것에 관한 것이 아닙니다.
U-boot를 기반으로 v2017.11
보드는 맞춤 제작되었지만 imx6dl-sabresd와 유사합니다.
내 Arch Linux 호스트에 실행 중인 nfs 서버가 CONFIG_CMD_NFS=y
있습니다 . .config
nfs 공유를 내 rootfs로 마운트할 수 있습니다.
내 nfs 공유는 다음 위치에 있으며 다음과 같습니다 /srv/nfs/foo
./etc/exports.d/foo.exports
/srv/nfs/foo *(rw,async,no_subtree_check,no_root_squash)
예를 들어 실행하려고 하면 시간 초과가 nfs $loadaddr $nfsroot/boot/zImage
계속 인쇄됩니다 T
. ( nfsroot=/srv/nfs/foo
내보내기와 일치시키기 위해.) 파일이 공유에 존재하고 네트워크가 작동 중입니다( ping $serverip
작동 중).
답변1
nfs 서버에서 udp를 활성화해야 합니다. Arch Linux에서는 다음 위치에 있습니다 /etc/nfs.conf
.
[nfsd]
udp=y
다른 사용자 정의(내보내기 제외)가 없습니다.
조금 더 살펴보면 최신 버전의 nfs(참고로 저는 nfs-utils
2.3.1을 사용하고 있습니다)가 기본적으로 udp를 비활성화하는 것 같지만 u-boot에는 udp 지원이 필요한 것 같습니다.