1. Linux系统概述
1.1 终端和GUI
Windows操作系统中,通常通过GUI或命令行来实现一个特定目标。在Linux中该说法是控制台或终端。
推荐使用Debian。各种发行版的界面外观是完全不同的,这取决于用户使用的桌面环境。所有发行版终端上输入的命令,一般都是相同的。
1.2 Linux词汇表
- Bash 大多数Linux发行版本使用的Shell
- Bootloader 用来引导Linux内核的程序,如常见的GRUB
- Console 终端界面,使用树莓派时首先看到的界面。
- GNU 开源软件系那个亩,提供大多数Linux上的工具软件
- Package 运行应用程序所需要的文件集合,一般由包管理器来管理
- Package manager 一个跟踪、安装Linux软件的工具
- Partition 磁盘的一部分,用来安装文件系统
- Root Linux上的一个最重要的账户
- Shell 基于文本的命令提示符,运行在终端界面下
- Sudo 让用户进入root用户模式
- Superuser 超级用户,类似root账户
- Terminal 基于文本的命令提示符,与用户交互的Shell程序
- X11 X窗口系统,提供了一个图形用户界面(GUI)
1.3 Linux基础
通过终端操作。需要掌握以下命令:
ls
:listing的简写,提供一个当前目录的内容列表,可以附带参数。输入ls/home将提供/home下的内容列表。并且忽略当前路径,相当于Windows系统下的dir命令。
cd
:更改目录的缩写。通过文件系统进入相应的目录。
mv
:move命令,允许一个文件从一个目录移动到另一个目录,也可以重命名文件。
rm
:remove的简写,用来删除文件。小心使用,防止误操作。
rmdir
:rm
通常不会删除目录。而通过rmdir命令可以删除空目录。
mkdir
:与rmdir
相反的命令,创建新的目录。
查找帮助 man 每一个Linux应用程序都自带帮助文件,称为man page(手册页),提供该应用程序的背景以及如何使用该应用程序的细节。
2 Debian简介
2.4 使用外部存储设备
访问外部存储器之前,操作系统需要识别,这个过程称为装载。正在运行一个带有桌面环境的Linux,在控制器中输入startx命令。
在Linux未加载桌面环境时移动外设,请按照下列步骤操作。
1、 连接USB存储设备
2、 输入sudo fdisk – 1,查看连接到树莓派的驱动器列表,通过设备容量找到存储设备
3、 在USB存储器可以访问前,Linux需要挂载点,输入 sudo mkdir/media/externaldrive,创建挂载点
4、 目前,该设备只能被root用户访问,为了让所有所有用户访问,请输入以下命令。
sudo chgrp –R users/media/externaldrive &&
sudo chmod –R g+w/media/externaldrive
5、 通过命令sudo mount/dev/sdXN/media/externaldrive –o = rw 装载USB存储设备,获得移动设备内容。
2.5 创建一个新的用户账户
默认情况下,Debian配置了两个用户账户:Pi(普通账户)和root(拥有额外权限的超级账户)
不要一直使用root账户登录,使用非特权用户帐号,可以保护你的操作系统。
现有的用户账户:用户名:Pi,密码:raspberry
2.6 文件系统布局
2.6.1 逻辑布局
登录到派,输入ls/会看到不同的目录,其中有些是SD卡中的文件,有些是访问操作系统或硬件的虚拟目录。
Debian默认目录:
boot:包含了启动Pi需要的Linux内核和其他软件包
bin:操作系统中相关的二进制文件,如需要运行的GUI
dev:这是一个虚拟目录,实际上并不存储在SD卡上,所有的连接到系统的设备包括存储设备、声卡和HDMI端口,可以从这里访问。
etc:存储配置文件,包括用户列表和加密的密码。
home:每个用户在该目录拥有一个子目录来存储所有的个人文件。
lib:用来存储不同应用程序所需代码共享的库文件。
lost+found
media:可移动存储设备目录
mnt:用于手动挂载的存储设备
opt:用来存储不是操作系统自身自带的软件
proc:这是另一个虚拟目录,包含正在运行的程序信息,即Linux的进程。
selinux:Linux内核中提供的强制访问控制(MAC)的安全系统。
sbin:存储特殊二进制文件的目录,主要用于root账户对系统进行维护。
sys:操作系统文件存储目录。
tmp:临时文件自动存储在这里
usr:存储用户访问的程序
var:虚拟目录,用来存储程序运行时改变的值或变量。
2.6.2 物理布局
SD卡分为两个主要部分。
第一个分区:75MB,vfat格式。挂载在/boot目录下。
第二个分区:EXT4格式。
2.7 安装和卸载软件
新的软件安装到派很简单,Debian发行版包含了一个叫做apt的工具,这是一个功能强大的软件包管理器。
其他平台的软件安装工具大同小异。
确保spt缓存是最新的,键入命令sudo apt-get update
2.7.1 查找软件
apt 软件包括一个实用程序,用于管理该缓存,即apt-cache,使用一个特定的词或短语搜索所有可用的软件包。
例如 apt-cache search game
2.7.2 安装软件
例如安装thrust (一个游戏)
sudo apt-get install thrust
安装软件的时候会发生自动查找依赖的包,会自动寻找下载。
2.7.3 卸载软件
remove命令干净地卸载软件包。
sudo apt-get remove thrust
使用purge删除所有相关文件,自己定制了一个软件包,建议使用purge移除。
sudo apt-get purge thrust
2.7.4 升级软件
全部升级: sudo apt-get update
单个升级:sudo apt-get install thrust (重新安装一遍)
第3章 故障诊断
3.1 键盘和鼠标的诊断
3.2 供电诊断
A型树莓派 5V 500mA;B型树莓派 5V 700mA。
电压测试点 TP1和TP2。如果低于4.8V,不能提供足够的电力。
3.3 显示的诊断
第六章
3.4 启动的诊断
考虑SD的问题
3.5 网络的诊断
ipconfig 提供所有网络端口的信息。
3.6 紧急内核
正常内核不工作的情况下工作。
Linux内核位于/boot目录下名为 kernel.img 第一次启动并开始加载操作系统
紧急内核:位于/boot目录下,名为kernel_emergency.img
第4章 网络配置
4.1 有线网络
网络连接列表及其配置存储在/etc/network 文件夹下名为 interfaces的文件。
采用nano文本编辑器工具来编辑这个文件(CTRL+O保存,CTRL+X退出nano)
sudo nano/etec/network/interfaces
编辑的那行以iface tch0 innet开始,首先用static替换该行最后的dhcp。然后新的一行粘贴:
address 【静态Ip地址】
netmask 【子网掩码】 通常是255.255.255.0
gateway 【路由器或解调器的IP地址】
重启网络服务使得新的网络配置生效。
sudo /etc/init.d/networking restart
接下来需要配置好域名服务,DNS服务器地址存储在/etc/resolv.conf文件中,当系统从DHCP服务器中获得DNS信息后,会自动修改该文件填充DNS服务器地址。如果手动设置,则需要手动修改文件。
完成上述步骤,仍然需要从终端中用nano打开resolv.conf文件
sudo nano/etc/resolv.conf
打开的文件中,每一行输入一个DNS地址,以namesever和空格开始
namesever 8.8.8.8
namesever 8.8.4.4
4.2 无线网络
1、安装固件
查找网卡固件信息 dmesg | grep ^usb
通过厂家信息查找相匹配的固件文件 apt-cache search ralink
下载并拷贝固件到/home/pi目录然后安装 sudo apt-get install firmware-ralink_0.35_all.deb
用iwconfig检查当前网络状态。
将树莓派连入无线网络,需要在/etc/network/interfaces文件中加入几行,首先用nano打开interfaces文件
sudo nano /etc/network/interfaces
在文件的最后输入下述文字
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa.conf
其他内容 新建wpa.conf
加密无线网络
第5章 创建新分区
5.1 创建新分区
警告:使用分区修改工具时,一定不要删除已经存在的分区,特别是/boot 分区或root问价系统分区。
创建新分区
1.打开终端,输入sudo fdisk –l来列出所有连接到树莓派的存储设备及其分区。SD卡通常显示为/dev/mmcblk0
2.输入sudo cfdisk /dev/mmcblk0来加载cfdisk分区管理工具,
3.移动光标到最下面的标志为Free Space的分区,按回车键选中,此时选中的分区高亮(白底黑字)
4.移动光标,选定底下的New命令然后按回车键
5.将提示创建主分区还是逻辑分区。默认选择主分区。
6.将提示输入创建的新分区大小,以MB为单位。默认所有剩余空间。
7.移动光标到Write菜单按回车键选择从而写入分区表
8.提示是否确定要改变分区,输入yes并按回车键
9.移动光标到Quit菜单按回车键退出cfdisk程序。
操作系统只有重启以后才会重新载入分区表,重启命令:
sudo reboot
重启完毕后,用fdisk命令检查是否已成功创建新分区。
sudo fdisk –l
使用新分区之前,还需要使用mkfs命令格式化新分区。【省略,自查!】
【警告】注意分区正确,否则错误地在/boot或root文件系统分区上创建新文件系统,将导致树莓派无法启动。
改变新分区的权限
挂载的新分区只有超级用户才可以访问,其他用户没有权限使用新分区,此时需要chown,chgrp和chmod来改变权限。【自查函数】
chown change ownership
chagrp Change group
chmod Change modifie
可以编辑fstab文件告诉树莓派自动挂载该分区。
5.2 调整已有分区大小
5.2.1 自动调整分区大小
raspi – config工具,该工具仅当系统第一次启动时才会加载,当然也可以在命令行或终端中输入后手动加载。
使用raspi-config调整根分区步骤
1第一次开机启动或者手动启动
2 按键盘上的下方向键选择expand-rootfs一行然后按回车键。
3 调整操作后,会提示操作将会在下次系统启动的时候完成,按回车键忽略该消息。
4 按两次Tab键使Exit菜单高亮,按回车键退出raspi-config
5 输入sudo reboot重启系统,根据需要重新调整分区大小。
5.2.2 手动调整分区大小
Linux用户,可以使用gparted这个分区魔术师的图形版工具,该工具可以使用sudo apt-get install gparted获取安装
分区魔术师实际是一个定制的Linux操作系统。
5.3 换用大容量SD卡
5.3.1 在linux下创建SD卡镜像 【其他系统忽略】
第6章 配置树莓派
树莓派的核心组件是BCM2835芯片。
修改 config.tex,cmdline.txt,start.elf配置文件
6.1.1 显示设置
config.txt中的每一项配置项都应为单独一行,前面是配置项名称,后跟等号,然后才是配置项对应的值。例如,让树莓派使用PAL格式、屏幕比例4:3、每边20像素的overscan的电视作为显示输出设备,写入config.txt:
sdtv_mode = 2 //该值影响树莓派的输出信号,需要根据各国的电视制式进行修改。0 北美视频标准,1 日本。。。
sdtv_aspect = 1 //控制输出画面的宽高比。
overscan_left = 20 //用来控制画面向显示器向某方向移动一定单位。
overscan_right = 20
overscan_top = 20
overscan_bottom = 20
sdtv
第2篇 树莓派作为家庭影院、用于生产环境以及Web服务器