通过SSH Over USB管理树莓派Zero

树莓派Zero因为相对来说太小巧,没有提供初始化的网卡,所以我们除了通过串口连接以外,树莓派Zero也提供了USB直接连接的方式。即通过Ethernet Gadget模式来连接pc,并进行ssh连接。 Ethernet Gadget模式即USB网卡模式,比较常见的就是我们通过android手机的usb接口对pc进行网络共享的一种手段。一般电脑都会自动识别这种设备,并开启网卡进行共享。 修改配置文件 为了进行USB连接,我们需要修改BOOT文件夹下的config.txt与cmdline.txt配置文件。 首先在config.txt最末行处换行添加如下代码,打开usb网卡模式: dtoverlay=dwc2 其次在cmdline.txt文件中找到rootwait字段,并在其后面空格添加如下信息,在打开系统时开启USB网卡模式。 modules-load=dwc2,g_ether 在boot分区新建ssh文件,以打开ssh访问功能。 touch ssh 通过usb连接设备 树莓派zero有两个MicroUSB口,一个是电源插口,职司供电的功能,另外一个就是USB接口,它除了供电以外还提供OTG的功能,我们也是通过这个接口来连接PC。 此时我们可以通过以下代码连接树莓派zero: ssh pi@raspberrypi.local 但此时ip段为DHCP模式获取,如果我们希望通过ip来连接,则我们需要给树莓派的usb网卡设置ip。 设置USB网卡的IP 我们可以通过ifconfig -a来查看我们现在的网卡设备,此时我们可以看到,USB0网卡设备,我们就是通过该设备连接的pc,所以我们需要设置该网卡的ip。 sudo nano /etc/network/interfaces 打开网卡配置界面,在最末行添加如下代码来设置固定IP: allow-hotplug usb0 iface usb0 inet static address 192.168.7.2 netmask 255.255.255.0 network 192.168.7.0 broadcast 192.168.7.255 gateway 192.168.7.1 然后重启usb0网卡: sudo ifdown usb0 sudo ifup usb0 ifconfig usb0 但树莓派此时实际上是从机,我们需要通过设置pc主机的ip来让树莓派0的usb网卡真正运作起来,那么我们对刚才的usb设备设置如下IP: IP: 192.168.7.1 掩码: 255.255.255.0 路由: 192.168.7.1 此时我们就可以通过ip来进行ssh连接了:
全文 →

理解Linux中Shell初始化文件和用户Profiles文件

Linux是一个多用户、实时共享的操作系统,意味着不止一个用户可以登录同一个系统。系统管理员通过任务管理来分配不同用户的权限,比如安装、升级、卸载应用程序,运行编译程序,文件查看、编辑等等。 Linux允许通过两种主要方式来创建用户环境:系统级(全局)和用户级(个人)。一般情况下,Linux系统都会运行基本shell程序,当用户登录成功后shell会在初始化时根据某些文件开创建环境。 Linux中的Shell初始化 当Shell被调用时,会有一些初始化/启动文件被启用,它们的主要作用是为shell本身或用户设定运行环境,包含一些函数、 变量、别名等等。 Shell可以读取以下两种初始化文件: 系统级启动文件 – 包含一些应用于户所有用户的全局配置,一般存在于**/etc**目录中,如 **/etc/profiles** 、**/etc/bashrc** 或者 **/etc/bash.bashrc**。 用户级启动文件 – 包含一些应用于单用户的配置文件,一般存放在各个用户目录,这些配置可以覆盖系统级全局配置,如**.profiles**、 **.bash_profile**、 **.bashrc** 和 **.bash_login**. Shell存在三种调用模式:

  1. 交互式登录Shell 当用户成功登录系统后调用该Shell,使用**/bin/login**登录,随后读取**/etc/passwd**文件。 当启动交互式shell后,将读取**/etc/profile**文件以及特定的用户文件**~/.bash_profile** login as: pi pi@pi.raspi.in's password: The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.
全文 →

修复树莓派PATH变量

使用lnmp一键工具安装完nmp后,重启进入系统就提示bash command not found 然后试了试service,who等命令也无法使用 只有最基本的系统命令ls,cat等可以用 看来安装lnmp后,我的PATH变量被动了 先临时修改下PATH,便于后面操作 export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:$PATH 然后检查~/.profile,/etc/profile是否存在,存在 检查其中的PATH赋值是否异常 经过排查,发现/etc/profile中的PATH赋值异常,修改之重启OK! 在此分享正确的原始~/.profile和/etc/profile文件 ~/.profile 内容

~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package.

全文 →

树莓派安装Dnsmasq加速DNS解析

全文 →

树莓派下安装配置Noip

注册noip 首先在http://noip.com注册账户 然后在主机管理(Manage Hosts)中添加主机(Add A Host),根据提示设置二级域名,IP可以随意填写。 安装Noip客户端 wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz tar zxf noip-duc-linux.tar.gz cd noip-2.1.9-1 sudo make install 安装过程中,按照提示输入noip帐号信息,时间间隔建议设为5s,默认30s 设置开机启动 在/etc/init.d/中建立noip2脚本 sudo vi /etc/init.d/noip2 脚本内容如下 #! /bin/sh ### BEGIN INIT INFO # Provides: noip2 # Required-Start: $syslog # Required-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: noip.com client service ### END INIT INFO # . /lib/lsb/init-functions case "$1" in start) echo "Starting noip2.
全文 →

树莓派使用ddclient和DDNS

域名解析 首先得有个域名,在域名管理中将域名DNS设为he.net的DNS地址,如下: ns1.he.net ns2.he.net ns3.he.net ns4.he.net ns5.he.net 然后在http://dns.he.net注册账号,添加域名(Add a new domain) 接下来添加A记录(New A),勾选允许动态域名解析(Enable entry for dynamic dns) 点击域名后DDNS列中的刷新按钮,新建一个DDNS密匙(Generate a DDNS key.) 安装设置ddclient 在树莓派上安装ddclient sudo apt-get install ddclient 编辑ddclient配置文件,路径为/etc/ddclient.conf protocol=dyndns2 use=web,web=myip.dnsomatic.com server=dyn.dns.he.net login=raspi.in password='ddnskey’ www.raspi.in,raspi.in 其中password为设置DDNS时的key 重启ddclient服务 service ddclient restart 验证IP查询结果 sudo ddclient -query use=if, if=eth0 address is 192.168.1.111 use=if, if=lo address is 127.0.0.1 use=web, web=dnspark address is 36.40.143.235 use=web, web=dyndns address is NOT FOUND use=web, web=loopia address is 36.
全文 →

树莓派安装Node.js

首先查看树莓派cpu信息 pi@raspi:~ $ cat /proc/cpuinfo processor : 0 model name : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 2.00 Features : half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2708 Revision : 000e Serial : 000000004a8acb6d 看清楚cpu构架,是ARMv6 然后在node.js官网下载对应版本的包,下载地址https://nodejs.org/dist/

wget https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-arm64.tar.gz # tar zxf node-v4.2.2-linux-arm64.tar.gz # mv node-v4.2.2-linux-arm64 /usr/nodejs422 方便使用期间,做个链接

全文 →

树莓派安装配置minidlna

全文 →

树莓派安装TP WN322G+驱动

首先查看usb设备 pi@raspi ~ $ lsusb Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 0ace:1215 ZyDAS ZD1211B 802.11g 注意,最后一行为无线网卡信息 打开https://wiki.debian.org/WiFi,查看是否有对照型号的固件 安装对应的固件 pi@raspi ~ $ sudo apt-get install zd1211-firmware 完成后使用iwconfig检查是否已经安装成功 pi@raspi ~ $ iwconfig wlan0 IEEE 802.11bg ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:off lo no wireless extensions.
全文 →

树莓派挂载U盘

树莓派用的是8g的TF卡,想作为小型NAS有点小,存不了多少东西,于是将一个闲置的32G U盘挂载上,当作存储分区 以下为操作过程: 查看磁盘信息 pi@raspberrypi ~ $ sudo fdisk -l Disk /dev/mmcblk0: 7990 MB, 7990149120 bytes 4 heads, 16 sectors/track, 243840 cylinders, total 15605760 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000981cb Device Boot Start End Blocks Id System /dev/mmcblk0p1 8192 122879 57344 c W95 FAT32 (LBA) /dev/mmcblk0p2 122880 15605759 7741440 83 Linux Disk /dev/sda: 32.
全文 →

树莓派使用Ngrok实例

全文 →

修改树莓派Swap

全文 →

树莓派中使用TL-WN725N

全文 →

树莓派安装Tonido打造个人云服务

安装Tonido sudo mkdir /usr/local/tonido cd /usr/local/tonido sudo wget http://patch.codelathe.com/tonido/live/installer/armv6l-rpi/tonido.tar.gz sudo tar -zxvf tonido.tar.gz ./tonido.sh start 浏览器打开http://ip:10001开始注册设置 ip为树莓派的地址 安装多媒体解码器 Tonido支持在线播放音频,但需要安装设置解码器 cd /usr/local/tonido sudo apt-get install ffmpeg sudo ln -s /usr/bin/ffmpeg ffmpeg.exe sudo ln -s /usr/bin/ffmpeg ffmpegv.exe 设置开机启动 下载脚本文件tonido wget http://cdn.lyq.wiki/res/tonido 设置脚本权限 sudo cp tonido /etc/init.d/ sudo chmod +x /etc/init.d/tonido 安装脚本 sudo update-rc.d tonido defaults 客户端下载 Tonido Sync for Windows http://www.tonido.com/download.php?TonidoSync.exe Tonido Sync for Mac http://www.tonido.com/download.php?TonidoSync.dmg Tonido Sync for Linux http://www.
全文 →

树莓派修改软件源

全文 →

树莓派安装Python开发环境与GPIO库

全文 →

开始使用树莓派

全文 →