初识Linux
linux的诞生
linux诞生于上世纪90年代, linux内核的创始人Linus Torvalds以一个名为Minix的类Unix系统为基本开发了Linux内核第一版. 但是关凭一个内核做不了什么, 还需要一系列让操作系统完整的其他软件. GNU Project 就与 Linux 除了内核外的大部分重要软件的诞生密切相关。两者一结合就诞生了Linux操作系统, 即GNU/Linux.
Linux遵循GNU通用许可证(General Public License), 任何人都可以在遵循协议的前提下, 定制自己的linux发行版. 发行版之间可能会存在较大差异, 这些差异主要体现在各自的程序包不同, 安全性和可用性等方面的侧重点也不同. 注意自由软件并不是不能收费, 这里的自由是使用权利的自由. 并不一定是免费软件.
Linux的组成及内核版本命名规则
一个完整的Linux操作系统由4部分组成, 即内核(kernel), 外壳(shell), 实用程序(Utillities)和应用程序(applications).
各个部分的功能
- 内核(Kernal) : 实现操作系统的基本功能, 包括控制硬件设备, 提供硬件接口, 处理I/O, 管理文件, 为程序分配内存和CPU等.
- 外壳(Shell) : 提供用户与Linux内核的交互接口.
- 实用工具 : 用于系统日常操作和管理的一些程序.
- 应用程序: 为用户提供丰富功能的第三方程序.
内核版本的命名规则
自3.0后的版本, 版本号的格式为3.A.B, 其中A代表内核版本号(奇数代表非稳定版本, 偶数代表稳定版本), B代表安全补丁号.
如何和linux打交道
可以使用shell与linux打交道, Linux提供了两种”壳“, 一种是命令行式的shell, 另一种是图形界面. 建议习惯命令行式的shell, 这是通向Linux高手的必由之路.
命令行shell的简介
centos默认的shell叫做Bash. Bash也是绝大多数Linux所使用的shell.
打开shell终端后, 终端上提示符所包含的信息(下图是提示符)
我们从后往前看, **$符合代表这是普通用户, root用户这里是#**号; ~ 代表的是该用户的家目录;
@后面的字符代表主机名, @前面的字符代表当前登陆用户的用户名.
linux命令的用法规则
- Linux中所谓的命令, 本质就是一个与命令同名的可执行的二进制文件或shell脚本.
- Linux的命令区分大小写.
- 命令,选项, 参数之间用空格分割, 不论多少格, shell都视为一格.
小试牛刀
- whoami 命令 : 显示当前登陆用户的用户名
-
echo 命令 : 打印字符串
- 不带选项
- 带 ’ -n ‘ 选项 : 显示字符串不换行.
- 带 ’ -e ‘ 选项 : 可输出转义字符.
-
nano 命令 : nano是一个文本编辑工具
打开nano, 输入一段文字后, 使用ctrl+o保存, 需填入文件名. 显示“已写入XX行”表示保存成功.
使用man查看命令的帮助文档
man命令是最常用的帮助文档命令, man是manual的缩写. 使用 man + 命令名 查看命令的具体信息.
man 命令可以后跟一个数字来表示要查阅的用户手册 。若不加数字, 那 man 命令默认从数字较小的手册中寻找相内容.
在帮助文档中查找:
-
/string 向下搜寻 string 这个字符串
-
?string 向上搜寻 string 这个字符串
-
n, N利用 / 或 ? 来搜寻字符串时,可以用 n 来跳转至下一个匹配
处 ,可以利用 N 来跳转至上一个匹配处 。
-
[q] 退出
基本的关机重启
shutdown命令
用法: shutdown [选项] 时间 [警告消息]
时间的格式:
-
shutdown + hh:mm 格式表示在几点几分执行 shutdown 命令.
-
shutdown + m 表示 m 分钟后执行 shutdown命令.
-
now 是一个特殊的时间.
shutdown常用选项:
-
-c : 取消前一个shutdown命令
-
-h : 关闭所有服务后直接关机
-
-r : 重启
建议使用shutdown命令来关机. 因为它会正常终止正在运行的服务.
对于工作环境下的 Linux 主机尤其是提供敏感或者要害服务的主机来说,关机是系统管理员要给予充分重视的一件大事:不恰当或者不正确的关机和重启,轻则可能造成服务中断;重则文件系统损毁、数据丢失或者出错,导致不可挽回的后果。