IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux学习第二篇 -> 正文阅读

[系统运维]Linux学习第二篇

Linux组的基本介绍

在Linux中的每一个用户必须属于一个组,不能独立于组外,在Linux中每个文件有有所有者,所在组,其它组的概念。
在这里插入图片描述

文件/目录 所有者

一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。

指令

ls -ahl #查看文件的所有者
chown 用户名 文件名 #修改文件所有者

在这里插入图片描述
使用root创建一个文件apple.txt 然后将其所有者改为tom

touch apple.txt  # 创建一个空文件
chown tom apple.txt #修改所有者

组的创建

指令

groupadd 组名

创建一个组,monster ,创建一个用户fox,并放到monster组中

[root@VM-12-5-centos ~]# groupadd monster # 创建组
[root@VM-12-5-centos ~]# useradd -g monster fox   #创建用户并将其放进组monster
[root@VM-12-5-centos ~]# id fox  #查询用户所在组
uid=1004(fox) gid=1004(monster) groups=1004(monster

当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

指令

ls -ahl #查看文件/目录所在组
chgrp 组名 文件名 #修改文件所在组

在这里插入图片描述

使用root用户创建文件 orange.txt ,看看当前这个文件属于哪一个组,然后将这个文件所在组,修改到fruit组。

[root@VM-12-5-centos ~]# groupadd fruit
[root@VM-12-5-centos ~]# touch orange.txt
[root@VM-12-5-centos ~]# ll
total 1216
drwxr-xr-x 2 root root    4096 Jul 10 09:17 first
-rw-r--r-- 1 root root       0 Jul 11 09:46 orange.txt
[root@VM-12-5-centos ~]# chgrp fruit orange.txt 
[root@VM-12-5-centos ~]# ll
total 1216
drwxr-xr-x 2 root root     4096 Jul 10 09:17 first
-rw-r--r-- 1 root fruit       0 Jul 11 09:46 orange.txt

其它组

除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

改变用户所在组

usermod -g 新组名 用户名
usermod -d 目录名 用户名 改变该用户登陆的初始目录  #需要权限

rwx权限

ll /
total 10412
lrwxrwxrwx.   1 root root       7 Mar  7  2019 bin -> usr/bin
dr-xr-xr-x.   5 root root    4096 Jul 11 10:18 boot
drwxr-xr-x    2 root root    4096 Jul 11 10:18 data
-rwxr-xr-x    1 root root 3523900 Jul  8 02:51 ddmwv2

在这里插入图片描述

rwx作用到文件

  1. 【r 】 read 可以读取,查看
  2. 【w】write 可以进行修改 但是不代表可以删除,删除须有对带目录具有写权限才可以删除
  3. 【x 】execute 可以被执行

rwx作用到目录

  1. 【r 】 可以读取 ,ls查看
  2. 【w】可以修改,对目录内创建+删除+重命名目录
  3. 【x 】 可执行,可以进入该目录

可用数字表示 r=4,w=2,x=1 因此 rwx=7

权限说明案例

drwxr-xr-x.   6 root root    4096 Jul 11 09:27 home

 1. 6 文件:硬连接数或者 目录:子目录数
 2. root 用户
 3. root 组
 4. 4096 文件大小(字节)
 5. Jul 11 09:27最后修改时间
 6. home 文件名

修改权限 -chmod

通过 chmod指令,可以修改文件或者目录的权限

第一种方式: + , - , = 变更权限

u:所有者,g:所有组,o:其他人 ,a:所有人(u,g,o)

  1. chmod u=rwx,g=rx,o=x 文件/目录名
  2. chmod o+w 文件/目录名
  3. chmod a-x 文件/目录名

在这里插入图片描述

案例演示

给 abc 文件的所有者读写执行的权限,给所在组读执行的权限,给其他组读执行的权限。
chmod u=rwx , g=rx , 0=rx abc
给 abc 文件的所有者读写执行的权限,增加组的写权限
chmod u-x, g+w abc
给abc 文件的所有用户添加读的权限
chmod a+r  abc 

第二种方式:通过数字变更权限
r=4,w=2,x=1

chmod u=rwx ,g=rx,o=x 文件目录名
相当于 chomod 751 文件目录名

修改文件所有者-chown

chown  newowner 文件/目录 改变所有者
chown  newowner:newgroup 文件/目录 改变所有者和所在组
-R     如果是目录则使其下子文件或目录递归生效

将 /home/abc.txt 文件下的所有者修改成为 tom

chown tom /home/abc.txt

将 /home/test 目录下的所有文件和目录的所有者都修改为tom

chown -R tom /home/test

修改文件/目录所在组-chgrp

chgrp newgroup 文件/目录 [改变所在组]

将/home/abc.txt 文件的所在组修改成 shaolin

groupadd shaolin
chgrp shaolin /home/abc.txt

将/home/test 目录下的所有文件和目录的所有者都修改成为tom

chown -R tom/home/test

crond 任务调度

crontab 进行 定时任务的设置
任务调度:是指系统在某个时间执行的特定的命令或者程序
任务调度分类:系统工作,有些重要的工作必须周而复始地执行,比如:病毒扫描个别用户工作,个别用户可能希望执行某些程序,个别用户执行某些应用程序,比如mysql数据库的备份

crontab [选项]

在这里插入图片描述
在这里插入图片描述

设置任务调用文件 : /etc/crontab
设置个人任务调用调度 执行crontab -e 命令
接着输入任务到调度文件
如: */1 * * * * ls -l /etc/ > /tmp/to.txt
每小时的每分钟执行 ls -l /etc/ > /tmp/to.txt

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

应用实例

案例一:每隔一分钟,就将当前的日期信息,追加到 /tmp/mydate文件中

*/1 * * * * date >> /tmp/mydate

##用shell脚本做
 [root@VM-12-5-centos home]# vim my.sh
[root@VM-12-5-centos home]# ll
-rw-r--r-- 1 root  root  40 Jul 12 13:35 my.sh #现在文件的所有者没有执行能力所以我们需要为所有者增加一个x(execute)执行功能
chmod u+x my.sh
-rwxr--r-- 1 root       root         40 Jul 12 13:35 my.sh
[root@VM-12-5-centos home]# ./my.sh  #手动执行脚本
[root@VM-12-5-centos home]# cat mycal 
Tue Jul 12 13:40:15 CST 2022
      July 2022     
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

但是我们不能每次都手动执行,我们需要系统为我们做这些事情,所以我们用crontab执行一个定时任务

crontab -e
*/1 * * * * /home/my.sh  #定时任务

案例二:每天的凌晨两点将mysql数据库的testdb,备份到文件中,

mysqldump -u root -p密码 数据库 > > /home/db.bak

crontab -e
0 2 * * * mysqldump -u root -p密码 数据库 > > /home/db.bak

终止任务调度

conrtab -r :终止任务调度
crontab -l :列出当前有哪些任务调度
service crond restart [重启任务调度]
[root@VM-12-5-centos home]# crontab -l
* * * * * /dev/cpu/xqbr5s

上下键可以将以前的指令调出来

at 任务调度

  1. at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列运行
  2. 默认情况下,atd守护进程每60s检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业
  3. at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了
  4. 在使用at命令的时候,一定要保证atd进程的启动,可以使用相关指令来查看
ps -ef | grep atd  #可以检测atd是否在运行
at【选项】 【时间】
Ctrl + D 结束at命令的输入

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

at定时任务

案例一:两天后有的下午5点执行 /bin/Is/home

[root@VM-12-5-centos home]# at 5pm + 2 days
at> /bin/ls /home<EOT>   # 这里保存下来需要连续两次 Ctrl + D 
job 1 at Thu Jul 14 17:00:00 2022
[root@VM-12-5-centos home]# atq
1	Thu Jul 14 17:00:00 2022 a root

案例二:atq命令来查看系统中有没有执行的工作任务

[root@VM-12-5-centos home]# atq

案例三:明天17点钟。输出时间到指定文件内,比如:/root/date100.log

 at 5pm tomorrow
 date > /root/date100.log 

案例四:两分钟后,输出时间到指定文件内,比如 /root/date200.log

 at  now + 2 minutes 

案例五:删除已经设置的任务,atrm编号

[root@VM-12-5-centos home]# atq
1	Thu Jul 14 17:00:00 2022 a root
You have new mail in /var/spool/mail/root
[root@VM-12-5-centos home]# atrm 1
[root@VM-12-5-centos home]# atq
at的玩法

两分钟后执行脚本

at now + 2 minutes
/root/my.sh 

Linux分区

磁盘分区机制

原理介绍

  1. Linux 来说无论有几个分区,分给哪一个目录使用,它归根结底就只有一个根目录,一个独立并且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分
  2. Linux采用一种叫做“载入”的处理方法,他的整个文件系统中包含了一整套的文件和目录,并且将一个分区和一个目录联系起来,这时要载入的一个分区使它的存储空间在一个目录下获得

在这里插入图片描述

查看所有设备的挂载情况

lsblk -f 或者 lsblk

在这里插入图片描述
如何增加一块硬盘

磁盘情况查询

df -h   #查询整个磁盘
du -h #查询指定目录的磁盘情况,默认为当前的目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
-- max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值
[root@VM-12-5-centos opt]# ls
containerd  mellanox  rh
[root@VM-12-5-centos opt]# du -hac --max-depth=1 /opt/
4.0K	/opt/rh
64K	/opt/mellanox
4.1M	/opt/containerd
4.2M	/opt/
4.2M	total
[root@VM-12-5-centos ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        989M  322M  667M  33% /dev
tmpfs          1000M  588K  999M   1% /dev/shm
tmpfs          1000M  672K  999M   1% /run
tmpfs          1000M     0 1000M   0% /sys/fs/cgroup
/dev/vda1        40G  7.9G   30G  22% /
tmpfs           200M     0  200M   0% /run/user/0

磁盘情况-工作实用指令

统计/opt 文件夹下文件的个数

[root@VM-12-5-centos opt]# ls -l /opt |grep "^d" # 找到opt目录下以d为开头的
drwxr-xr-x  3 root root 4096 Jun 27 19:37 containerd
drwxr-xr-x  4 root root 4096 May 29 00:21 mellanox
drwxr-xr-x. 2 root root 4096 Oct 31  2018 rh

统计/opt文件夹下目录的个数

[root@VM-12-5-centos opt]# ls -l /opt |grep "^d" | wc -l  # 文件个数
3

统计/opt文件夹下文件的个数,包括子文件夹里的

[root@VM-12-5-centos opt]# ls -lR /opt |grep "^d" | wc -l  #递归显示包括子文件夹下的
19

以树状显示目录结构

[root@VM-12-5-centos opt]# yum install tree #安装tree
[root@VM-12-5-centos opt]# tree /home
/home
|-- fox
|   `-- ok.txt
|-- lighthouse
|-- mycal
|-- my.sh
|-- springboot
`-- www
    |-- Guoblog-0.0.1-SNAPSHOT.jar
    |-- home
    |   `-- www
    |       `-- pictureLibrary
    |-- log

Linux网络配置

Linux网络配置原理图

在这里插入图片描述

[root@VM-12-5-centos opt]# ifconfig

ping测试主机之间网络连通性

ping 目的主机  #测试是否可以连接目的主机
[root@VM-12-5-centos opt]# ping www.baidu.com
PING www.a.shifen.com (112.80.248.76) 56(84) bytes of data.
64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=1 ttl=53 time=9.66 ms
64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=2 ttl=53 time=9.68 ms

Linux网络环境配置

直接修改配置文件来指定ip,并可以连接到外网,编辑 vim /etc/sysconfig/network-scripts/ifcfg-ens33 要求将ip地址配置的静态的,

主机名和host

查看并修改主机名

[root@VM-12-5-centos ~]# hostname #查看主机名
VM-12-5-centos
[root@VM-12-5-centos ~]# vim /etc/hostname #编辑主机名
VM-12-5-centos
~                  
reboot #编辑后重启才可以生效

通过主机名找到(比如ping) 某个Linux系统

  1. 在window系统下找到C:\Windows\System32\drivers\etc
  2. 编辑hosts文件添加上 目标主机 主机名
  3. ping 主机名

在这里插入图片描述

Linux下找到window

  1. 编辑文件 vim /etc/hosts
  2. 添加 ip 主机名

在这里插入图片描述
主机名解析过程分析(Hosts DNS)
Hosts是什么–>一个文本文件,用来记录IP和HostName(主机名)的映射关系
DNS

  1. 是Domain Name System 的缩写,翻译过来就是域名系统
  2. 是互联网上作为域名和Ip地址相互映射的一个分布式数据库

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 17:01:55  更:2022-07-17 17:02:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:46:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码