龙芯2K1000使用nfs挂载文件系统进行使用

简介: 龙芯2K1000使用nfs挂载文件系统进行使用

龙芯2K1000使用nfs挂载文件系统进行使用

  • 在使用龙芯2K1000板子进行开发时,最方便的方式就是通过网络挂载文件系统NFS进行程序开发,这样能大大提高开发效率。

准备:

在龙芯2K上使用nfs挂载启动,首先需要主机上具有以下三个服务:


  • 用于load记载linux内核的tftp服务。
  • 用于给龙芯机器分配IP地址的DHCP服务。
  • 最后存放用于启动挂载的文件系统的nfs服务。

龙芯内核配置:

  • 1、一个支持从nfsroot挂载文件系统的可以运行在龙芯机器上的内核。

关于如何编译内核,如果交叉编译内核,这里不多说,大家参考一下这里就行:

http://dev.lemote.com/code/linux_loongson


为了能够支持nfsroot,除了基本的网络支持外,下面的几个选项是需要的:


要能够自动获取ip地址,所以要求你所在的网络有一个dhcp服务器,没有的话,自己配置一个吧(后面将介绍)。


Networking  --->  Networking support
        Networking options  --->  Packet socket
                      Unix domain sockets
                      TCP/IP networking
                           IP: kernel level autoconfiguration
                             IP: DHCP support


要支持nfsroot,


File systems  --->
             Network File Systems  --->
                            <*>   NFS client support  
                                           Root file system on NFS


好了,可以编译内核了,关于最新的内核源代码,可以从这里下载。

-dev version: http://dev.lemote.com/cgit/rt4ls … oongson-dev-to-ralf

-stable version: http://dev.lemote.com/cgit/rt4ls.git/log/?h=to-ralf


主机服务配置:

TFTP服务配置

  • 安装服务包
$ sudo apt-get install tftpd-hpa


  • 启动服务,把/tftproot当tftp服务的主目录(不要想着其他方法,这个最easy不过)
$ sudo mkdir /tftproot
$ sudo in.tftpd -s -l /tftproot


启动完以后,把内核复制到/tftproot下就行了。


DHCP服务配置

如果你所在网络有这个服务,就不要再配置了,否则自己配置一个。


$ sudo apt-get install dhcp3-server
$ vim /etc/dhcpd.conf
ddns-update-style none;
subnet 192.168.1.0 netmask 255.255.255.0 {
            range 192.168.1.121 192.168.1.121;
}
$ /usr/sbin/dhcpd


通过上面的配置,可以给你的机器分配一个192.168.1.121的地址,如果想要其他地址,可以修改这个配置。


NFS服务配置

这个也是非常easy了。


$ sudo apt-get install nfs-kernel-server
$ sudo apt-get install nfs-common
$ vim /etc/exports
/opt/loongos *(rw,sync,no_root_squash)
$ /etc/init.d/portmap restart
$ /etc/init.d/nfs-kernel-server start
//验证是否生效
$ showmount -e
$ mkdir /opt/loongos -p
$ chmod 777 /opt/loongos


启动步骤:

开机,按下DEL键,直到出现PMON>提示行。

PMON> ifaddr syn0 192.168.10.139      // 配置一个临时的ip地址,这个地址只在pmon中有效,如果想配置一个持久的,那么请用set ifconfig rtl0:192.168.1.121
PMON> load tftp://192.168.10.94/vmlinuz_usenfs    // 装载那个支持nfsroot的内核
PMON> g root=/dev/nfs rw nfsroot=192.168.10.94:/opt/loongos ip=192.168.10.139:192.168.10.94:192.168.10.1:255.255.255.0::syn0:off console=tty console=ttyS0,115200 no_auto_cmd


  • 文件系统中dev目录下的console节点和null节点不能创建,所以我去dev目录下检查了一下,发现居然没有这两个节点,因此我自己手动加入这两个节点:
mknode console c 5 1
mknode null c 1 3


如果没有问题,应该可以进入到一个基本的文件系统里头了。

关于ip的各个字段的含义:


ip=<client-ip>:<nfssever-ip>:<gateway-ip&gt;:<netmask>:<host-name>:<device>:<auto-conf>


相关文章
|
27天前
|
存储 安全 Unix
网络文件系统 (NFS)
【10月更文挑战第12天】
89 4
|
28天前
|
存储 缓存 安全
网络文件系统 (NFS)
【10月更文挑战第11天】
34 1
|
1天前
|
缓存 网络协议 测试技术
NFS挂载信息如何调整?
NFS挂载信息如何调整?
13 3
|
26天前
|
Unix Linux 网络安全
NFS挂载服务
【10月更文挑战第14天】
31 2
|
1月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
130 0
|
3月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
183 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
|
3月前
|
存储 Kubernetes 网络安全
[k8s]使用nfs挂载pod的应用日志文件
[k8s]使用nfs挂载pod的应用日志文件
143 1
|
3月前
|
存储 Ubuntu Linux
NFS服务部署全攻略:从零到一,轻松驾驭网络文件系统,让你的文件共享像飞一样畅快无阻!
【8月更文挑战第5天】NFS(网络文件系统)能让网络中的电脑无缝共享文件与目录。基于客户端-服务器模式,用户可像访问本地文件般透明操作远程文件。部署前需准备至少两台Linux机器:一台服务器,其余作客户端;确保已装NFS相关软件包且网络通畅。服务器端安装NFS服务与rpcbind,客户端安装nfs-utils。
94 4
|
3月前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
|
3月前
|
Linux
在Linux中,如何挂载远程NFS共享或iSCSI目标?
在Linux中,如何挂载远程NFS共享或iSCSI目标?