2019年3月25日课堂笔记
一、
定时任务要领:
* * * * * /bin/sh /server/scripts/bak.sh &>/dev/null
如何调试定时任务?
1、查看错误日志*****
/var/log/cron
学会最小化排除:
先清空,>/var/log/cron
然后在测试和观察。
2、增加执行任务频率调试任务 *****
把频率调快。
3、把定时任务执行时间比当前时间拖后5分钟
00 03执行,当前5:00,咱们就把时间调整 05 05,有个5分钟提前量。
4、调整系统时间(测试环境还凑合)
00 03执行,把系统时间调整到2:55。
5、通过脚本日志输出调试定时任务
定时任务输出
* * * * * /bin/sh /server/scripts/bak.sh &>/tmp/bak.log
脚本输出:
tar zcvf oldboy.tar.gz ./data &>/tmp/tar.log
注意点:
有时候程序只能执行一次。一定要在测试环境测试好,然后直接复制到正式。
代码发布流程:
办公室测试环境===>IDC机房测试环境===>IDC机房正式环境
防止在正式环境发生错误,从而影响用户体验,业务稳定。
二、两个案例
1、企业故障案例:No space left on device常见企业故障案例
磁盘满的报错,原因往往是inode被占满了。
df -i
因为定时任务没有加&>/dev/null,定时任务执行的时候把输出给系统root发邮件。
邮件服务器postfix服务默认不开,这些给系统发的邮件就会堆在临时目录(大量小文件存在)
/var/spool/clientmqueue/ 6
/var/spool/postfix/maildrop/ 7
2、企业故障案例:程序通过手动可以执行,放定时任务里不执行。
export变量生产案例
定时任务在执行脚本的时候,多数情况没办法加载环境变量,特别是/etc/profile。
登录后怎么操作都对,但是就是放到定时任务不行。
命令行:bash登录方式
1.手工登录后,加载所有环境变量(~/.bash_profile,~/.bash_rc,/etc/profile,/etc/bashrc)
2.定时任务执行脚本属于非登录状态(/etc/bashrc)。
实践检验,定时任务能否自动加载/etc/bashrc和/etc/profile文件。
所有运维都会把变量放到此文件/etc/profile,把这个文件里的变量定义
在执行的脚本中 重新定义。
具体为crond执行Shell时只能识别为数不多的系统环境变量,普通环境变量一般是无法识别的,如果在编写的脚本中需要使用变量,最好使用export重新声明下该变量,以确保脚本正确执行。以后要将其作为一个开发基本规范写上。
三、用户管理知识:
1、用户相关文件:
/etc/passwd 用户所在文件
/etc/shadow 密码所在文件
useradd oldboy 添加用户实际上就是修改上述两个文件
passwd oldboy 改密码实际上就是修改密码所在文件
2、用户组相关文件:
/etc/group 用户组所在文件
/etc/gshadow 用户组密码所在文件(废弃状态)
useradd oldboy 添加用户实际上也会修改上述两个文件(因为要创建同名的用户组)
groupadd sa 添加用户组就是修改上述两个文件
3、md5sum 给文件设置指纹(计算和检查MD5数字信息)
[root@oldboyedu ~]# md5sum /etc/passwd /etc/shadow /etc/group /etc/gshadow
2fe9f002726ed0a138d67cd44722f1a6 /etc/passwd
c2ca41415dca17f1a3dc3c286a9b9bff /etc/shadow
c475144a13d87a400b5e16fe6bd70baf /etc/group
659ef4f533df0fa7e457f87755fb1c27 /etc/gshadow
4、
/etc/passwd文件:
Linux是命令行管理,平时输入ls,cp,谁识别,帮我们把我们想要的输出呢?
这个工具就是bash(命令行解释器)。 * ? [abc]
用户登录:输入命令,希望哪个解释器解释(结尾列决定)
/etc/passwd:bingbing:x:1004:1006::/home/bingbing:/bin/bash
CentOS7默认解释器是bash。
5、/etc/passwd里的解释器
6、/etc/shadow
bingbing 用户
:!! 密码
:17980 最近更改密码的时间
:0 禁止修改密码的天数
:99999 用户必须更改口令的天数
:7 警告更改密码的期限
: 在用户密码过期之后到禁用账户的天数
: 从1970年1月1日起,到用户被禁用的天数
: 保留
8、/etc/default/useradd文件 useradd命令的配置文件
默认shell就是/bin/bash
为什么默认的家目录在home下
为什么默认的家目录/home/用户名下面有很多隐藏文件,从哪来的。
就是/etc/default/useradd文件配置的
day19
2019年3月26日课堂笔记
一、chage查看和修改密码属性
-l列表显示用户的密码信息
-E修改账户过期时间
[root@oldboyedu ~]# chage -l oldboy
Last password change : Oct 07, 2020
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@oldboyedu ~]# chage -E "2020/10/1" oldboy
[root@oldboyedu ~]# chage -l oldboy
Last password change : Oct 07, 2020
Password expires : never
Password inactive : never
Account expires : Oct 01, 2020
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
范例14-17:创建新用户range,要求该用户7天内不能更改密码,
60天以后必须修改密码,过期前10天通知用户,过期后30天后禁止用户登录。
chage -m7 -M60 -W10 -I30 oldboy
passwd -n70 -x600 -w100 -i300 oldboy
二、lastlog查看最近登录过的用户报告
三、last显示用户登录历史
四、su 用户身份切换
-c以指定用户的身份执行命令
怎么用su。
1、先登录普通用户,没事不允许登录root。
只有执行的任务需要root权限的时候才允许你登录root。
系统维护通道。
用su管理,必须知道root密码,安全隐患。
10个运维,都得知道root密码,安全隐患。
需求:
1、不用知道root密码还能管理服务器。
2、最小化管理服务器,想关机,就只给你halt权限。
五、sudo可以以最小化的权限(单个命令,给某个用户以root用户权限执行某个命令)是一个提权的命令(对应权限通过读取/etc/sudoers/文件实现的)
-l列表权限
SUID 针对命令,任何用户执行命令都有root身份。 任何用户执行某个命令:模糊
SUDO 针对用户,给某个用户以root身份执行某个命令。指定用户执行某个命令:具体。
如何编辑配置sudo?
sudo是一个提权的命令(对应权限通过读取/etc/sudoers(严格语法)文件实现的)
配置/etc/sudoers可以使用visudo命令,或vim /etc/sudoers(不推荐)
六、visudo进入编辑状态,100G
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
oldboy ALL=(ALL) /usr/bin/ls,/bin/cp #<===增加一行
用户 主机=(角色) 命令
注意:
1、路径要全路径:
which cp查
2、不要vim /etc/sudoers编辑,如果非要用编辑完visudo -c检查语法
day20
2019年3月27日课堂笔记
一、磁盘的发展趋势和实现措施有四个特点:
发展趋势 实现措施
体积更小 存储密度高度
速度更快 读写更灵敏的磁头,主轴转数更高,接口更先进
容量更大 存储密度更高介质更好
使用更安全 数据保持保护技术
一分钟转1.5万
二、磁盘知识的体系结构
三、磁盘
内部结构
主要包括:盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分
磁盘接口分为:SATA、IDE、、SCSI、光纤FC通道四种,现在流行(sata、sas串口)
四、企业生产环境主流磁盘的相关信息对比
企业生产场景普及成都:SA>SSD>SATA
单位容量对比性能和价格:SSD>SAS>SATAA(一块SSD和一块SATA)
单位价格购买磁盘容量:SATA>SAS>SSD
五、SSD固态磁盘接口类型
SSD固态磁盘主流接口类型分为:
1、SATA接口:SATA SATA2 SATA3.0
2、PATA(IDE接口):IDE44PIN IDE40PIN
3、PCI-E接口:mSATA PCIE(IDE)PCIE(SATA)ZIF:ZIF接口等
优点: 写入速度快 、无噪音、发热量低、无机械故障、体积小重量轻、等
缺点:价格高、寿命有限、容量低、数据难以恢复
六、磁盘容量计算
512字节*每磁道扇区数=磁道大小
磁道大小*磁道数=盘面大小
盘面大小*磁头数=磁盘容量
磁盘容量=盘面大小*磁头数
磁盘容量=磁道大小*磁道数*磁头数
磁盘容量=512字节*每磁道扇区数*磁道数*磁头数
磁盘容量=柱面大小*柱面数(磁道数)
柱面大小=磁道大小*磁头数
磁道大小=512字节*每磁道扇区数
磁盘容量=512字节*每磁道扇区数*柱面数(磁道数)*磁头数
磁盘容量=512字节*每磁道扇区数*磁道数*磁头数
磁盘容量=512字节*每磁道扇区数*柱面数(磁道数)*磁头数
磁盘容量=512*63*2610*255字节
day20
2019年3月28日
一、磁盘的发展趋势和实现措施有四个特点:
发展趋势 实现措施
体积更小 存储密度高度
速度更快 读写更灵敏的磁头,主轴转数更高,接口更先进
容量更大 存储密度更高介质更好
使用更安全 数据保持保护技术
一分钟转1.5万
二、磁盘知识的体系结构
三、磁盘的内部结构
主要包括:盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分
磁盘接口分为:SATA、IDE、、SCSI、光纤FC通道四种,现在流行(sata、sas串口)
四、企业生产环境主流磁盘的相关信息对比
企业生产场景普及成都:SA>SSD>SATA
单位容量对比性能和价格:SSD>SAS>SATAA(一块SSD和一块SATA)
单位价格购买磁盘容量:SATA>SAS>SSD
五、SSD固态磁盘接口类型
SSD固态磁盘主流接口类型分为:
1、SATA接口:SATA SATA2 SATA3.0
2、PATA(IDE接口):IDE44PIN IDE40PIN
3、PCI-E接口:mSATA PCIE(IDE)PCIE(SATA)ZIF:ZIF接口等
优点: 写入速度快 、无噪音、发热量低、无机械故障、体积小重量轻、等
缺点:价格高、寿命有限、容量低、数据难以恢复
六、磁盘容量计算
512字节*每磁道扇区数=磁道大小
磁道大小*磁道数=盘面大小
盘面大小*磁头数=磁盘容量
磁盘容量=盘面大小*磁头数
磁盘容量=磁道大小*磁道数*磁头数
磁盘容量=512字节*每磁道扇区数*磁道数*磁头数
磁盘容量=柱面大小*柱面数(磁道数)
柱面大小=磁道大小*磁头数
磁道大小=512字节*每磁道扇区数
磁盘容量=512字节*每磁道扇区数*柱面数(磁道数)*磁头数
磁盘容量=512字节*每磁道扇区数*磁道数*磁头数
磁盘容量=512字节*每磁道扇区数*柱面数(磁道数)*磁头数
磁盘容量=512*63*2610*255字节
day22
2019年3月29日课堂笔记
一、在fdisk中
t 调整分区类型
l 列表分区类型
fdisk只能是root权限用户使用,适合于对装系统后的系统空间进行分区。fdisk支持mbr分区表。(2TB以内)
cat /proc/partitions 查看分区信息
fdisk分区完后需要执行partprobe 加/dev/sd几 让内核知道分区表的修改,真正生效
fdisk分区实质是修改0磁头0磁道1扇区的前446字节之后的64字节的分区表信息
二、dd命令创建一个虚拟文件系统增加分 区类型
dd if=/dev/sda of=/dev/sab bs=512 count=10240
来源 生成 bilock大小 块的个数
三、parted 是一个磁盘分区管理工具,支持分区超过2TB
大于2T就用GPT分区表,它很好解决了传统MBR无法逾越2TB的限制,fdisk不支持MBR
4G (无需格式化,作DRBD+Hearbeat+MySQL高可用集群)
3.1、一键分区
parted /dev/sdb mklabel gpt #<==修改分区格式为gpt。
parted /dev/sdb mkpart primary 0 480 #<==创建一个4.8T主分区
parted /dev/sdb mkpart primary 481 581 #<==创建一个1T主分区
parted /dev/sdb mkpart primary 582 588 #<==创建一个4G主分区
mkpart logic 581 600 #<==创建一个20M逻辑分区。
parted /dev/sdb p
3.2问题需求:刚买的服务器 4块2T 刚买,要做RAID5,装系统怎么搞定?
方法1:Raid制作视频,Raid里可以支持RAID5后,6T,允许你把6T分成虚拟磁盘。
200G分成第一个虚拟磁盘剩下不分留着装系统后(parted)。
方法2:装系统过程中有这个功能,系统镜像支持GPT格式分区,很隐蔽。
方法3:引导工具,进入然后用parted分区。
3.3生产场景分区方案:
3种。普通方式,存储方式、门户网站方式、错误方式
四、获得使用的磁盘过程====买房入住生活的过程
磁盘: 房子
RAID: 多套房子打通
分区: 隔断/几居室/卧室/卫生间/厨房
==============================
文件系统:装修风格/中式/欧式/美式
格式化过程: 装修的过程
挂载: 开门、开窗住人使用
磁盘管理:生活中收拾屋子,打扫卫生,修修补补。
、五、文件系统:
1、什么是文件系统?
计算机存储和组织数据的方法或者机制。落地是一个软件。
2、为什么需要文件系统?
磁盘、物理介质、磁粒子物理元素。 硬件需要软件驱动使用,磁盘需要文件系统驱动。
文件系统实现通过磁盘管理规划、存取数据。
3、文件系统有哪些种类?
Windows:NTFS、fat32、msdos
Linux:ext2、ext3(C5)、ext4(C6)、Xfs(C7)、btrfs