> Ubuntu >

树莓派的vnc自启动以及与Ubuntu18.04虚拟机建立nfs/sftp共享

我的树莓派型号是3b,Ubuntu18.04是VMware下的虚拟机,虚拟机已经被我设置为静态IP+桥接模式,只有这样才可以连接树莓派!虚拟机怎么设置参考我的博客:Ubuntu18.04桥接+静态ip
树莓派和你的主机(Ubuntu的Host机)一定要连在同一个路由上,我用的是手机热点啦!
树莓派IP:192.168.43.67,Ubuntu IP:192.168.43.203,主机IP:192.168.43.130,确定是在同一个局域网下的。可以树莓派和Ubuntu互相ping一下,如果可以ping通大概率没问题啦!
我用了win10下的tightvnc登陆了树莓派,可视化方便操作一些。tightvnc登陆之前必须启动树莓派VNC服务,树莓派自带了VNC服务,但是不会开机自启动哦!需要如下步骤:
 
命令:sudo raspi-config

 
 
进入第9项Advanced Options,看到VNC将其enable,如下图:
 
命令: vncserver 以启动vnc服务!然后可以用tightvnc登陆了!一般vnc服务默认enable,所以直接进行第二步一般也可以的!
为了方便以后的操作,设置树莓派VNC服务自启动!
命令:sudo nano /etc/init.d/vncserver ,其实/etc/init.d文件夹下没有vncserver这个文件的,你相当于新建了一个Shell脚本,然后开机执行! 复制如下内容,粘贴(怎么复制?你用树莓派上的浏览器打开网页直接复制!):
 
#!/bin/sh
### BEGIN INIT INFO
# Provides:          vncserver
# Required-Start:    $local_fs
# Required-Stop:     $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/stop vncserver
### END INIT INFO
 
# More details see:
# http://www.penguintutor.com/linux/vnc
 
### Customize this entry
# Set the USER variable to the name of the user to start vncserver under
export USER='pi'
### End customization required
 
eval cd ~$USER
 
case "$1" in
  start)
    # 启动命令行。此处自定义分辨率、控制台号码或其它参数。
    su $USER -c '/usr/bin/vncserver -depth 16 -geometry 1024x768 :1'
    echo "Starting VNC server for $USER "
    ;;
  stop)
    # 终止命令行。此处控制台号码与启动一致。
    su $USER -c '/usr/bin/vncserver -kill :1'
    echo "vncserver stopped"
    ;;
  *)
    echo "Usage: /etc/init.d/vncserver {start|stop}"
    exit 1
    ;;
esac
exit 0
 
代码内的USER指定为了pi,可以修改!
接着命令:sudo chmod 755 /etc/init.d/vncserver修改权限,sudo update-rc.d vncserver defaults添加开机启动项,sudo reboot重启树莓派!应该就可以tightvnc直连! 向取消开机启动defaults改remove。
下面开始建立nfs共享文件夹,树莓派自带nfs,在Ubuntu上命令:
sudo apt-get install nfs-common nfs-kernel-server
sudo apt-get install portmap
安装nfs。
然后sudo vim /etc/exports 设置Ubuntu上的共享文件夹,以及权限。如图:
 
命令:sudo chmod 777 /share 修改文件夹的权限!
命令:sudo /etc/init.d/nfs-kernel-server restart 重启nfs服务!
命令:showmount -e 查看当前nfs共享目录状态!
在树莓派上手动挂载命令mount -t nfs -o nolock 192.168.43.203:/share /home/pi/Public/nfs ,命令不报错表示挂载成功。nfs可以实现文件同步共享,增加,删除,很好用。
这里注意一下,挂载成功后将文件放入Ubuntu的/share目录下即可,你在pi上的FileManager里面并不能看到那个文件,但是用ls命令是可以看到的,比较奇怪!
另外用sftp也可以实现文件共享!
命令:sftp pi@192.168.43.67,登陆树莓派,输入密码后可以sftp传输。
put 本地文件 pi的目录可以upload, get pi的文件 本地目录可以download!
exit退出ftp状态!
 


(责任编辑:IT)