找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 3978|回复: 2

【EV3与物联网系列教程】05初识Linux操作系统

[复制链接]
发表于 2022-12-1 20:08:00 | 显示全部楼层 |阅读模式
本帖最后由 蒙德·究史尼 于 2022-12-1 20:09 编辑

上一篇:https://bbs.cmnxt.com/forum.php?mod=viewthread&tid=65462




这一篇讲的是对EV3DEV的核心——Linux操作系统的初步介绍


初识Linux操作系统

命令行
很多人可能在电视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完成了窃取资料的任务。对初次接触Linux操作系统的人来说,看到这样的界面可能会感到不知所措。因为它就如同电视里的黑客那样,充满了神秘感。
Linux操作系统刚诞生时没有什么图形界面,所有的操作全靠命令完成。虽然近几年Linux操作系统已经有了很完善的图形化操作界面,但是EV3的CPU性能不足以运行完整的图形化界面,所以我们只能使用命令行。
在开发过程中,Linux操作系统的很多操作必须在命令行里完成。命令行是以“输入命令——按回车执行”的方式来操作的。命令行操作需要背很多命令,学习的时候最好记笔记。不需要死记硬背,对于常用命令,用的多了,自然就记住了。不要尝试一次学会所有的命令,有些命令是非常不常用的,临时遇到,临时百度就可以。

文件系统
如果你是第一次接触Linux操作系统的话,有必要先了解一下Linux操作系统的文件系统的概念,它与Windows操作系统区别较大。
在Windows操作系统中,打开“计算机”,看到的是一个个的驱动器盘符,如C盘、D盘、E盘等。
在Linux操作系统中,没有驱动器盘符这个概念,只有目录。Linux操作系统的文件系统也叫“根文件系统”,所有的文件夹属于根目录之下,根目录用一个正斜杠“/”表示。Linux操作系统里所有的东西(程序、文档、硬件等)都被抽象成文件,可以直接通过操作文件的形式来操作硬件。如果你用过安卓系统的手机并且玩过“刷机”的话,这些概念应该不会让你感到陌生。
1.png
                              

常用目录
  
/
  
根目录,一般根目录下只存放目录(文件夹),在Linux下有且只有一个根目录,所有的东西都是从这里开始的
  
/home
  
用户目录,用户的文件都在这个文件夹里,比如用户名为robot的用户文件夹是/home/robot
  
/bin
  
系统程序目录,常用的系统程序在这个文件夹里,例如复制、剪切、关机等
  
/root
  
系统管理员root账户的用户目录
  
/etc
  
软件的设置文件存放的目录,例如名为“apt”的软件包管理器的设置文件存放目录是/etc/apt
  
/media
  
便携式移动设备挂载点目录,插入U盘以后,U盘会作为一个“文件”出现在这个文件夹里

常用命令
Linux操作系统的命令格式是“程序名 参数1 参数2……”,参数可以没有也可以有很多,中间用一个空格隔开。
大部分参数是用短横杠开头的,例如-rf,也有一些程序的参数用两个短横杠开头,例如--version。
在大多数情况下,使用文件名作为参数的时候,既可以使用绝对路径,例如/home/robot/test01/123.txt,也可以使用相对路径,例如test01/123.txt。
在Windows操作系统中,大小写的区分不严格,例如mkdir和MKDIR是等效的。但是,在Linux操作系统里,大小写区分很严格,mkdir命令可以正常运行,但是MKDIR命令就会遇到错误,报错提示是找不到这个命令。
  
命令
  
作用
举例
  
ls
  
查看当前文件夹下的内容
  
pwd
  
查看当前所在文件夹(目录)
  
cd [目录名]
  
切换文件夹(目录)
cd /home/robot
  
mkdir [目录名]
  
创建文件夹(目录)
mkdir test01
  
rm [文件名]
  
删除指定的文件名
rm 123.txt
  
rm –rf [目录名]
  
删除指定的文件夹(目录)
rm -rf  /home/robot/test01
  
sudo [需要提权的命令]
  
以管理员权限运行
sudo cp /etc/apt/sources.list  /etc/apt/sources.list.bak
  
clear
  
清屏
  
cat [文件名]
  
查看文本文件内容
cat 123.txt
  
cp [原文件位置] [新文件位置]
  
复制文件
cp /home/robot/123.txt  /home/robot/test01/123.txt
  
mv [原文件位置] [新文件位置]
  
移动文件
mv /home/robot/123.txt  /home/robot/test01/123.txt
  
nano [文件名]
  
简单易用的文本编辑器
nano 123.txt
  
apt [参数]
  
Debian的软件包管理器
apt search python3
  
python3 [文件名]
  
用python3运行.py程序
python3 test.py
  
micropython [文件名]
  
用micropython运行.py程序
micropython test.py
  
top
  
任务管理器
  
df
  
查看剩余存储空间
df -h
  
chmod [权限] [文件名]
  
更改文件权限
chmod 777 test.py

权限
Linux操作系统上对文件的权限有着严格的控制,如果想对某个文件执行某种操作,必须具有对应的权限方可执行成功。
Linux初学者不需要一下子学那么多权限方面的知识,只要知道最基本的就可以了。
/home/robot文件夹是EV3DEV固件的默认用户robot的用户文件夹。用robot用户名登录的时候,我们对这个文件夹有完全的操作权限。所以各种程序代码文件、图片、文本、音频等都存在这个文件夹或它的子文件夹中。
除此之外的大部分文件夹,我们的robot账户都是没有权限修改的(只能读取不能写入),比如/etc、/bin、/usr文件夹。要想修改这个文件夹里的内容的话,就需要“提权”,也就是提高权限。Linux操作系统里的最高权限的账户是root,没错,跟安卓系统里的root是同一个东西。root是Linux操作系统里的“管理员”账户。通常情况下,root账户有权修改任何文件和文件夹。提高权限就是把当前账户的权限提高到root账户的权限。
Linux操作系统中最常使用sudo命令来提权。sudo的意思就是“用管理员(root)的权限运行”。sudo的提权是临时的,只对sudo后面跟的那一条命令有效。例如:
  1. sudo nano /etc/apt/sources.list
复制代码
这个命令的意思是“用管理员(root)权限启动nano文本编辑器,编辑/etc/apt/sources.list文件”。输入这个命令并按回车执行之后,屏幕上会提示你输入当前用户的密码,密码就是robot账户的密码maker


如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
 楼主| 发表于 2022-12-2 12:11:44 | 显示全部楼层
这段内容比较难。给学生上课的时候可以先跳过这一段,先上实际操作。等学生熟悉了以后再讲这个。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2022-12-5 17:03:59 | 显示全部楼层
这个能干倒一大批了
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2024-11-22 11:56 , Processed in 0.088055 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表