内容来自实验楼
查看设备信息
系统信息
Linux uname 命令可以打印正在运行的操作系统的一些信息。
常见的参数有:
-aor--all:显示全部的信息-m:显示硬件类型-n:显示网络节点的主机名-o:显示操作系统的名称-s:默认选项,打印内核名称-r:打印内核版本
简单示例,查看全部信息:
1 | $ uname -a |
内容来自实验楼
Linux uname 命令可以打印正在运行的操作系统的一些信息。
常见的参数有:
-a or --all :显示全部的信息-m :显示硬件类型-n :显示网络节点的主机名-o :显示操作系统的名称-s :默认选项,打印内核名称-r :打印内核版本简单示例,查看全部信息:
1 | $ uname -a |
内容来自实验楼
对于 Linux 内核中的标准 I/O 库 stdio 提供了一个高效的缓存 I/O 流接口。
一般情况下,每个程序在启动时都会有三个 stream(流)在启动时被预定义,一个用于输入,一个用于输出,还有一个用于打印诊断或者错误信息。
对于 linux 系统中来说,读取标准输入和打印标准输出的地方默认情况下都是所使用的终端。对应 shell 中常使用的三种标准 I/O 流:
stdinstdoutstderr内容来自实验楼
对于从普通模式切换到插入模式下,除了使用 i 命令,我们还有一些其它的实现方式。
| 命令 | 说明 |
|---|---|
i |
在当前光标处进行编辑 |
I |
在行首插入 |
A |
在行末插入 |
a |
在光标后插入编辑 |
o |
在当前行后插入一个新行 |
O |
在当前行前插入一个新行 |
需要注意的是每次要先回到普通模式才能切换成以不同的方式进入插入模式
对于从普通模式到命令行模式的切换,只需要在普通模式下输入 : 冒号,或者 / 或 ? ,在编辑器界面的最后一行(不是文本内容的最后一行),就会出现一个输入的冒号或/ 或 ?,在此,我们可以输入一些命令,例如下图所示,我们在标准模式下输入:
1 | :set number |
通过输入回车键 `` ,执行该命令后,会显示文本内容的行号
内容来自实验楼
find 命令用于在目录下查找文件,并且会打印所找到文件的有关信息,find 的使用情况如下所示:
1 | find [path...] [expression] |
这里的 [expression] 由下面四种类型组成:
options 配置项
影响整体的操作
tests 测试项
返回一个 true 或 false 值,这些取决于文件的属性
actions 操作项
根据对应的操作,
operators 运算符
连接其它的参数。
例如下面的这个例子,查找 /etc 目录下,文件大小大于 100k 的文件
1 | $ sudo find /etc/ -size +100k |
这里需要说明的是,对于数值参数,可以指定为:
+n 大于 n-n 小于 nn 等于 n内容来自实验楼
Linux 文件系统作为一个系统不仅包含了文件中的数据而且还有文件系统的这样的结构。且文件系统中的文件是数据的一个集合,所有 Linux 用户和程序看到的
文件、目录、软连接及文件保护信息等都存储在其中。Linux 主要采用的是树形结构,与 windows 不同(每个分区都是一棵文件树,根节点为盘符),它是单一的一棵树,无论有多少分区,都包含在以
/为根节点的树结构上。其中分区是物理上的区分,目录则是逻辑上的区分。Linux 中每个分区都要挂载到目录树中一个具体的目录下才能访问,其中根目录必须挂载一个分区。 对于挂载就是 Linux 文件系统与一个存储设备关联起来的过程(后面会着重介绍)。 因为 Linux 是一个多用户系统,一个规范的目录有助于对系统文件和不同的用户文件进行统一管理。
内容来自实验楼
用户概念
用户
因为 Linux 是个
多用户多任务的分时操作系统,想要调用系统资源必须先向系统管理员申请一个账号,通过用户身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,为用户提供安全性保护。每个账号都拥有一个唯一的用户名和用户密码。用户在登录时键入正确的用户名和密码后,才能进入系统和自己的主目录。
用户组
用户组是具有相同特征的用户的逻辑集合。有时需要让多个用户具有相同的权限,比如查看、修改某一个文件的权限,一种方法是逐一对多个用户进行文件访问授权;另一种方法是建立一个组,让这个组具有查看、修改此文件的权限,然后将所有需要访问此文件的用户放入这个组中,那么所有该组用户就具有了和组一样的权限。这就是用户组,将用户分组是 Linux 系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,在很大程度上简化了管理工作。
用户信息文件(/etc/passwd)
用户信息是被保存在 /etc/passwd 文件中,可以通过 cat /etc/passwd 来查看文件的内容:
文件中每行记录用冒号 : 分隔为 7 个字段,从左到右具体含义是:
用户名:密码占位符(x 表示用户需要密码登录):用户标识号(
UID):组标识号(GID):注释性描述:主目录:登录的shell
密码文件(/etc/shadow)
用户信息文件中的密码信息是被单独保存在 /etc/shadow 文件中,文件格式和用户信息类似,通过 cat /etc/shadow 命令来查看:
1 | $ sudo cat /etc/shadow |
文件中每行记录用冒号 : 分隔为 9 个字段,从左到右具体含义是:
用户名:加密口令:最后一次修改时间:密码最短有效天数:密码最长有效天数:密码过期前的警告时间:不活动时间:用户失效时间:暂时保留未使用
在上面的命令中,我们使用了 sudo,因为对于 /etc/shadow 文件来说,当前的用户 shiyanlou 是没有权限去读取该文件的,所以我们需要使用 sudo 工具。
用户组文件(/etc/group)
Linux 系统对用户组的所有信息被保留在 /etc/group 文件中, 同样通过 cat /etc/group 命令来查看。
文件中每行记录用冒号 : 分隔为 4 个字段,从左到右具体含义是:
组名:口令:组标识号(
GID):组内用户列表(多用户可用逗号分隔开)
内容来自实验楼
| 快捷键 | 说明 |
|---|---|
Ctrl+c |
中断操作 |
Ctrl+d |
键盘输入结束或退出终端 |
Ctrl+s |
暂停当前程序,暂停后按下任意键恢复运行 |
Ctrl+a |
将光标移动到命令行首 |
Ctrl+e |
将光标移动到命令行尾 |
Ctrl+l |
清屏 |
Ctrl+shift+N |
新建终端窗口(在实验环境中,此命令可能与浏览器快捷键冲突) |
知识点