
正文
树莓派linux命令详解 树莓派开始玩转linux
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
树莓派查看所有文件用的是什么命令
ome Linux上树莓派linux命令详解的树莓派linux命令详解我的文档树莓派linux命令详解,包含用户名命名的文件夹
/lib 各种应用需要的代码库
/lost+found 一般情况下是空的树莓派linux命令详解,当系统非法关机后树莓派linux命令详解,这里就存放了一些文件
/media 放置可移动存储驱动器,比如USB和CD
/mnt 用来手动挂在外部硬件驱动器或存储设备
/opt 可选软件文件夹,非系统部分的软件将会放置在这里
/sbin 放置超级用户使用的系统管理命令
/sys 放置操作系统文件
/tmp 放置临时文件
/usr 放置用户使用的程序
/var 虚拟文件,用于程序保存数据
2
树莓派常用命令:
相关问答
Q1: 树莓派-磁盘分区、格式化、挂载、卸载
之前笔记本换了一块SSD,原来的那块500GB的机械硬盘一直闲置没用,最近淘宝买了一个硬盘盒子,把它当作移动硬盘来使,顺便实际操作一下刚刚学的Linux的磁盘管理命令。
输入命令 cfdisk /dev/sda ,进入到cfdisk分区工具界面:
将/dev/sda1格式化为 Ext4格式 ,命令为 mkfs -t ext4 /dev/sda1 ,同样适用 Ext2格式 mkfs -t ext2 /dev/sda1 、 Ext3格式 mkfs -t ext3 /dev/sda1 。
使用命令 mkfs -t ntfs /dev/sda2 想将/dev/sda2格式化为 ntfs格式 ,但是会报错: mkfs: failed to execute mkfs.ntfs: No such file or directory 。解决方法为:需要安装 apt-get install ntfsprogs ,但是目前还是会报错 E: Package 'ntfsprogs' has no installation candidate
命令 mkfs -t vfat /dev/sda3 或者 mkfs -t fat /dev/sda3 或者 mkfs -t msdos /dev/sda3 。vfat 是 fat 的扩展,支持长文件名,mkfs.fat和mkfs.vfat 本质上是同个工具,生成的文件系统没区别是因为 vfat 和 fat-32 在实现上是没区别的,只是 vfat 通过 fat-32 中的一些隐藏路径表示长文件名,而在 fat-32 中这些隐藏路径会当成是空的。
使用命令 mount [options] source directory 即可。首先需要建立挂载点(即一个文件夹) mkdir /mnt/part1 ,然后将一个分区挂载在这个挂载点上 mount /dev/sda1 /mnt/part1 。使用 df -h 查看挂载情况
当设备关机前,系统会自动卸载挂载的分区,因此手动挂载在下一次开机的时候有需要重新挂载。要实现开机自动挂载磁盘,需要在/etc/fstab文件中添加挂载信息。
命令: umount [options] source | directory
Q2: 树莓派Linux启动过程简介
昨天在写关于linux设置脚本开机启动的文章时,有个疑问就是开机时怎么确认运行级别,然后遍历执行/etc/rcN.d/目录下的所有服务程序。带着疑问, 在前人的基础上 学习总结一下linux系统初始化的工作的内容,现在树莓派4B上展示出来。
1、加载内核
当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。树莓派4B的内核是Raspbian GNU/Linux 10 (buster),基于Debian。
2、初始化进程init
内核文件加载以后,运行第一个程序init,它的作用是初始化系统环境。init位于目录/sbin,进程号PID为1,即1号进程,其他所有进程都由init衍生,是init的子进程。
同时还有个0号进程,idle进程,在系统初始化时由内核kernel自身从无到有创建,通过调用kernel_thread创建一个内核线程去执行init函数,0号进程创建1号进程。
3、运行级别
具体介绍请参考笔者的文章-Linux运行级别简介 ,但是开机时是怎么确定运行级别的呢?
init进程首先读取文件 /etc/inittab,它是运行级别的设置文件。但是各个发行版不太一样,init的配置文件也不一样,有可能使用/etc/event.d里面的配置文件,最新版的改用为/etc/init目录。
4、开机启动程序
具体详情请参考文章-linux中/etc/init.d设置开机启动 ,确定运行级别后,执行rcN.d目录下的文件,这些链接文件是连接到init.d目录下的程序。init进程逐一加载开机启动程序,其实就是运行这个目录里的启动脚本。
比如运行级别为5(图形化多用户)时启动的程序:
5、用户登录
开机启动程序加载完毕以后用户登录。用户的登录方式有三种:
命令行登录:init进程调用getty程序。
ssh登录:init进程调用sshd程序。
图形界面登录:init进程调用显示管理器,Gnome图形界面对应的显示管理器为gdm。
6 、login shell
默认shell时bash,命令行界面,让用户可以直接与操作系统对话。读取环境变量,具体请参考笔者文章-Linux环境变量的设置。
Q3: 树莓派怎么保存文件并退出
vi pathname 是打开或创建一个文件
在命令模式下保存文件:
wq 保存并且退出
w 只保存不退出
q 不保存退出 (只是进来看了一下没改时退出用)
q! 不保存强制退出
wq! 保存并强制退出
树莓派常用命令:
1、sudo raspi-config 初始化配置
2、startx 启动图形化界面
3、sudo rpi-update 升级系统
4、sudo reboot 重启
5、sudo shutdown -h now 立即关机
6、sudo apt-get update 更新软件源
7、sudo apt-get upgrade 更新已经安装的软件
8、sudo apt-get install XX 安装XX软件
9、su root 切换到root用户
10、passwd user 设置user用户的密码
树莓派资源管理命令:
1、top :查看系统的运行情况
2、free -m(-k, -g):查看内存分配情况
3、sudo df -h :查看磁盘使用情况
4、sudo du -sh :查看当前目录下的磁盘使用信息
树莓派进程管理
1、ps :查看系统正在运行的进程
2、ps -ef | less :查看系统所有的进程,包括后台进程。
3、kill -signal PID 对进程做出一定的操作
注:* signal 1 (SIGHUP): hang-up的缩写,该信号通知应用程序重新启动
* signal 3 (SIGQUIT):该信号通知应用程序清理自身资源并退出
* signal 6 (SIGABRT):该信号通知应用程序终止并立即退出
* signal 9 (SIGKILL):该信号立即终止应用程序
* PID :应用程序的进程号,可以通过ps查看
文件管理
1、pwd :显示当前的绝对路径
2、cd :切换路径
3、cd .. :切换到上级目录
4、find :查找文件
注:参数解析
-L :表示启动符号连接跟踪,默认情况下是不会启动的。
-maxdepthnumber: 该选项指定find命令最大的目录查看深度,如果为1的话表示当前目录文件和一级子目 录文件。
-newerfile:表示只查找指定文件的修改时间更新的文件
-empty:表示只查找空文件
-atimenumber :表示只查找距离上次访问指定天数之后的文件
-namefilename:表示搜索完全匹配指定文件名的文件
-execcommand:指示find命令为每个匹配的文件路径执行指定的命令。
Q4: 如何利用树莓派学习Linux及Python
无论是Linux还是Python,其学习过程对于硬件都没什么要求,对于知识的掌握才是核心。
理论上用树莓派学习当然可以,但是鉴于你依然处于初学者水平,特别是Linux相关的不够熟练,还是不太建议你是用树莓派来进行学习。
如你所见,树莓派是一个很需要DIY能力的“玩具”,非常酷炫,但对于入门学习几乎没有什么帮助——特别是对于Python,即使Windows环境也完全不会影响你的学习。
请记住:在未入门之前,应该尽力去降低自己的学习难度,而不是为了好玩或者其他原因,来凭空给自己的学习道路增加许多麻烦。
Q5: 树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
问题:未使用的Pi官方屏幕树莓派linux命令详解,所以使用HDMI屏幕显示的时候树莓派linux命令详解,显示旋转的同时,触摸没有旋转
目的:旋转屏幕显示的同时,使得触摸也跟随旋转
操作总流程:
旋转90度操作
翻转显示:
1.sudo nano /boot/config.txt
2.在文件末尾加入
display_rotate=0
display_rotate=1 //90°
display_rotate=2 //180°
display_rotate=3 //270°
ctrl + o 保存文档 重启即可。
注:以下操作皆为SSH操作,所以每条指令前都加树莓派linux命令详解了DISPLAY=:0,如果本机操作删掉即可。
1.安装xinput
sudo apt-get install xinput
2.列出所有输入设备信息 远程操作时,使用xinput指令需要加入DISPLAY=:0
DISPLAY=:0 xinput --list
3.列出目标设备属性
DISPLAY=:0 xinput --list-props 7
4.旋转触摸的坐标轴
1)所以先交换x、y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axes Swap' 1
2)然后反转y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axis Inversion' 0 1
显示旋转修改之后需要重启。而触摸旋转不需要重启。
详细操作方法:
1.安装xinput
sudo apt-get install xinput
描述:
xinput - utility to configure and test X input devices
xinput-用于配置和测试X输入设备的实用程序
xinput is a utility to list available input devices,
xinput是一个实用程序,可以列出可用的输入设备、
query information about a device and change input device settings.
关于设备的查询信息和更改输入设备设置
2.列出所有输入设备信息
xinput --list
如果远程操作记得在命令前加DISPLAY=:0
得到以下信息:
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=6 [slave pointer (2)]
⎜ ↳ WaveShare WaveShare Touchscreen id=7 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Logitech USB Keyboard id=8 [slave keyboard (3)]
↳ Logitech USB Keyboard id=9 [slave keyboard (3)]
3.列出目标设备属性
由于所使用的触摸屏幕是微雪7寸屏幕,由以上信息可以得到微雪的触摸屏对应的ID为7
所以,接下来看这款输入设备的属性,
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list-props 7
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (115): 1
Coordinate Transformation Matrix (116): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (240): 0
Device Accel Constant Deceleration (241): 1.000000
Device Accel Adaptive Deceleration (242): 1.000000
Device Accel Velocity Scaling (243): 10.000000
Device Product ID (244): 3823, 5
Device Node (245): "/dev/input/event3"
Evdev Axis Inversion (246): 0, 0
Evdev Axis Calibration (247): no items
Evdev Axes Swap (248): 0
Axis Labels (249): "Abs MT Position X" (267), "Abs MT Position Y" (268), "Abs MT Pressure" (269), "None" (0), "None" (0), "None" (0)
Button Labels (250): "Button Unknown" (233), "Button Unknown" (233), "Button Unknown" (233), "Button Wheel Up" (121), "Button Wheel Down" (122)
Evdev Scrolling Distance (251): 0, 0, 0
Evdev Middle Button Emulation (252): 0
Evdev Middle Button Timeout (253): 50
Evdev Third Button Emulation (254): 0
Evdev Third Button Emulation Timeout (255): 1000
Evdev Third Button Emulation Button (256): 3
Evdev Third Button Emulation Threshold (257): 20
Evdev Wheel Emulation (258): 0
Evdev Wheel Emulation Axes (259): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (260): 10
Evdev Wheel Emulation Timeout (261): 200
Evdev Wheel Emulation Button (262): 4
Evdev Drag Lock Buttons (263): 0
这块屏幕正常显示和触摸的信息如上。
如果执行到这一步,发现并没有以上的Evdev等属性项,请跳转第2种方法。
现在需要达到的目的是在屏幕显示反转的同时,使得触摸也随显示翻转。
屏幕显示为翻转90度。/boot/config.txt设置为display_rotate=1
上述信息中Evdev Axis Inversion 项是每条轴的旋转设置项,后面第一个参数是x,第二个参数是y.
Evdev Axes Swap项对应的是两条轴的交换。
0为不翻转,1为翻转
例如。x轴原本是朝向右的,当把Evdev Axis Inversion的第一个参数
设置为1,即x轴朝向左。
4.旋转触摸的坐标轴
现在目的是要触摸旋转90度,从坐标轴理解:
即目的x轴正向为初始y轴的反向。目的y轴的正方向为初始x轴的正向。
1)所以先交换x、y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axes Swap' 1
2)然后反转y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axis Inversion' 0 1
这样即可完成触摸旋转90度。若要旋转其树莓派linux命令详解他角度,推理一下即可。
显示旋转修改之后需要重启。而触摸旋转不需要重启。
第二种方法
如果查询到的信息如下
DISPLAY=:0 xinput --list-props 6
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (114): 1
Coordinate Transformation Matrix (115): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix (246): 0.000000, 1.000000, 0.000000, -1.000000, 0.000000, 1.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (247): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (248): 1, 0
libinput Send Events Mode Enabled (249): 0, 0
libinput Send Events Mode Enabled Default (250): 0, 0
Device Node (251): "/dev/input/event0"
Device Product ID (252): 3823, 5
可以看到该驱动方式采用的是libinput,
查看/usr/share/X11/xorg.conf.d/目录下是否有40-libinput.conf这个文件。
无 则需要安装
sudo apt-get install xserver-xorg-input-libinput
下一步安装完成后ls一下,就可以看到在/usr/share/X11/xorg.conf.d/目录下存在该文件,
下一步复制该文件到/etc/X11/xorg.conf.d/目录下。
一开始xorg.conf.d这个目录在/etc/X11可能没有,需要自己创建。
sudo mkdir xorg.conf.d
下一步复制到xorg.conf.d 目录下即可。
sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
下一步进入/etc/X11/xorg.conf.d/目录下修改40-libinput.conf 文件
cd /etc/X11/xorg.conf.d/
sudo nano 40-libinput.conf
找到touchscreen section
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
添加一行 Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
结果为
Section "InputClass"
Identifier "libinput touchscreen catchall"
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
然后重启生效
这样的修改也是同样修改为翻转90度,如果需要修改为其树莓派linux命令详解他角度,请参考libinput的算法
树莓派linux命令详解的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于树莓派开始玩转linux、树莓派linux命令详解的信息别忘了在本站进行查找喔。







