修改默认的 Pi 账号

树莓派默认的登录帐号是Pi,为了安全和使用习惯的统一,修改这个默认的 Pi 账号步骤如下:

首先,需要启用 root 账号。

sudo passwd ** sudo passwd –unlock root

**为root的密码,按照个人的想法来设置,这个时候要你输入两遍。设置 root 密码后,退出当前的 pi 用户。以 root 身份登录。

先修改 user

usermod -l yourname pi

再修改 group

groupmod -n yourname pi

再把 home 目录改掉

mv /home/pi /home/yourname

设置一下 home 目录

usermod -d /home/yourname yourname

好了,现在可以用新账号登录。资料完全是原来的 pi 的。

最后,为了安全起见,还是禁用掉 root。

sudo passwd -l root

通过SSH配置Wi-Fi连接

脚本如下,修改其中的SSID、ENCRYPTION以及PASSWORD。

#! /bin/sh # SSID (aka. network name). SSID=’Tenda’ # Network encryption method. # * ‘WPA’ for WPA-PSK/WPA2-PSK (note: most Wi-Fi networks use WPA); # * ‘WEP’ for WEP; # * ‘Open’ for open network (aka. no password). ENCRYPTION=’WPA’ # Network password. (WPA-PSK/WPA2-PSK password, or WEP key) PASSWORD=’pass’ if [ $(id -u) -ne 0 ]; then printf “This script must be run as root.

” exit 1 fi NETID=$(wpa_cli add_network | tail -n 1) wpa_cli set_network $NETID ssid \”$SSID\” case $ENCRYPTION in ‘WPA’) wpa_cli set_network $NETID key_mgmt WPA-PSK wpa_cli set_network $NETID psk \”$PASSWORD\” ;; ‘WEP’) wpa_cli set_network $NETID wep_key0 $PASSWORD wpa_cli set_network $NETID wep_key1 $PASSWORD wpa_cli set_network $NETID wep_key2 $PASSWORD wpa_cli set_network $NETID wep_key3 $PASSWORD ;; *) ;; esac wpa_cli enable_network $NETID wpa_cli save_config

等待几秒钟之后,无线网卡上的指示灯亮起,树莓派即连接成功。

可能用到的命令:

lsusb – 查看USB设备,检查无线网卡。

lsmod – 查看系统已加载的模块。rt2x00 是 Ralink 芯片组的统一驱动。

iwconfig – 查看网卡信息。

ifconfig – 查看连接信息。ifconfig wlan0 up 启动网卡 wlan0。

供电不足可能会导致USB无线网卡易掉线等问题,需要保持电力供应。

如果在wpa_gui中找不到网卡适配器,在 /etc/wpa_supplicant/wpa_supplicant.conf 中加入这两行配置就行了:

# needed for wpa_gui to work ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev # needed to allow wpa_gui to alter the configuration update_config=1

via

基于 Samba 实现 NAS 系统

摆弄了几天Raspberry Pi,在搞定了无线网络、FTP服务之后,打算更进一步,通过Samba实现NAS系统与PC共享文件。

需要安装的软件:

sudo apt-get install samba samba-common-bin

sudo apt-get install netatalk (可选,用于支持AFP)

sudo apt-get install avahi-daemon(可选,用于支持网内的计算机自动发现)

接下来就是配置了:

[Samba 配置] /etc/samba/smb.conf 文件尾部增加

[public] comment = Public Storage path = /home/pi read only = no#任何人都具有了访问修改的权限 #因为是公共文件夹,所以给了所有用户全部权限,可以自定义 create mask = 0777#新创建文件的默认属性 directory mask = 0777#新创建文件夹的默认属性 guest ok = yes#默认的访问用户名为guest browseable = yes

有关 Samba 的详细配置可以参考资料1、资料2。然后就可以 smbd restart 了。这时候已经可以通过网上邻居看到共享文件目录,只是进不去。提示需要输入口令,尝试用本地帐户也无法进入。查了资料原来因为 Samba 使用了自己一套用户帐号资料库。要登录的话还需要向该库添加帐号信息,方法有两种:

1.直接用 mksmbpasswd.sh 将系统用户转换成 Samba 用户:

cat /etc/passwd | mksmbpasswd.sh >/etc/samba/smbpasswd

2.用 smbpasswd 命令直接设置,需要首先要添加系统用户然后用 smbpasswd -a 用户名 添加 Samba 用户;smbpasswd -e 用户名 激活用户。

[Netatalk 配置] /etc/netatalk/AppleVolumes.default 方法参考资料3。

最后就是挂载USB移动硬盘了:

mount /dev/sda1 /home/shares/public/

有时候卸载USB移动硬盘的时候会提示设备忙(Device is busy),只需要加上 –l 参数就行了:

umount -l /home/shares/public/

via

修改SWAP空间大小

cd /var sudo swapoff /var/swapfile sudo dd if=/dev/zero of=swapfile bs=1M count=1024 sudo mkswap /var/swapfile sudo swapon /var/swapfile sudo nano /etc/fstab

其中count=1024等于你想让SWAP设置为多少mb,我设置为1G 然后在文件尾部添加一行,就大功告成了。

/var/swapfile none swap sw 0 0

via

树莓派搭建LNMP环境

2021.3.3 更新:新版本的 NGINX 和 PHP 安装方法请参考这里

Raspberry Pi的固件有很多,我安装的是官方的Raspbian。配置ip。然后ssh上去后开始安装。

推荐root权限执行

sudo apt-get update sudo apt-get install nginx php5-fpm php5-cli php5-curl php5-gd php5-mcrypt php5-mysql php5-cgi mysql-server

首次安装mysql的时候会提示输入密码,密码不要忘记就行了。

接下来我们来配置Nginx,首先打开配置文件,/etc/nginx/nginx.conf ,按照下面的配置进行修改。

worker_processes 1; worker_connections 256; gzip on; gzip_disable “msie6”; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

接下来打开/etc/nginx/sites-available/default也是按照下面的配置进行修改。

server { listen 80;#Web服务端口号,大陆用户可能需要修改为81或8080等 server_name raspiweb.dyndns.org; root /media/usb/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; } location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ { access_log off; expires 1d; } location ~ .*\.php(\/.*)*$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }

下面是对mysql的调优,打开配置文件/etc/mysql/my.cnf修改以下几处。

[mysqld] key_buffer = 16k max_allowed_packet = 1M thread_stack = 64K thread_cache_size = 4 query_cache_limit = 1M default-storage-engine = MYISAM

最后我们来配置php.ini,php-fpm,打开配置文件/etc/php5/fpm/php.ini和/etc/php5/fpm/php-fpm.conf修改以下几处。

memory_limit=16M process.max=4

重启nginx。

sudo /usr/sbin/nginx -s reload

到这里我们的lnmp环境配置已经大功告成!接下来是安装phpmyadmin到指定目录~这里只讲如何配置lnmp。

via

使用静态 IP 地址

MCC 172是一个两通道DAQ HAT,用于通过IEPE传感器(如加速度计和麦克风)进行声音和振动测量。它的每个通道具有24位A/D,最大采样率为51.2 kS/s/Ch。