树莓派Raspberry玩耍过程记录

 最近在淘宝上买了一个最新的树莓派三代B型Element14版(中国造)用来完成一个小型项目。

1、树莓派最新系统

下载地址:https://www.raspberrypi.org/downloads/raspbian/

我选择的是RASPBIAN STRETCH WITH DESKTOP,基于Debian系统,带桌面环境,版本为2017-09-07-raspbian-stretch(http://111.1.62.87/files/5182000004AB280B/vx2-downloads.raspberrypi.org/raspbian/images/raspbian-2017-09-08/2017-09-07-raspbian-stretch.zip

2、默认没有开启ssh,如何开启?

进入终端界面,切换到boot目录,创建一个ssh文件,然后重启,命令如下:

  • cd /boot
  • sudo touch ssh
  • reboot

3、树莓派开启远程桌面功能(window系统远程桌面连接可以连接)

  • sudo apt-get install xrdp

但是如果开启之后发现连接后输入用户pi和密码后登陆出错(Problem Connecting)

解决方法如下:

  • sudo apt-get remove xrdp vnc4server tightvncserver
  • sudo apt-get install tightvncserver​ -y
  • sudo apt-get install xrdp -y

4、更新apt-get列表

  • sudo apt-get update

5、安装一个Nginx+PHP+MySQL+PhpMyAdmin玩玩?

  • sudo apt-get install nginx -y
  • sudo apt-get install php5-fpm php5-mysql -y
  • sudo apt-get install mysql-client-core-5.5 -y
  • sudo apt-get install mysql-server mysql-client -y

注意:当在安装的时候提示如下错误,解决方法就是换回官方源即可,参考第6条。

  • mysqsl-server : Depends: mysql-server-5.5 but it is not going to be installed
  • Depends: mysql-client-5.5 but it is not going to be installed

安装完成之后mysql的root用户只能在树莓派系统的root用户下才能进入,当你是pi用户登录时候,输入su和root用户密码后就可以切换到root用户下,然后用mysql -uroot -p即可进入mysql数据库进行操作。

接着开始配置nginx+php+mysql

#修改nginx默认配置文件

  • sudo nano /etc/nginx/sites-available/default 

把index index.html index.htm index.nginx-debian.html;

改为index index.php index.html index.htm index.nginx-debian.html;

因为按照的是php5-fpm模式来跑php,所以继续往下,有关php的部分修改如下

  •         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  •         #
  •         location ~ \.php$ {
  •         #       include snippets/fastcgi-php.conf;
  •         #
  •         #       # With php5-cgi alone:
  •         #       fastcgi_pass 127.0.0.1:9000;
  •         #       # With php5-fpm:
  •                 fastcgi_pass unix:/var/run/php5-fpm.sock;
  •                 fastcgi_index index.php;
  •                 include fastcgi_params;
  •         }

接着按ctrl+x,按y后回车保存成功,测试一下配置文件是否有问题:

  • sudo nginx -s reload

nginx+php-fpm配置后页面显示空白的解决方法:

参考:http://blog.csdn.net/feiniao8651/article/details/52768911

在/etc/nginx/fastcgi_params文件的最后增加两行: 

  • fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
  • fastcgi_param PATH_INFO                $fastcgi_script_name; 

最后重载nginx和php5-fpm

  • sudo service nginx reload
  • sudo service php5-fpm reload

查看nginx+php+mysql版本号如下:

  • pi@raspberrypi:/ $ nginx -v
  • nginx version: nginx/1.6.2
  • pi@raspberrypi:/ $ php -v
  • PHP 5.6.30-0+deb8u1 (cli) (built: Apr 14 2017 16:20:58) 
  • Copyright (c) 1997-2016 The PHP Group
  • Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
  •     with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
  • pi@raspberrypi:/ $ mysql -V
  • mysql  Ver 15.1 Distrib 10.1.23-MariaDB, for debian-linux-gnueabihf (armv7l) using readline 5.2

nginx默认的网页目录是:/var/www/html

6、默认更新源太慢了,能不能换个更新源?

把源改成aliyun的就会比较快了!命令如下:

  • sudo mv /etc/apt/sources.list /etc/apt/sources.list_bak
  • sudo nano /etc/apt/sources.list

输入下面2条记录后按ctrl+x退出,输入y后回车完成保存

  • deb http://mirrors.aliyun.com/raspbian/raspbian/ jessie main contrib non-free rpi
  • deb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main contrib non-free rpi

保存之后需要用sudo apt-get update命令更新软件源列表。

注意:如果发现后续在安装软件无法成功的情况下,请恢复官方默认源,好处就是安装成功率会很高,毕竟是官方出品;坏处就是速度会慢一点,毕竟是连接到千里之外。

7、用到树莓派的显示屏作为演示或监视器的时候,禁止长时间无响应屏幕休眠的方法。

电源管理中禁止屏幕休眠,命令具体如下:

  • sudo nano /etc/profile.d/screen.sh

输入如下命令后按ctrl+x,然后按y后回车,最后重启即可:

xset s 0 0

xset dpms 0 0 0

  • sudo reboot

其它一些设置

  • #xset s 300      #设置屏保时间为300秒,时间单位为秒
  • #xset s 0        #关闭屏幕保护
  • #xset dpms 0 0 0 # 三个数值分别为Standby、Suspend、Off,单位秒
  • #xset -dpms      #关闭电源管理

更多相关设置示例:

指令 说明
xset s off 禁用屏幕保护
xset s 3600 3600 设置空闲时间为1小时
xset -dpms 关闭 DPMS
xset s off -dpms 禁用 DPMS 并阻止屏幕进入空闲
xset dpms force off 立即关闭屏幕
xset dpms force standby 强制屏幕进入待命状态
xset dpms force suspend 强制屏幕进入暂停状态

8、修改为上海时区

  • sudo timedatectl set-timezone Asia/Shanghai

9、我需要安装Firefox!

在树莓派下Firefox叫做iceweasel,安装命令如下:

  • sudo apt-get install iceweasel -y

如果希望Firefox支持Flash的话就继续执行以下命令:

  • sudo apt-get install browser-plugin-gnash -y

10、树莓派自动登录、自动运行startx、自动运行程序

参考:http://blog.csdn.net/rocklee/article/details/50083049

设置开机自动运行Firefox命令如下:

  • mkdir -p /home/pi/.config/autostart
  • echo '[Desktop Entry]'>>/home/pi/.config/autostart/my.desktop
  • echo 'Type=Application'>>/home/pi/.config/autostart/my.desktop
  • echo 'Exec=firefox'>>/home/pi/.config/autostart/my.desktop

11、禁用Firefox崩溃后的会话恢复功能(默认是启用的)

这样在意外退出或崩溃后,Firefox 也不会恢复上次会话的窗口和标签页:

在 地址栏,输入 about:config,然后按 Enter,到 about:config 页面。

在顶端的过滤器文本框中,输入browser.sessionstore.resume_from_crash。

在结果栏中,双击browser.sessionstore.resume_from_crash并设置为false。

12、修改nginx配置文件使得api目录下可以隐藏PHP文件扩展名

比如访问api/get.php文件可以用api/get访问到。

sudo nano /etc/nginx/sites-available/default

在location ~ \.php$这个节点下方增加如下

        location ^~ /api/ {

   if (!-f $request_filename){

       rewrite "^/api/(.*)$" /api/$1.php;

break;

  }

                fastcgi_pass unix:/var/run/php5-fpm.sock;

                include fastcgi_params;

        }

13、设置树莓派HDMI输出黑屏问题

当把树莓派通过HDMI连接显示器或者电视后,如果树莓派先于显示器或电视启动,则会产生显示器或电视开启后黑屏问题,只能重启树莓派才能正常显示。如何解决这个问题呢?在树莓派系统里编辑/boot/config.txt文件,末尾增加hdmi_ignore_edid=0xa5000080保存后重启即可。

14、树莓派修改系统时间

sudo date --s="2017-10-28 12:00:00"

15、解决No module named cv2的问题

sudo apt-get install python-opencv

16、待续……

上一篇: Linux系统启动自动进入桌面启动Firefox程序并最大化
下一篇: mysql 时间戳与日期格式的相互转换

发表评论