计算机由运算器,控制器,存储器,输入输出设备组成,那么内核就是一种能让各种硬件各司其职并且又能互相协作完成一些任务。而linux的系统内核就有以下功能:
- 对硬件资源的分配
- 调度等管理任务
而一般我们的正常使用,工作是不会去直接去编辑内核的参数,而是利用系统调用接口开发的程序或服务来管理计算机,满足自己需求。
在这里,就有了学习linux的一些思想,往往我们都是通过图形化界面进行管理,操作计算机,但是其实是调用了脚本来完成相应的工作,所以图形化的操作方式必然失去了linux命令原有的灵活性以及可控性。再者,图形化的服务必然更加消耗系统资源,因此,在学习linux开始,就需要慢慢将过去的图形化操作的思维转换到命令行操作上。
那么shell就是这样的一个命令行工具,shell也成为终端或壳,简单理解shell就是一个介于用户与内核之间的翻译官,很明显,用户输入命令告诉shell,shell就会调用相应的程序服务去完成特定的工作。
在RHEL 7 中,主流linux系统选择bash解释器作为命令行终端:它有以下好处: - 通过上下方向键来调取过往执行过的 Linux 命令;
- 命令或参数仅需输入前几位就可以用 Tab 键补全;
- 具有强大的批处理脚本;
- 具有实用的环境变量功能
Linux命令介绍
Linux命令一般格式是:
命令名称 【命令参数】 【命令对象】
举个例子:狠狠的打人 打是命令,狠狠是参数 对象就是人
命令对象一般是文件,目录等,而命令参数有长格式与短格式两种,所谓的长短就在于长格式就是完整的选项名称,段格式就是单个字母的缩写。
长格式: man –help
短格式: man -h
在日常学习中,遇到了一个不熟悉的 Linux 命令,又怎样才能知道它有哪些可用参数呢?
一般推荐查询man手册
回车执行命令:
在这里有一些命令是查看文档的,这在以后也会经常使用,比如空格键就是向下翻一页,UP,DOWN就是向上向下翻一页。Home直接到达首页,end直接到达尾页,q退出等。
而最重要的就是搜索文档的命令
/ 从上至下搜索某个关键词
?从下至上搜索某个关键词
Man手册的结构:
比如这里man ls这条命令,就会出现cat的基本用法与参数解释
一些简单的命令:
修改主机名:
查看当前工作目录print work directory
切换用户 switch user
发现root切普通用户是不需要密码的,而普通用户想切换回root,是需要密码的。
切换目录 change-directory
绝对路径
相对路径
直接回到当前用户主目录
可以发现root用户主目录在/root,而普通用户redhat的主目录是在/home/redhat
回到当前目录的上一级目录:
回到当前目录:cd .
切换到之前的目录:
修改密码
passwd 用户名 直接输入passwd修改当前用户的密码
删除密码:passwd -d 用户名
root用户:不需要输入原密码,可以不符合密码复杂性规则,可以给任何人修改密码
普通用户:需要输入原密码,必须符合密码复杂性规则,passwd修改密码无法指定用户
那么普通用户能不能给root改密码呢?肯定是可以的
Su是直接切换到root用户的
查看当前linux发行版本信息
3.10.0-327.el7.x86_64 主版本号 . 子版本号 [ 修正版本号 [. 编译版本号 ]]
3主版本号
10次版本号,一般偶数表示较稳定版本
0修订版本号
327.el7 表示修改了327次