首页 > 其他分享 >开发板nfs挂载桥接虚拟机的文件系统环境搭建--Apple的学习笔记

开发板nfs挂载桥接虚拟机的文件系统环境搭建--Apple的学习笔记

时间:2023-11-05 14:33:41浏览次数:38  
标签:Apple 桥接 虚拟机 work 192.168 setenv nfs tftp

一,前言

我之前虚拟机配置的是NAT方式,不是桥接,然后Kernel及uboot都同nfs挂载。所以先改成了最简单的桥接方式的虚拟机。

二,ubuntu虚拟机设置

1,vmware先设置为桥接。

2,设置ubuntu14.04的静态ip地址

gedit /etc/network/interfaces

内容

auto eth0
iface eth0 inet static
address 192.168.7.5
netmask 255.255.255.0
gateway 192.168.7.1
dns-nameservers 114.114.114.114

3,ubuntu添加tftp

1)安装软件

sudo apt-get install tftpd-hpa tftp-hpa xinetd

2)创建文件夹及设置权限

mkdir /work/tftpboot
chmod -R 777 /work/tftpboot

3)创建tftp配置文件

sudo gedit /etc/xinetd.d/tftp

内容

service tftp
{
    socket_type = dgram  
    protocol = udp   
    wait = yes  
    user = root  
    server = /usr/sbin/in.tftpd  
    server_args = -s /work/tftpboot -c  
    disable = no  
    per_source = 11  
    cps = 100 2  
    flags = IPv4  
}

4)修改配置文件

sudo gedit /etc/default/tftpd-hpa

内容

RUN_DAEMON="yes"
OPTIONS="-s /work/tftpboot -c -p -U tftpd"
 
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/work/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"

索性直接重启ubuntu。

4,nfs配置 1)查nfs版本

sudo cat /proc/fs/nfsd/versions

2)修改nfs文件夹权限 gedit /etc/exports添加

/work/img *(rw,sync,no_subtree_check,no_root_squash)
/work/img/rootfs *(rw,sync,no_subtree_check,no_root_squash)

然后重启服务

sudo service nfs-kernel-server restart

三,uboot中设置

1)ip地址设置

setenv serverip 192.168.7.5
setenv ipaddr 192.168.7.2
setenv netmask 255.255.255.0
setenv gatewayip 192.168.7.1

2)先验证tftp,zImage是在tftp的配置文件中设置的路径,能正常下载

tftp 0x82000000 zImage

3)设置bootcmd,结果怎么设置,在Kernel中都无法挂载文件系统。总是提示"VFS: Unable to mount root fs via NFS",检查log发现“Kernel command line:xxx”其中内容不是我设置的bootargs。

打印了所有的环境变量,找到了根本原因,发现bootcmd中会重新设置bootargs,里面用的参数是netargs,所以单独修改bootargs的值无用,要修改netargs。

bootcmd=setenv autoload no;run nfs_bootfile; run findfdt; run nfs_fdtfile; run netargs; bootz ${loadaddr} - ${fdtaddr}

解决方法:在u-boot中设置环境变量并saveenv保存。然后reset后kernel启动过程中,就能正常挂载文件系统了。

setenv netargs 'setenv bootargs console=ttyO0,115200n8  root=/dev/nfs nfsroot=192.168.7.5:/work/img/rootfs,v3,tcp,port=2049,mountport=9999 rw ip=192.168.7.2:192.168.7.5:192.168.7.1:255.255.255.0::eth0:off init=/linuxrc console=ttyO0,115200n8'

注:中间遇到的坑是打开了uboot的nfs命令,结果无法通过nfs下载,查看了uboot仅支持nfs vers=2,我按网上教程修改了ubuntu支持nfs2,但是依然不成功,所以uboot无法使用nfs,抓包我也看不懂,是否ubuntu中我真的设置支持v2了

开发板nfs挂载桥接虚拟机的文件系统环境搭建--Apple的学习笔记_nfs挂载


三,小结

毕竟桥接的虚拟机使用起来不方便,比如ubuntu虚拟机也要上网,这时候还需要去切换network0绑定的网卡,麻烦。所以能通过桥接的虚拟机挂载nfs成功,我提升了信心,问题点捕捉更加精准,于是我就又开始了NAT方式的虚拟机仅nfs挂载环境搭建。请看下一篇哈~

标签:Apple,桥接,虚拟机,work,192.168,setenv,nfs,tftp
From: https://blog.51cto.com/AppleCai/8193525

相关文章

  • 开发板nfs挂载NAT虚拟机的文件系统环境搭建--Apple的学习笔记
    一,前言总体来说我还是想用NAT虚拟机,所以基于开发板nfs挂载桥接虚拟机的文件系统环境搭建--Apple的学习笔记中的配置继续修改。二,ubuntu虚拟机中nfs挂载设置修改ip地址为192.168.112.11添加路由端口sudogedit/etc/services最后添加mountd9999/tcpmountd9999/udpPC以太网2设......
  • 关于虚拟机下Redhat7版本root用户密码忘记的解决方法
    关于虚拟机下Redhat7版本root用户密码忘记的解决方法一、开机二、出现这个不用管,点取消(没有出现也是正常的)三、出现这个,键盘敲e进入编辑四、鼠标移动到最下,在UTF-8后,写rd.break,然后ctrl+x进入到下一个环节五、等待出现命令行六、按顺序敲如下命令:七、注意此时的命......
  • 虚拟机集群ssh配置免密登录
    在dn节点机首先安装ssh,没有就执行以下代码sudoapt-getinstallopenssh-server然后cd~/.ssh如果没有该路径就执行一次sshlocalhost然后执行以下代码,删除之前可能生成过的私钥,公钥rm./id_rsa*执行以下代码,然后三次回车生成密钥ssh-keygen-trsa然后执行......
  • 如何让你的虚拟机连上网和如何让xshell连到虚拟机
    连接虚拟机到互联网创建虚拟机:首先,使用虚拟化软件(如VirtualBox、VMware或KVM)创建一个虚拟机。确保在虚拟机设置中启用网络适配器,并选择合适的网络连接方式(通常是“桥接”或“NAT”)。启动虚拟机:启动虚拟机,确保虚拟机的操作系统已正确安装。检查网络设置:在虚拟机中,打开......
  • IntelliJ IDEA在运行Applet小程序时中文乱码
    解决方法如下:第一种方法:在主界面点击文件→设置然后在设置界面选择编辑器→FileEncodings然后在下图所示界面的红框处,将utf-8改成GBK,确定保存即可第二种方法:在你所编辑的.java文件的右下方有一个编码方式,将其改为GBK然后点击convert即可.......
  • 虚拟机中的Linux系统如何联网
    Step1:开启虚拟机后,在命令行输入pingwww.baidu.com回车,若发现无法ping通,说明虚拟机此时无法与外界网络互连,需要修改设置,以使其能联网。Step2:先关闭虚拟机,在VMware界面单击虚拟机,进入初始界面后,首先点击编辑虚拟机设置,然后将网络适配器中网络连接改为NAT模式。Step3:将网络连接改......
  • virtual box nat模式ssh到虚拟机
    设置端口转发,然后就可以从主机直接ssh到虚拟机然后主机如下操作即可[email protected]......
  • 设置win和虚拟机共享文件夹
    1安装虚拟机和以及Linux操作系统镜像2在虚拟机中设置win的共享文件夹位置(共享文件夹是要在Windows上真实存在的)  3命令行查看共享文件夹状态sudovmware-hgfsclient4指定用户和组挂载(必须)sudovmhgfs-fuse.host://mnt/hgfs-oallow_other-ouid=1000-ogid=1000-o......
  • VMWare虚拟机-修改界面大小(麒麟系统)
    一、下载linux.iso1.下载地址:http://softwareupdate.vmware.com/cds/vmw-desktop/ws/15.5.1/15018445/windows/packages/2.解压后,VMWare添加镜像iso,然后重启虚拟机 3.找到VMwareTools-10.3.10-13959562.tar.gz压缩包并解压         4.执行文件lssudo......
  • 在虚拟机(Linux)中Docker中部署Nginx成功,但是在宿主机无法访问Nginx站点?
    1.问题本文是基于黑马程序员Docker基础--常见命令一课中部署Nginx时遇到的问题作出解答。在虚拟机(Linux)中Docker中部署Nginx成功,但是在宿主机无法访问Nginx站点如图,Nginx服务已经启动成功但是我们在宿主机的浏览器试图访问的时候却总是报错:2.解决思路2.1查看端口号是否映......