3.4权限管理命令
有哪些权限
- r:读权限【read】,可以执行类似于cat命令去读取文件的内容
- w:写权限【write】,可以向文件中写入内容
- x:执行权限【excute】,可以执行文件中的指令
用户对象
- 属主用户:这个文件的主人,这个文件属于谁
- 属组用户:这个文件的组
- 其他用户:不是这个文件的属主,也不是这个文件的属组
字母表示方式
- u:表示属主用户
- g:表示属组用户
- o:表示其他用户
- a:表示所有用户
操作权限的方法
+ 表示添加权限,例如给用户添加读权限: + r
– 表示去除权限
= 表示将权限修改为指定的权限,例如将用户的权限修改为 可读可写, = rw
修改权限
- 命令:chmod
- 格式:chmod 用户 操作符 权限 文件
案例:
#1 将文件的a.txt的属主权限修改可读可写
chmod u=rw a.txt
#2 将文件a.txt的其他用户权限修改为可读可执行
chmod o=rx a.txt
#3 将文件a.txt的属组用户权限修改为可读可写可执行
chmod g=rwx a.txt
#4 将文件a.txt的属组用户权限修改为没有任何权限
chmod g= a.txt
#5 将文件a.txt的属组用户权限删除掉执行权限
chmod g-x a.txt
#6 将文件a.txt的属组用户权限删除掉执行权限,属主权限添加上读权限、其他用户设置为没有任何权限
chmod g-x,u+r,o= a.txt
#7 将文件a.txt所有用户的执行权限都去除掉
chmod a-x a.txt
chmod uog-x a.txt
#8 将文件a.txt所有用户的权限丢设置为可读可写
chmod a=rw a.txt
#9 将文件a.txt所有用户的所有权限都去除掉
chmod a= a.txt
查看权限
[root@localhost ~]# ls -l
-rw——-. 1 root root 1747 4月 22 22:40 anaconda-ks.cfg
第一部分 第二部分 第三部分 第四部分 第五部分 第六部分 第七部分
解释
第一部分:表示的是权限
第二部分:表示文件的链接数[不知道也行]
第三部分:表示文件的属主的用户名
第四部分:表示文件的属组的组名
第五部分:表示这个文件的大小,默认是以字节为单位来显示
第六部分:表示文件的创建时间或者最近一次修改时间
第七部分:表示文件名
ls执行结果中权限的表示方法
rw- –x —
权限一共有9个位置
前三位:表示的是属主具有的权限
中间三位:表示的是属组具有的权限
最后三位:表示其他用户具有的权限
注意:每一组权限,顺序都是 读写执行,如果有对应的权限,就显示字母,如果没有权限,就显示-
权限的数字表示方式
# 各种权限的数值
- r 4
- w 2
- x 1
- – 0
# 用数字表示一类用户的权限:
- 0: —
- 1: –x
- 2: -w-
- 3: -wx
- 4: r–
- 5: r-x
- 6: rw-
- 7: rwx
3.5管理服务的命令
启动服务
- 格式:systemctl start 服务名
重启服务
- 格式:systemctl restart 服务名
关闭服务
- 格式:systemctl stop 服务名
服务开机自动启动
- 格式:systemctl enable 服务名
服务开机自动关闭
- 格式:systemctl disable 服务名
查看服务的状态
- 格式:systemctl status 服务名
总结:操作类型有
- start
- stop
- restart
- enable
- disable
案例:
#1 查看crond服务的状态
[root@localhost ~]# systemctl status crond
● crond.service – Command Scheduler Loaded: loaded (/usr/libystem/crond.service; enabled; vendor preset: enabled) Active: active (running) since 一 2022-04-25 17:01:50 CST; 52min ago
#2 启动crond服务
[root@localhost ~]# systemctl start crond
#3 查看crond服务的状态
[root@localhost ~]# systemctl status crond
#4 设置crond服务开机自动启动
[root@localhost ~]# systemctl enable crond
#5 查看crond服务的状态
[root@localhost ~]# systemctl status crond
#6 设置crond服务开机的时候自动关闭
[root@localhost ~]# systemctl disable crond
#7 关闭crond服务
[root@localhost ~]# systemctl stop crond
#8 查看crond服务的状态
[root@localhost ~]# systemctl status crond
vi有三种工作模式
- 输入模式
- 末行模式
准备一个测试的文件
- 测试的时候,一定不用修改原始文件,而是要将文件复制过来,然后对复制的文件进行操作
[root@localhost ~]# cp /etc/init.d/functions ./
[root@localhost ~]# vi functions
- 这是默认模式,也就是打开以后就是这个模式
- 可以执行复制行、删除行、跳转光标
yy:复制光标所在的行
dd:剪切/删除光标所在的行
p:将复制/剪切的内容粘贴出来
dG:删除光所在行,到文件末尾的全部内容
D:删除光所在的位置到行尾的内容
u:撤销操作
/内容:搜索内容
n:继续向后进行搜索
末行模式下的操作
- 保存:w
- 退出:q,在没有进行任何修改的情况下,才可以直接退出
- 保存退出:wq
- 强制执行:!
- 强制保存退出:wq!
- 强制不保存退出:q!在对文件进行了修改之后,可以这样退出【不会保存修改的内容】
- 显示行 :set nu
- 不显示行 :set nonu
注意:
- 用vi可以打开现有的文件,打开后,可以看到文件中的内容
- 用vi也可以创建新文件,创建后会自动打开,打开后会看到空白的内容
3.7 络管理命令
- 查看Linux的ip地址
- 测试 络是否通
- 检查linux是否开启了指定的端口
查看ip地址的命令
- ifconfig:在centos7中,可能会未安装这个命令
- ip addr:
案例:配置Linux的IP地址,实现可以和物理机通信
规划
1)虚拟机的ip配置成192.168.31.200
2)虚拟机链接物理机的vmnet8
3)配置vmnet8的地址,需要和虚拟机在同一个 段
第一步:检查ip地址
[root@localhost ~]# ip addr
结果说明
- 卡的名是ens33
- 目前还没有IP地址
第二步:修改配置文件
ens33的 卡配置文件名:/etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# ls
[root@localhost network-scripts]# vi ifcfg-ens33
文件的初始内容
需要修改两行内容
- 1)BOOTPROTO=dhcp 修改为 BOOTPROTO=static 将获取IP的方式修改为手动设置
- 2)ONBOOT=no 修改为 ONBOOT=yes 设置 卡自动激活
再添加两行内容
- 1)IPADDR=192.168.31.200
- 2)NETMASK=255.255.255.0
修改后的内容
第三步:重启 络服务
络服务的服务名:network
[root@localhost network-scripts]# systemctl restart network
第四步:检查ip地址
查看IP地址是否配置成功
注意:
- 我们仅仅需要看ens33的地址信息
- 只要有我们配置的那个地址,就说明配置成功了
第五步:修改 络链接
将虚拟机的直接链接到vmnet8上
第六步:修改vmnet8地址
注意:
- 1)将物理机的vmnet8的地址修改成和linux的IP在同一个 段就可以了
- 2)vmnet8的地址,不能和linux的相同
- 3)这里,我将我的vmnet8的地址修改为192.168.31.244
- 4)如果出现无法打开 卡,再dos中可以执行命令: netsh interface ipv4 install
第七步:检查 络是否正常
- 用ping命令可以检查
- ping的格式:ping 对方的IP
# 测试Linux是否可以 ping通 物理机
[root@localhost network-scripts]# ping 192.168.31.244
PING 192.168.31.244 (192.168.31.244) 56(84) bytes of data.
64 bytes from 192.168.31.244: icmp_seq=1 ttl=128 time=0.344 ms
64 bytes from 192.168.31.244: icmp_seq=2 ttl=128 time=0.332 ms
64 bytes from 192.168.31.244: icmp_seq=3 ttl=128 time=0.299 ms
按 ctrl+c 可以停止ping
四、安装卸载软件
4.1 安装类别
Linux安装软件有三种方式
- yum安装【要求】
- 编译安装
- 通用二进制格式安装
Linux的软件包
- linux软件包的后缀是.rpm
- 系统光盘中有软件包
- 在阿里、华为、清华的镜像站中
- 以案例为例:https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/
4.2 yum安装
用yum安装软件分三步
- 第一步:准备一个软件源。软件源其实就是一个目录,在这个目录中有很多的rpm包
- 第二步:创建yum的配置文件,文件需要指向到软件源。
- 第三步:用yum进行安装/卸载软件
第一步:配置软件源
1)首选将系统镜像文件挂载到linux中
安装系统的时候,那个后缀是iso的文件,就是系统镜像文件
# 将光盘挂载到mnt下
#/dev/cdrom 这个是光盘
#/mnt 这就是Linux的一个目录,这个目录是作为外部设备的挂载点来使用的
[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
# 检查挂载点
# 只要挂载点下面有内容,就说明挂载成功了
[root@localhost ~]# ls /mnt/
第二步:修改配置文件
关于yum的配置文件
1)yum的配置文件路径:/etc/yum.repos.d
2)yum的配置文件名:配置文件名不是固定的,而是有一个统一的后缀,.repo
3)yum的默认配置文件,都是无效的,建议删除原有的所有配置文件
# 切换到yum的配置文件路径下
[root@localhost ~]# cd /etc/yum.repos.d/
# 删除原有的配置文件
[root@localhost yum.repos.d]# rm -rf *repo
# 检查是否还有配置文件,如果为空就正常了
[root@localhost yum.repos.d]# ls
# 创建一个新的配置文件,只要保证后缀是.repo就可以
[root@localhost yum.repos.d]# vi new.repo
[repo] # 指定一个配置文件的ID,这个ID可以随便写,但是不能有空格
name=my repo # 为配置文件指定一个名字,名字随便写
enabled=1 # 设置这个配置文件是有效,值1表示有效,值0表示无效
gpgcheck=0 # 设置是否检查软件安全性,值1表示检查,值0表示不检查
baseurl=file:///mnt # 指定软件源的位置
修改了配置文件以后,需要检查是否配置成功
[root@localhost yum.repos.d]# yum repolist
第三步:安装卸载软件
yum命令格式
- yum 参数 软件名
参数
- install:安装软件
- remove:卸载软件
#1 用yum安装httpd
[root@localhost ~]# yum install httpd
#2 用 rpm -q 软件名 可以检查软件是否安装了
[root@localhost ~]# rpm -q httpd
五、计划任务
5.1 周期行计划
通过周期性计划任务,可以定时、自动完成特定的工作
使用周期性计划任务,需要开启服务:crond
1)检查crond服务
[root@localhost ~]# systemctl status crond
# 确保服务处于运行状态
2)创建计划任务了
crontab -e 可以创建计划任务
分钟 小时 日 月 周 命令
#1 每天5点27分,删除一次 tmp下的全部的文件a.txt
27 5 * * * rm -rf /tmp/a.txt
#2 每个月7 的5点27分,删除一次 tmp下的全部的文件a.txt
27 5 7 * * rm -rf /tmp/a.txt
#3 每年3月7 的5点27分,删除一次 tmp下的全部的文件a.txt
27 5 7 3 * rm -rf /tmp/a.txt
#4 没个小时的27分,删除一次 tmp下的全部的文件a.txt
27 * * * * rm -rf /tmp/a.txt
- crontab -e 创建计划任务
- crontab -l 查看计划任务
文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24758 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!