博客:http://blog.csdn.net/muyang_ren
Linux系统:Ubuntu Kylin 1404
安装nfs服务器:
1->安装NFSserver端口映射和服务
sudo apt-get install nfs-kernel-server
2->先重启portmap服务
sudo /etc/init.d/portmap restart
3->编辑/etc/exports,添加目标系统的根文件系统映射目录,假如目标系统的根文件系统最后映射到/opt/rootfs,则
—>打开文件/etc/exports,添加以下内容:
/opt/rootfs *(subtree_check,rw,no_root_squash,async)
4->重启服务:
$sudo /etc/init.d/nfs-kernel-server restart
$sudo exportfs –a (最好每修改过/etc/exports 后需要执行一次)
3、测试:
1->在用户主目录中创建一个挂载点:
2->挂载文件系统:/opt/rootfs
sudo mount 192.168.7.5:/opt/rootfs /mnt
3->查看mnt下是否可以看到rootfs中的内容,如果可以看到,nfs OK
4->卸载:sudo umount /mnt
1、在linux中创建一个共享目录,并修改访问权限:
mkdir ~/samba
sudo chmod 777 samba/ -R
2、安装:
sudo apt-get install samba
3、打开配置文件: /etc/samba/smb.conf
sudo vim /etc/samba/smb.conf
4、添加以下内容:
[home-samba]:w
path = /home/lhy/samba
available = yes
browseable = yes
public = yes
writable = yes
#valid users = lhy
4、保存退出,重启samba服务:
sudo /etc/init.d/smbd restart
5、测试:
在windows中:
开始---》运行:
\\192.168.7.5
6、设置samba密码(可选)
1》在配置文件/etc/samba/smb.conf中加入以下内容:
[home-samba]:w
path = /home/lhy/samba
available = yes
browseable = yes
public = yes
writable = yes
valid users = lhy
2》设置samba密码:
sudo smbpasswd -a lhy
3》重启samba服务:
sudo /etc/init.d/smbd restart
sudo apt-get install openssh-server
关闭防火墙:
sudo ufw disable
1 安装xinetd:
lhy@ubuntu:~$ sudo apt-get install xinetd
2 安装tftp和tftpd:
lhy@ubuntu:~$ sudo apt-get install tftp tftpd
3 或者安装tftp的增强版本tftp-hpa(忽略安装这个):
lhy@ubuntu:~$ sudo apt-get install tftp-hpa tftpd-hpa
4.建立配置文件。建立/etc/xinetd.d/tftp文件,写入如下内容:
sudo vim /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot/ -c
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
5、打开文件 /etc/default/tftpd-hpa (没有就新建),添加以下内容:
sudo vim /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
6.修改inetd.conf文件
sudo vim /etc/inetd.conf
sudo vim /etc/inetd.conf
tftp dgram udp wait nobody /usr/sbin/tcpd
/usr/sbin/in.tftpd /tftpboot (tftp共享目录)
7.设置tftp根文件访问权限为777:
lhy@ubuntu:~$ sudo mkdir /tftpboot/
lhy@ubuntu:~$ sudo chmod 777 /tftpboot/
8.启动或者重启xinetd服务:
lhy@ubuntu:~$ sudo /etc/init.d/xinetd restart
本机测试。在/tftpboot目录下创建一个ky文件,启动另外一个终端,输入:
lhy@ubuntu:
tftp 127.0.0.1
tftp> get 123.c #获取文件
Received 57 bytes in 0.0 seconds
tftp> q #退出tftp
在终端输入ls命令,可以看到当前目录下看到获取到的 u-boot134.bin文件。
用开发板来验证tftp服务器是否可用。启动开发板,进入U-Boot命令行,用tftp命令加载tftp服务器中的文件,如:
U-Boot$ tftp 80008000 zImage
ENET:auto-negotiation complete
ENET:Link status up
ENET:FULL DUPLEX
ENET:100MBase
MAC: 00:61:62:69:6e:67
TFTP from server 192.168.1.3; our IP address is 192.168.1.5
Filename 'zImage'.
Load address: 0x80008000
Loading: #################################
done
Bytes transferred = 479927 (752b7 hex)
说明:
(1)使用开发板与虚拟机安装的客户系统进行TFTP通讯,需要将虚拟网卡设置为Bridged模式,并建议使用静态IP地址。
(2)如果以上设置都确认无误,但tftp还是不成功,请检查主机的防火墙是否已经关闭。
(3)如果出现Error code 0: Permission denied, 是因为tftpboot文件夹没有权限,或者是要上传和下载的文件没有权限
(4)如果出现Error code 1: File not found, 是因为tftp配置文件中没有加-c。