画师:Junc
WordPress的博客最近不知道为什么打开异常的慢,正好也从学校回到家了,玩一下树莓派,顺便把之前写的记录搬运过来做个备份,我记得这些工具我之前都下过但是忘了放到哪个U盘里了…
此处我使用的是ubuntu MATE16.04.2 (Xenial) ubuntu-mate官网下载地址
win32diskimager 下载地址
Putty下载
在浏览器输入192.168.1.1 登陆账号 例如我的树莓派内网IP为192.168.1.3
关于SSH连接的问题:ubuntu MATE16.04.2 官方给出了这样一句话
Since Ubuntu MATE 16.04.2 the OpenSSH server is disabled by default.
If you want to enable SSH you can use raspi-config to created a file
call ssh in to /boot paritition and reboot.When you enable SSH via either method explained above sshguard will
also be enabled.
也就是说SSH默认是关闭的,如果要开启的话需要在/boot 目录下建立一个文件名为SSH的文件,官方也说明了打开SSH链接的同时,SSH防火墙也同时打开,但是我建了之后还是timeout没办法我只好google,解决方法在下面。
树莓派安装完ubuntu mate后,需要开启远程登录
- 打开终端
- sudo raspi-config
- 进入interfacing options
- 选则p2 ssh回车
- 选择yes回车
- 等待完成回车确认
- 退出配置,ps -e | grep ssh 看到sshd即开启
接着开启root用户登录
- 更改root用户密码,命令:sudo passwd root
- sudo vi /etc/ssh/sshd_config
- 找到 “PermitRootLogin without-password” 或者 “PermitRootLogin prohibit-password”
- 修改成 “PermitRootLogin yes”
- 重启SSH服务 sudo service ssh restart
通过ifconfig查看本地ip,试着远程登录
但是现在连接上去还是命令行界面,除了SSH连接,还有VNC连接可以用图形界面控制树莓派,如下所示
1.安装tightvnc
sudo apt-get install tightvncserver
2.设置密码,注意密码限制位数最多8位
vncpasswd
在只读密码页面选择N
Would you like to enter a view-only password (y/n)? n
3.开机自启动
sudo pluma /etc/init.d/tightvncserver
#!/bin/sh
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start: $local_fs
# Required-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/stop tightvncserver
### END INIT INFO
#/etc/init.d/tightvncserver
### Customize this entry
# 把这里的用户名改成你的用户名
export USER='pi'
### End customization required
eval cd ~$USER
case "$1" in
start)
# 启动命令行。此处自定义分辨率、控制台号码或其它参数。
su $USER -c '/usr/bin/tightvncserver -depth 16 -geometry 960x600 :1'
echo "Starting TightVNC server for $USER "
;;
stop)
# 终止命令行。此处控制台号码与启动一致。
su $USER -c '/usr/bin/tightvncserver -kill :1'
echo "Tightvncserver stopped"
;;
*)
echo "Usage: /etc/init.d/tightvncserver {start|stop}"
exit 1
;;
esac
exit 0
将USER='pi’改为你的用户名,默认为pi,修改保存
4.设置文件权限,更新开机自启动列表
sudo chmod 777 /etc/init.d/tightvncserver
sudo update-rc.d tightvncserver defaults
而后重启
sudo reboot
查看运行状态
sudo service tightvncserver status
2.运行tightvnc
tightvncserver
# ps aux | grep vnc
root 14031 0.0 0.3 14904 6448 ? S 12月12 0:00 Xtightvnc :1
root 16565 0.0 0.2 8164 4952 ? S 12月12 0:00 Xtightvnc :2
# vncserver -kill :1
Killing Xtightvnc process ID 14031
# vncserver -kill :2
Killing Xtightvnc process ID 16565
输入密码得到以下命令
New ‘X’ desktop is xxxxx-desktop:1
Creating default startup script /home/xxxxx/.vnc/xstartup Starting
applications specified in /home/xxxxx/.vnc/xstartup Log file is
/home/xxxxx/.vnc/molers-desktop:1.log
3.在电脑上下载VNC viewer 下载链接
4.输入ip:1 注意端口为1,例如我的是192.168.1.3:1,成功界面如下所示
用Windows10自带的xrdp进行远程链接.:
首先在树莓派中安装xrdp:
sudo apt-get install xrdp
而后将树莓派和电脑接入同一wifi等局域网络,
直接通过windows的网络,我们可以找到同在局域网下的树莓派主机,名字就是你的用户名选中树莓派主机,点击使用远程桌面连接进行连接,如下图:
进入连接界面,选择vnc-any.输入默认的ip 127.0.1.1,再改一下端口号5901,再输入之前设置的vnc密码,即可连接,如下图设置
结果如图:
# apt-cache search teamviewer
teamviewer - Remote control and meeting solution
# apt-get install -y teamviewer
额外补充:因为我是直接网线连接的,不需要wifi,这里也把wifi的命令行配置也写一下
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
在最后加上
network={
ssid=“你家的wifi账号,比如我家的是FAST_D924”
psk=“你家的wifi密码” }保存退出
sudo shutdown -h now 树莓派关机
这个Wifi登陆可能需要,我先略过
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
exit 0
把开机要执行的命令放到 exit0 前面,里面可以直接写命令或者执行Shell脚本文件sh。
参考链接:
树莓派安装VNC和设置VNC开机自启动
Raspberry Pi 2 折腾记开始
sudo nano /etc/init.d/tightvncserver
把下列粘贴进去,
#!/bin/sh
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start: $syslog $remote_fs $network
# Required-Stop: $syslog $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/stop tightvncserver
### END INIT INFO
# /etc/init.d/tightvncserver
VNCUSER=’pi’
case "$1" in
start)
# 启动命令行。此处自定义分辨率、控制台号码或其它参数。
su $VNCUSER -c ’/usr/bin/tightvncserver:1’
echo "Starting TightVNC server for $VNCUSER "
;;
stop)
# 终止命令行。此处控制台号码与启动一致。
su $VNCUSER -c ’/usr/bin/tightvncserver -kill :1’
echo "Tightvncserver stopped"
;;
*)
echo "Usage: /etc/init.d/tightvncserver {start|stop}“
exit 1
;;
esac
exit 0
上述脚本的一些解释链接
linux init.d脚本的解释
How to LSBize an Init Script
【pi】开机启动脚本
$local_fs
然后运行:
sudo chmod 755 /etc/init.d/tightvncserver
sudo update-rc.d tightvncserver defaults
解释一下权限的分配chmod(change mode)
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1 若要rwx属性则4+2+1=7; 若要rw-属性则4+2=6; 若要r-x属性则4+1=5。 chmod a=rwx
file和chmod 777 file效果相同 chmod ug=rwx,o=x file和chmod 771 file效果相同
接着重新启动VNC
service vncserver restart
取消开机启动
sudo update-rc.d -f tightvncserver remove
VNC相关操作
1、停止VNC窗口:
vncserver -kill:1
2、修改密码
vncpasswd
3、重启服务
service vncserver restart
Ubuntu MATE 16.04 running on the Raspberry Pi 文档
他这个视频除了画质不好 其他都是干货,吐槽一下为什么这个作者为什么就是不能学一下剪辑…
视频链接