【Linux】Rhcsa复习4

一、命令解释器 shell

1.1 什么是shell

shell:壳,命令解释器,负责解析用户输入的命令。命令分两类:
内置命令 (shell内置)shell为了完成自我管理和基本的管理,不同的shell内置不同的命令,但是大部分都差不多
外置命令,在文件系统的某个目录下,有个与命令名称相同的文件
type 命令查看命令是filealias还是builtin
type -a 列出当前命令可以如何执行
type -t 仅列出命令按照哪种方式执行
shell如何知道命令的可执行文件在哪个路径下呢?系统为了让用户在命令行快速方便地执行命令,将可执行文件
的路径存储在环境变量PATH中。
在众多环境变量里面有一个环境变量叫做PATH,当用户每次执行外部命令的时候都会去该变量所记录的路径下搜索
和命令同名的二进制文件,如果有则执行该二进制文件,如果没有则提示命令找不到。

1.2 Linux中的特殊符号

1.;    可使用分号分隔多条命令 ,在一行上输入和执行多条较短的命令,可使用分号来分隔命
2.*   匹配任意零个或者多个字符,但是不能用于创建文件
3.?   匹配任意单个字符 ,但不能用于创建文件
4.[]   匹配方括号中的任意一个字符,表示范围可以用"-” ,也不能用于创建文件
5.[^] 匹配方括号中的任意一个字符或数字后进行取反 ,用于查找和删除文件,不用于创建文件
6.{string,string} 匹配括号中的任意一个字符串,表示一个范围时,字符串之间个".." ,可用于创建、查看、删除文件
7.\  使\后面的特殊字符失效 例如:可以在命令行后面加一个\,再按回车键时并不表示执行该命令,而是表示换行,通过此方式将一个较长的命令分成多行表达,增强命令的可读性。换行后系统自动显示提示符 >
8.` 反引号,一般用于引用命令,执行的时候反引号里面的命令会被执行,与$() 作用相同
9.' 单引号,将单引号内的所有内容都原样输出,所有特殊字符在单引号里面都会失去特殊含义
10." 双引号,除了几个特殊字 符外,将双引号内的几乎所有内容都原样输出,$\以及 ` 在双引号里面仍然保留自己的特殊含义

1.3命令别名

别名是命令的快捷方式,对于需要经常执行,并且需要很长时间输入的长命令创捷快捷方式很有用

语法:alias 别名=‘原命令 【选项】...【参数】...’

查看设置的别名

删除别名 unalias 别名

1.4命令历史

history命令可以查询命令的历史纪录,也可以在命令行利用向上或向下光标键进行查询

history 【选项】【参数】

选项:

number:显示最近number条命令历史
-c:清空当前历史命令
-a [file]:后面没跟文件时,默认将缓冲区中历史命令写入~/.bash_history
-r [file]:将历史命令文件中的命令读入当前历史命令缓冲区中
-w:将当前历史命令缓冲区命令写入历史命令文件中
例:
命令行里的其他快捷键:
ctrl+d 输入已结束;也可当做exit
ctrl+c 键盘中断请求,终止当前的命令
Ctrl+a 移动到当前行的开头
Ctrl+e 移动到当前行的结尾
Ctrl+l 清屏==clear
Ctrl+u 剪切命令行中光标所在处之前的所有字符(不包括自身)
Ctrl+k 剪切命令行中光标所在处之后的所有字符(包括自身)
ctrl+←/→ 光标在命令行中按照单词跳转

二、用户和组管理

2.1Linux中用户和组的分类

1、Linux下的用户可分为三类:
超级用户:root,具有一切权限,只进行系统维护或其他必要情形下才用超级用户登录,避免系统出现安全问题
系统用户:是Linux系统正常工作必需的用户,主要是为了满足相应的系统进程对文件属主的要求而建立的,例如:bin、daemon、adm、lp等用户,系统用户不能用来登录

普通用户:为了让使用者能够使用Linux系统资源建立的

2、Linux中的组有以下两类:

基本组(私有组):建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是基本组。
附加组(公有组):可以容纳多个用户,组中的用户都具有组所拥有的权利。
3、Linux中用户和用户组的配置文件
用户账号文件          /etc/passwd
用户密码文件          /etc/shadow
用户组账号文件      /etc/group
用户组密码文件      /etc/gshadow

2.2用户管理

1、添加新用户

命令格式 useradd 【选项】 用户名

常用选项:

-c 注释信息——设定与用户相关的说明信息(,真实姓名、邮箱地址等)
-d 目录——设定用户的家目录(默认为/home/用户名)
-e YYYY-MM-DD——设置用户的失效日期,此日期后将不能使用该账号。
-f 天数——指定密码到期后多少天账号被禁用,若指定为0,则表示账号到期后被立即禁用;若指定 为-1,则表示账号过期后不被禁用(即密码永不过期)
-g 组名或GID——为用户指定所属的基本组,该组在指定时必须已存在。
-G 组名或GID号列表——为用户指定所属的附加组,各组在指定时已存在,附加组可以有多个,组 之间用“,”分隔。
-M——不创建用户家目录。
-N——不创建与用户名同名的基本组。
-p 密码——指定用户的登录密码。
-s shell——指定用户登录后使用的Shell,默认是bash
-u 用户号——设置账号的UID,默认是已有用户的最大UID1。如果同时有-o选项,则可以重复使用其他用户的标识号。

示例:

2.2.1修改用户信息

命令格式:usermod 【选项】 用户名

常用的选项包括 -c,-d,-m,-g,-G,-s,-u 等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。另外,还可以使用如下选项: -l 新用户名——更改账户的名称,必须在该用户未登录的情况下才能使用。 -L——锁定(暂停)用户账户,使其不能登录使用。 -U——解锁用户账户。

2.2.2 为用户设置密码

命令格式:passwd 【用户名】

常用选项:
-d——清空指定用户的口令。这与未设置口令的账户不同,未设置口令的账户无法登录系统,而口令为空的账户可
以。
-e——使用户的账号密码立即过期,强迫用户下次登录时必须修改口令。
-i——口令过期后多少天停用账户。
-l——锁定(停用)用户账户。
-n——指定口令的最短存活期。
-x——指定密码的最长使用期限。
-u——解锁用户账户。
例:

2.2.3删除用户账号

格式:userdel -r 用户名

2.2.4用户间切换

命令格式 su【用户名】

2.2.5控制用户对系统命令的使用权限

用sudo 命令可以提高普通用户的操作权限,但这个权限需要root用户进行配置/etc/sudoers文件才可以使用

2.3用户组管理

1、创建用户组

格式:groupadd -r 用户组名称

常用选项:

-g GID——指定新用户组的组标识号(GID),默认值是已有的最大的GID加1。 -r——建立一个系统组账号,与-g 不同时使用时,则分配一个1~999的GID。

2、修改用户组属性

命令格式:groupmod 选项 用户组

常用选项: -g GID——为用户组指定新的组标识号。 -n 新用户组——将用户组的名字改为新名字修改用户组的名称和用户组的GID值。

3、添加/删除组成员

格式:gpasswd 选项 用户 组

只有root用户和组管理员才能够使用该命令

4、删除组账户

格式:groupdel 用户组名

2.4查询用户和组信息

2.5 查看用户登陆系统的情况

1、users,查看当前登录系统的用户

2、last:列出目前与过去登入系统的用户相关信息,该命令会默认去读取/var/log/wtmp文件,并把该文件记录的登入系统的用户名单全部显示出来。

3、如果想知道每个账户最近的登陆时间,可使用lstlog查看,该命令会读取/var/log/lastlog文件

4、w:显示目前登录到系统的用户信息

5、who:显示目前登录到系统的用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值