目录
一、NFS 服务
(Linux主机与嵌入式开发板文件共享)
目的:在嵌入式开发板无法通过 SSH 访问时,可以通过 nfs 挂载目录到 Linux 主机,实现文件共享。
1、首先要在 Linux 主机上安装 nfs 服务
sudo apt-get install nfs-kernel-server
2、创建共享文件夹,这里以 VMC 文件夹为例
mkdir /home/lodge/VMC // 创建一个用于共享的文件夹
chomd 777 /home/lodge/VMC // 设置该文件夹的权限使其让所有用户可读可写可运行
3、修改配置文件
sudo vim /etc/exports
在文件后添加共享文件夹的路径,以及设定参数,如:
4、挂载文件夹
首先保证 Linux 主机和嵌入式设备 IP 能够互相 ping 通。
登录嵌入式设备,使用 mount 命令挂载文件夹,这里是把 Linux 主机的 VMC 目录挂载到嵌入式设备的 /mnt 目录下,这样就可以在 /mnt 目录下实现和主机的文件共享。
mount -t nfs -o nolock 10.64.12.54:/home/lodge/VMC /mnt
在嵌入式设备中:
在 Linux 主机中:
二、Samba 服务
用途:方便用于 windows 和 Linux 系统间文件共享。
1、安装 Samba
apt-get install samba smbclient
2、创建共享文件夹,这里以 VMC 文件夹为例
mkdir /home/lodge/VMC // 创建一个用于共享的文件夹
chomd 777 /home/lodge/VMC // 设置该文件夹的权限使其让所有用户可读可写可运行
3、修改配置文件
vim /etc/samba/smb.conf
在文件最后添加想要共享的目录信息,如下:
[VMC] 是共享目录的显示名称,可以自定义;path 是共享目录绝对路径;然后确定目录访问权限和指定用户访问,可以根据需要设置。
其他参数描述如下:
comment: 描述
path: 共享文件夹的路径
valid users: 可访问的用户,多个用户用,隔开(使用上面步骤创建的 Samba用户名)
public: 访问是否不需要密码
read only: 是否只读
create mask: 文件权限设置
directory mask: 文件权限设置
available: 是否有效
browseable: 是否可浏览,no表示隐藏,需要通过 IP+共享名称 进行访问
display charset、unix charset、dos charset: 这三个是为了防止出现中文目录乱码的情况
4、启动 Samba 服务
// 重启服务
sudo service smbd restart
// Samba 服务重启后,可以使用下面命令检查 smb.conf 配置文件是否有语法错误
testparm
其他控制命令
sudo service smbd start // 启动
sudo service smbd stop // 关闭 Samba 服务器:
sudo service smbd restart // 重新启动 Samba 服务器:
sudo service smbd status // 查看 Samba 服务状态
ps -aux | grep smbd // 查看 samba 是否正在运行
5、连接共享文件夹
首先确保两台设备的 IP 能够互相 ping 通
在 Windows 系统的文件管理器导航栏上反斜杠输入 Linux 设备 IP 后回车
然后在弹出的对话框输入 Samba 配置的用户和密码,如果用户名和登录 Linux 的用户名一样,则需要输入登录 Linux 设备的密码,验证正确后即可看到共享的文件夹,然后就可以进行文件传输读写操作。
三、FTP 服务
用于 Windows 和 Linux 之间文件传输。
1、安装 FTP
sudo apt-get install vsftpd
2、修改配置文件
sudo vim /etc/vsftpd.conf
找到如下两行:
local_enable=YES
write_enable=YES
去掉注释
如下:
3、重启 FTP 服务
sudo /etc/init.d/vsftpd restart
4、Windows 上安装 FTP 客户端
下载地址:https://www.filezilla.cn/download,安装对应系统版本后打开软件。
5、FileZilla 设置
Ubuntu 作为 FTP 服务器, FileZilla 作为 FTP 客户端。
点击 “文件” → “站点管理器”,“新站点”,创建站点,例如我这里创建名为 “Ubuntu” 的站点。
然后连接就行,这时右侧就显示 Ubuntu 系统上的文件,如果有乱码,就断开连接,在站点设置的字符集选项中设置 强制 UTF-8。
如果需要复制文件,直接左右窗口拖动即可。