第二阶段:高级核心基础知识·第4章shell特性·2
1.统计日志,日志内容
39.96.187.239 - - [11/Nov/2019:10:08:01 +0800] "GET / HTTP/1.1" 302 0 "-" "Zabbix"
211.162.238.91 - - [11/Nov/2019:10:08:02 +0800] "GET /api/v1/course_sub/category/list/?belong=1 HTTP/1.1" 200 363 "https://www.luffycity.com/free" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
211.162.238.91 - - [11/Nov/2019:10:08:02 +0800] "GET /api/v1/degree_course/ HTTP/1.1" 200 370 "https://www.luffycity.com/free" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
统计日志的访客ip数量
[root@huahua-centos7-aliyun luffy]# cat log.txt | awk '{print $1}' | sort -r | uniq | wc -l
2
查看访问最频繁的前10个ip
[root@huahua-centos7-aliyun luffy]# cat log.txt | awk '{print $1}' | sort -nr | uniq -c | tail -10
2 211.162.238.91
1 39.96.187.239
[root@huahua-centos7-aliyun luffy]#
2.查看linux的定时任务列表
[root@huahua-centos7-aliyun ~]# crontab -l
*/1 * * * * root echo "hello world!"
3.每晚0点整,把站点目录/var/www/html下的内容打包备份到/data目录下
[root@vm-main data]# crontab -e
*/1 * * * * tar -zcPf /data/log.tgz /var/log/www/*
4.每5分钟让服务器进行时间同步
*/5 * * * * /usr/sbin/ntpdate ntp.tencent.com
5.在每天的10:31开始,每隔2小时重复一次
31 10-23/2 * * * /usr/sbin/ntpdate ntp.tencent.com
6.每周六凌晨4:00执行
00 4 * * 6 /usr/sbin/ntpdate ntp.tencent.com
7.linux对磁盘分区格式化的命令
mkfs
8.解释inode与block的含义
inode
中文名叫索引节点,是存放文件的元信息(文件创建者,日期,大小等,可以通过stat
查看)和文件的实体指针(指向block的位置,这也是inode和block的关系)的区域。
inode 的大小一般为128-256字节,inode节点总数在格式化时就决定了
block
block就是存放实际文件数据的单元,单个文件占多个block存储,通过inode寻找block
一个block最少4K,也就意味着你创建一个文件至少需要一个block也就是4k
9.格式化分区/dev/sdc1为xfs文件系统(提示:注意格式化分区文件系统前,检查好当前分区是否在用,是否重要,明确后再自己本地虚拟机实验)
mkfs.xfs /dev/sdc1
10.简述buffers和cache含义及作用
cache是缓存,cached是给读取数据时加速的cached是指把读取出来的数据保存在内存中,再次读取,不用读取硬盘而直接从内存中读取,加速数据读取过程。
buffers是缓冲buffers是指写入数据时,把分散的写入操作保存到内存,达到一定程度集中写入硬盘,减少磁盘碎片,以及反复的寻道时间,加速数据写入。
11.简述raid不同级别的区别
raid 0:
将两个或以上相同型号,容量的磁盘组合,磁盘阵列的总容量便是多个硬盘的总和,
数据依次写入物理硬盘,理想状态下,硬盘读写性能翻倍,但是任意一块磁盘损坏会导致,
所有数据丢失。raid 0适用于对数据安全性不太关注,追求性能的场景。
raid 1:
是将两块硬盘以上硬盘绑定,数据写入时,同时写入多个硬盘,因此即使有硬盘故障,
也有数据备份。raid 1的利用率很低,冗余性高。
raid 3:
通过异或运算:数字相同则为0,数字不同则为1。只要存储异或结果的磁盘不坏,其他
任意坏一块磁盘都可以通过异或运算反推恢复数据,最少三块磁盘,同样浪费一块磁盘。
存放异或运算的磁盘不能损坏。
raid 5:
需要四块硬盘,也是通过异或运算,但是异或运算的结果是会均匀的放在每一块硬盘上,
如disk 1存放disk 2,3,4的结果,这样任意一块磁盘损坏都能恢复数据了,提高的容错率,
但是也仅仅是只能挂掉一块硬盘。
raid 10:
raid 10 其实是raid 0 加上raid 1,吸收了raid 0的效率,raid 1的安全性,因此需要四块
12.简述lvm创建流程
1.物理分区阶段:将物理磁盘fdisk格式化修改System ID为LVM标记(8e)
2.PV阶段:通过pvcreate、pvdisplay将Linux分区处理为物理卷PV
pvcreate /dev/sdc /dev/sdd
3.VG阶段:接下来通过vgcreate、vgdisplay将创建好的物理卷PV处理为卷组VG
vgcreate storage /dev/sdc /dev/sdd
4.LV阶段:通过lvcreate将卷组分成若干个逻辑卷LV
lvcreate -n lvm-test -L 100M storage
5.开始使用:通过mkfs对LV格式化,最后挂载LV使用
mkfs.xfs /dev/storage/lvm-test
mount /dev/storage/lvm-test /LVN-TEST/
13.简述lvm动态扩容流程
[root@vm-main /]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- 17.80g
swap centos -wi-ao---- 2.00g
lvm-test storage -wi-ao---- 1.20g
[root@vm-main /]# lvextend -L 1.5G /dev/storage/lvm-test
Size of logical volume storage/lvm-test changed from 1.20 GiB (308 extents) to 1.50 GiB (384 extents).
Logical volume storage/lvm-test successfully resized.
[root@vm-main /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 2.2G 16G 13% /
devtmpfs 478M 0 478M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 6.9M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sdb1 10G 59M 10G 1% /data
/dev/sda1 197M 103M 95M 53% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/mapper/storage-lvm--test 1.2G 26M 1.2G 3% /LVN-TEST
[root@vm-main /]# xfs_growfs /dev/storage/lvm-test
meta-data=/dev/mapper/storage-lvm--test isize=512 agcount=10, agsize=32000 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=315392, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 315392 to 393216
[root@vm-main /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 2.2G 16G 13% /
devtmpfs 478M 0 478M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 6.9M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sdb1 10G 59M 10G 1% /data
/dev/sda1 197M 103M 95M 53% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/mapper/storage-lvm--test 1.5G 26M 1.5G 2% /LVN-TEST
[root@vm-main /]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- 17.80g
swap centos -wi-ao---- 2.00g
lvm-test storage -wi-ao---- 1.50g
14.如何配置yum源,能够下载诸多第三方软件?
备份原始配置文件
[root@vm-main yum.repos.d]# cd /etc/yum.repos.d/
[root@vm-main yum.repos.d]# mkdir bak
[root@vm-main yum.repos.d]# mv *.repo bak/
下载新的阿里云配置文件到本地
wget -O aliyun.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
15.简述源代码编译安装nginx的步骤
1.补包
[root@vm-main yum.repos.d]# yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
2.获取安装包
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
3.解压并进入目录
tar -zxvf nginx-1.12.0.tar.gz
4.检查安装环境
./configure --prefix=/opt/nginx112/
5.编译安装
make && make install
16.linux有哪些系统资源监控的命令?
top
第二阶段:高级核心基础知识·第4章shell特性·2的更多相关文章
- 第二阶段:高级核心基础知识·第1章Linux三剑客·1
1.用vmware添加一块10G的硬盘,且永久挂载到/data01中,写出详细的步骤 2.用自己语言描述raid0和raid1的区别 RAID 0: 将两个或以上相同信号,容量的硬盘组合,磁盘阵列的总 ...
- unix环境高级编程基础知识之第四章
1.从当前用户转到root用户:直接输入su命令,然后输入root密码,如果之前没有设置root命令密码会登陆不成功,这里需要命令sudo passwd命令设置密码,然后按照上面输入就成:从root命 ...
- Java核心技术卷一基础知识-第11章-异常、断言、日志和调试-读书笔记
第11章 异常.断言.日志和调试 本章内容: * 处理错误 * 捕获异常 * 使用异常机制的技巧 * 使用断言 * 日志 * 调试技巧 * GUI程序排错技巧 * 使用调试器 11.1 处理错误 如果 ...
- unix环境高级编程基础知识之第二篇(3)
看了unix环境高级编程第三章,把代码也都自己敲了一遍,另主要讲解了一些IO函数,read/write/fseek/fcntl:这里主要是c函数,比较容易,看多了就熟悉了.对fcntl函数讲解比较到位 ...
- Java核心技术卷一基础知识-第14章-多线程-读书笔记
第 14 章 多线程 本章内容: * 什么是线程 * 中断线程 * 线程状态 * 线程属性 * 同步 * 阻塞队列 * 线程安全的集合 * Collable与Future * 执行器 * 同步器 * ...
- Java核心技术卷一基础知识-第8章-事件处理-读书笔记
第8章 事件处理 本章内容: * 事件处理基础 * 动作 * 鼠标事件 * AWT事件继承层次 8.1 事件处理基础 在AWT所知的事件范围内,完全可以控制事件从事件源(event source)例如 ...
- Java核心技术卷一基础知识-第5章-继承-读书笔记
第5章 继承 本章内容: * 类.超类和子类 * Object:所有类的超类 * 泛型数组列表 * 对象包装器和自动装箱 * 参数数量可变的方法 * 枚举类 * 反射 * 继承设计的技巧 利用继承,人 ...
- 第一篇 网站基础知识 第5章 自己动手实现HTTP协议
第5章 自己动手实现HTTP协议 我们知道HTTP协议是在应用层解析内容的,只需要按照它的报文的格式封装和解析数据就可以了,具体的传输还是使用的Socket,在第4章NioServer的基础上自己做一 ...
- unix环境高级编程基础知识之第一篇
陆陆续续看完了圣经第一章,熟悉了unix的整个编程流程,c语言的用处在这里得到伸张. 从unix的体系结构,原来操作系统包括内核及一些其他软件,我们常常误称为linux内核为操作系统,这俨然成为一种共 ...
随机推荐
- HDFS的读写流程——宏观与微观
HDFS的读写流程--宏观与微观 HDFS:分布式文件系统,负责存放数据 分布式文件系统:就是将我们的数据放到多台电脑上存储. 写数据:就是将客户端上的数据上传到HDFS 宏观过程 客户端向HDFS发 ...
- 用maven创建ssm框架样版
在pom.xml中添加依赖包 特别要注意导入的"org.springframework"的版本,不兼容会报错 <!--依赖:junit ,数据库驱动,连接池,servlet, ...
- vivo前端智能化实践:机器学习在自动网页布局中的应用
作者:vivo 互联网前端团队- Su Ning 在设计稿转网页中运用基于self-attention机制设计的机器学习模型进行设计稿的布局,能够结合dom节点的上下文得出合理的方案. 一.背景 切图 ...
- 第二十二篇:有关插槽solt的使用
1.什么是插槽? 插槽就是子组件中的提供给父组件使用的一个占位符,用<slot></slot> 表示, 父组件可以在这个占位符中填充任何模板代码,如 HTML.组件等,填充的内 ...
- SpringMvc(二)- 请求处理参数 和 响应数据处理
1.请求处理参数 1.1 请求参数 @RequestParam 1.1.1 不使用 @RequestParam 注解 请求参数处理,不使用参数注解: 1.如果请求参数名和请求处理的形参名一致,spri ...
- KingbaseES V8R3集群维护案例之---在线添加备库管理节点
案例说明: 在KingbaseES V8R3主备流复制的集群中 ,一般有两个节点是集群的管理节点,分为master和standby:如对于一主二备的架构,其中有两个节点是管理节点,三个数据节点:管理节 ...
- K8S Pod及其控制器
Pod K8S里能够运行的最小逻辑单元,1个Pod可以运行多个容器 Pod 控制器 Pod控制器是Pod启动的一种模版,用来保证在K8S中启动的Pod始终按照人们的预期运行(副本数,生命周期.健康状态 ...
- 使用 MAUI 在 Windows 和 Linux 上绘制 PPT 的图表
我在做一个图表工具软件,这个软件使用 MAUI 开发.我的需求是图表的内容需要和 PPT 的图表对接,需要用到 OpenXML 解析 PPT 内容,读取到 PPT 图表元素的内容,接着使用 MAUI ...
- 【pytest官方文档】解读- 如何安装和使用插件
本节讨论安装和使用第三方插件.关于编写自己的插件,我们下一章继续. 一.pip 安装 就像安装一些其他第三方库一样,使用pip也可以很容易地安装第三方插件,pytest-NAME这是你要安装的插件名称 ...
- Java 异步编程 (5 种异步实现方式详解)
同步操作如果遇到一个耗时的方法,需要阻塞等待,那么我们有没有办法解决呢?让它异步执行,下面我会详解异步及实现@mikechen 目录 什么是异步? 一.线程异步 二.Future异步 三.Comp ...