树莓派学习网站 http://www.chinagtd.com
树莓派入门实务(原创) http://www.shumeipai.net/thread-27636-1-3.html
给树莓派挂载移动硬盘或U盘 http://shumeipai.nxez.com/2013/09/08/raspberry-pi-to-mount-the-removable-hard-disk.html
update由于没有公钥,无法验证下列签名 http://rpi.linux48.com/GPG-error.html
使用raspi-config配置树莓派 http://shumeipai.nxez.com/2013/09/07/raspi-config-configuration-raspberry-pie.html
HDMI-VGA转换器黑屏的排障方案
>
hdmiforcehotplug=1
confighdmiboost=4
hdmi_group=2
hdmi_mode=9
hdmi_drive=2
hdmiignoreedid=0xa5000080
disable_overscan=1
http://shumeipai.nxez.com/2013/08/31/hdmi-vga-converter-black-screen-troubleshooting-program.html
启用root账号和修改默认账号
>sudo
passwd
sudo
passwd
--unlock root
http://shumeipai.nxez.com/2013/08/27/pi-modify-the-default-account.html
我的树莓派玩机攻略—搭建nginx+mysql+php
我安装的是官方2014Q1的Raspbian。
先ssh连上Pi。
替换树莓派软件源为中科大的镜像
1
sudo
vi
/etc/apt/sources
.list
直接把官方源去掉或者前面加#号注释掉,添入以下源:
1
deb http:
//mirrors
.ustc.edu.cn
/raspbian/raspbian/
wheezy main contrib non-
free
rpi
这时apt-get更新软件包时出现错误提示Unable to locate package update,发现问题出在执行sudo apt-get install之前更换了软件源,但是却忘了更新软件源,于是执行下面的命令:
1
sudo
apt-get update
更新已安装的包
1
sudo
apt-get upgrade
安装screen
1
sudo
apt-get
install
screen
安装lnmp
1
sudo
apt-get
install
nginx php5-fpm php5-cgi php5-cli php5-curl php5-gd php5-mcrypt php5-mysql php5-memcache php5-gd php5-sqlite php5-cgi php5-xmlrpc mysql-server mysql-client
mysql-server mysql-client nginx php5这都没什么好说的,后面的php5插件是为了兼容现在大部分php应用而添加的,php5-cli是php命令行模式,最近玩vagex的php 模式需要用到,php5-fpm作为默认Fastcgi支持已经添加进最新版php5中。 安装mysql的时候会提示输入密码,密码不要忘记就行了。
配置nginx
1
vi
/etc/nginx/nginx
.conf
需要做的就是限定线程数和开启gzip支持,gzip开启后将大幅降低传输html的流量占用。
1 2 3 4 5 6 7 8 9 10
worker_processes 1;
#只有一个CPU,单进程即可
worker_connections 256;
#一般支持100在线连接就达到raspberry pi的极限了
gzip
on;
#gzip开启取消前面的#让默认设置生效即可
gzip_disable
"msie6"
;
gzip_vary on;
gzip_proxied any;
gzipcomplevel 6;
gzip_buffers 16 8k;
gziphttpversion 1.1;
gzip_types text
/plain
text
/css
application
/json
application
/x-javascript
text
/xml
application
/xml
application
/xml
+rss text
/javascript
;
配置站点属性
1
vi
/etc/nginx/sites-availiable/default
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
server {
listen 80;
#Web服务端口号,大陆用户可能需要修改为81或8080等
server_name pi.chensibo.com;
root
/var/www
;
#站点存储位置
access_log
/var/log/nginx/localhost
.access.log;
#error_page 404 /404.html;
if
(!-e $request_filename)
{
rewrite ^(.*)$
/index
.php$1 last;
}
location / {
index index.html index.htm index.php default.html default.htm default.php;
#加入index.php为默认页面
}
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
access_log off;
expires 1d;
}
location ~ .\.php(\/.)*$ {
fastcgisplitpath_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:
/var/run/php5-fpm
.sock;
fastcgi_index index.php;
include fastcgi_params;
#开启php解析,使用php-fpm作为Fastcgi通信模块
}
}
配置mysql 默认安装mysql的配置是基于1G以上X86 CPU,512M内存给Mysql独占的,自编译版提供多种配置文档,对于rapsberry pi选择small.cnf就行了,我们对/etc/mysql/my.cnf进行一些修改也行。另外mysql 5.5开始默认使用Innodb数据库引擎,这是一种对分布式和高并发优化的格式,其实老版本的MYISAM引擎也足够用了,关闭Innodb引擎也能节 省大概6-10M的内存占用。
1
vi
/etc/mysql/my
.cnf
1 2 3 4 5 6 7 8 9
[mysqld]
character-
set
-server=utf8
key_buffer = 16k
maxallowedpacket = 1M
thread_stack = 64K
threadcachesize = 4
querycachelimit = 1M
default-storage-engine = MYISAM
loose-skip-innodb
还需要给root用户设置外部访问权限,这样局域网就可以通过ip地址统一访问,而不是127.0.0.1
1 2 3 4 5
mysql -uroot
>use mysql;
>grant all privileges on . to root@
'ip地址'
identified by
'root密码'
with grant option;
设置php-fpm和php.ini,尽量闲置内存使用
1
sudo
vi
/etc/php5/fpm/php
.ini
1 2 3 4
memory_limit=16M
sudo
vi
/etc/php5/fpm/php-fpm
.conf
process.max=4
#以一个进程占用16M来算,4个占用64M基本够用了
这样优化后,启动完成系统后内存占用保持在100M以内,剩余300多M比我的一个vps内存都多了。
接下来是安装phpmyadmin到指定目录
修改树莓派的时区和网络对时
1.安装ntp,输入
1
sudo
apt-get
install
ntpdate
2.修改时区,输入
1
tzselect
3.按照自己的时区选择:
1
Asia->China->east china->
yes
4.配置网络对时,设为国内的ntp服务器cn.pool.ntp.org
1
sudo
ntpdate cn.pool.ntp.org
5.输入“date”,时间和本地时间一样了。
或者可以用 yyyymmdd hh:mm:ss 的格式手动设置时间。
1
date
-s
"20140102 22:12:00"
ENJOY IT!
(复制自http://blog.chensibo.com/i-work-for-nginx-mysql-php-raiders-build-raspberry-pi/)