-
自定义写出10个定时任务的示例: 比如每周三凌晨三点执行data命令 要求尽量的覆盖各种场景
-
每周三凌晨三点执行data命令
0 3 * * 3 data
-
晚上9点10分运行echo命令,输出信息仍会发送到root邮箱
10 21 * * * hchjq /bin/echo "Hello"
-
每三小时执行echo和wall 命令
0 */3 * * * hchjq /bin/echo "Hello"; wall "Welcome to alibaba!"
-
每个月周五凌晨12点执行root命令重启服务器
0 0 * * 5 root
-
每个月的1,10,20,号的17:30重启apache
30 17 1,10,20 * * systemctl restart httpd
-
每周一到周六的凌晨3点20分,运行tar命令对/etc/目录进行存档,另存位置为/tmp/压缩包名字自定义。
20 3 * * 1-6 tar -zcf /tmp/hc.tar.gz /etc/
-
10月的每天6-12点直接每隔两小时执行一次/apps/bin/bash.sh
0 6-12/2 * 10 * /apps/bin/bash.sh
-
8月份的周一,周日凌晨1点10分执行/tmp下的test.sh脚本
10 1 * 8 * 0,1 /tmp/test.sh
-
在8月内,每天早上6点到12点钟,每隔三个小时执行一次 /usr/bin/backup
6-12/3 * 8 * /usr/bin/backup
-
每天早上5点到晚上11点之间,每隔一小时,清理一次/var/www/html目录一次
0 5-23 * * * rm -fr /var/www/html
-
-
图文并茂说明Linux进程和内存概念
进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。 进程一般由程序、数据集合和进程控制块三部分组成。
线程是程序执行中一个单一的顺序控制流程,是程序执行流的最小单元,是处理器调度和分派的基本单位。一个进程可以有一个或多个线程,各个线程之间共享程序的内存空间(也就是所在进程的内存空间)。一个标准的线程由线程ID、当前指令指针(PC)、寄存器和堆栈组成。而进程由内存空间(代码、数据、进程空间、打开的文件)和一个或多个线程组成。
-
图文并茂说明Linux启动流程
Centos 6启动流程 1.加载BIOS的硬件信息,获取第一个启动设备 2.读取第一个启动设备MBR的引导加载程序(grub)的启动信息 3.加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备 4.核心执行init程序,并获取默认的运行信息 5.init程序执行/etc/rc.d/rc.sysinit 文件,重新挂载根文件系统 6.启动核心的外部挂载模块 7.init执行运行的各个批处理文件(scripts) 8.init执行/etc/rc/d/rc.local 9.执行/bin/login程序,等待用户登录 10.登录之后开始以shell控制主机
grub功能和组成 bootloader:引导加载器,引导程序 Windows:ntloader,仅是启动OS linux:功能丰富,提供菜单,允许用户选择要启动系统或不同的内核版本,把用户选定的内核装载到内存中的特定空间中,解压,展开,并把系统控制权移交给内核 linux的bootloader lilo:linux loader,早期的bootloader,功能单一 grub:guand unified bootloader,centos 5,6 grub 0.97:grub legacy,centos 7以后使用grub 2.02 grub启动阶段 primary boot loader 1st stage :MBR的前446个字节 1.5 stage:MBR之后的扇区,让stage1中的BootLoader能识别stage2所在的分区上的文件系统 secondary bootloader:2nd stage,分区文件/boot/grub/
centos 7启动流程 1.UEFi或BIOS初始化,运行POST开机自检 2.选择启动设备 3.引导装载程序,centos 7是grub2,加载装载程序的配置文件 /etc/grub.d/ /etc/default/grub /boot/grub2/grub.cfg 4.加载initramfs驱动模块 5.加载内核选项 6.内核初始化,centos 7使用systemd代替init 7.执行initrd.garget所有单元,包括挂载 /etc/fstab 8.从initramfs根文件系统切换到磁盘根目录 9.systemd执行默认target配置,配置文件/etc/systemd/system/default.target 10.systemd执行sysinit.target初始化系统及basic.target准备操作系统 11.systemd启动multi-user.target下的本机与服务器服务 12.systemd执行multi-user.target下的/etc/rc.d/rc.local 13.systemd执行multi-user.target下的getty.target及登录服务 14.systemd执行graphical需要的服务
-
运行级别
-
-
自定义一个systemd服务定时去其他服务器上检查/tmp/下文件的个数,如果发现数量有变化就记录变化情况到文件中。
-
编辑名为:check_tmp_files.sh的脚本目的为自动连接10.0.0.6的机器,每隔20秒检查一次/tmp/下的文件数量并将变化的情况记录到文件中。
#!/bin/bash remote_server_ip="10.0.0.6" log_file="/var/log/tmp_file_count.log" current_count=$(sshpass -p "123456" ssh root@"$remote_server_ip" 'ls /tmp/ | wc -l') while true do timestamp=$(date "+%Y-%m-%d %H:%M:%S") echo "$timestamp File count: $current_count" >> $log_file sleep 20 done
- 下面为自定义service内容:
[Unit] Description=Check /tmp/ directory files count [Service] Type=simple ExecStart=/bin/bash -c "bash /root/check_tmp_files.sh" [Install] WantedBy=multi-user.target
-
查看自定义systemd状态并查看指定的日志文件
-
-
写Linux内核编译安装博客
-
https://www.kernel.org 下载linux内核V6.4.7
-
上传到服务器
-
安装相关依赖包
yum -y install gcc make ncurses-devel flex bison openssl-devel
-
解压 linux-6.4.7.tar.xz
tar xf linux-6.4.7.tar.xz -C /usr/local/src/
-
切换至/usr/local/src/linux-6.4.7目录
/usr/local/src/linux-6.4.7/
-
复制config文件
cp /boot/config-$(uname -r) .config
-
修改.config文件
#CONFIG_MODULE_SIG=y #注释此行 CONFIG_SYSTEM_TRUSTED_KEYS="" #修改此行 #CONFIG_DEBUG_INFO_BTF=y #设置内核参数 make menuconfigGeneral setup --> Local version - append to kernel release -->-a-magedu --> savemake -j 2 #多少核就写多少,此处很慢 make modules_install make install reboot
-
-
-
总结5个自我觉得比较有用的awk的使用场景,比如在什么情况下用awk处理文本效率最高,发散题,至少写1个。
-
取出网站访问量最大的前三个IP地址
awk '{print $1}' nginx.access.log | sort | uniq -c | sort -nr |head -3
-
取出分区利用率
df | awk -F "[[:space:]]+|%" '{print $5}'
-
取nginx的访问日志中的IP地址和时间
awk -F '[[ ]' '{print $1,$5}' /var/log/nginx/access.log
-
awk去重
awk '!line[$0]++' awk.txt
-
查看Linux系统每个IP 的连接数
netstat -n | awk '/^tcp/{print $5}' | awk -F ":" '{print $1}' | sort| uniq -c | sort -nr
-
马哥教育第四周作业
原创
©著作权归作者所有:来自51CTO博客作者hchjq的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:# **马哥教育第三周作业**
下一篇:SRE-第五周作业
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
第四节 Docker概述
Docker
Docker docker 应用程序 -
马哥教育-老王视频-第四周作业
马哥教育-老王视频-第四周作业
马哥教育-老王视频-第四周作业 -
马哥的linux培训第四周作业
,要求修改h...
hadoop bash .net