好久没有更新日志了,是因为这段时间一直在忙于自己考研复试的事情。所以一直没有更新自己的博客。现在忙完了自己的复试。等开学自己将攻读人工智能放心也会记录自己的学习经历,加油。
日志文件的概述
概念:记录系统和应用程序的运行信息,用于排查和诊断系统的故障
linux系统中日志记录的范围:加载内核、init进程启动、启动/etc/rc.d/rc3.d/S开头的服务、用户登录、系统程序运行
日志的分类
日志分类:
内核及系统日志:通常由rsyslog进行管理
用户日志:记录用户的行为
程序日志:通常独立管理,不交给rsyslog
分析日志文件
一般日志文件存放在/etc/log文件夹
例如:
/var/log/messages ##启动过程的日志文件,通常有硬件加载信息,也称为公共日志
cat /var/log/messages(查看)
/var/log/dmesg ##启动过程日志文件,通常有硬件加载信息,对解决硬件故障有帮助
命令同上
/var/log/secure ##用户登录认证日志文件
rsyslog服务:管理内核、系统、用户的日志
例如查看该文件
cat /etc/rsyslog(查看命令)
也可以编写日志
该日志的规则
设备(程序):auth(认证,与security相同)、cron(计划任务)、kern(内核)、mail(邮件)、user(用户)、local1-local17(用户自定义存放位置)
优先级:严重级别从低到高
1.debug调试
2.info信息
3.notice提醒
4.warn注意
5.error错误
6.crit严重
7.alert警告
8.emerg紧急,等于panic恐慌
(特殊符号:*代表所有的设备或优先级,;表示隔开多个区域)
程序日志文件:一般由程序自己维护,不使用rsyslog服务来管理程序日志
一些有关的命令
users(查询当前系统的登陆状态,每个用户对应一个终端)
who(查询系统的详细信息,包括用户、终端、日期)
last(查询最近登陆成功的用户)
lastb(最近登陆失败的用户)
Linux系统常见启动故障
- MBR 扇区故障
MBR扇区概述:位于物理硬盘的第一个扇区(512B),又称为主引导扇区,前446个字节是主引导记录(GRUB引导), 后64个字节包含了整个硬盘的分区表,还有2个字节大小的分区标志
故障原因:病毒木马等的破坏,不正确分区,磁盘读写误操作等
故障现象:找不到引导,启动中断,无法加载操作系统,开机后黑屏(这种情况在windows中也挺常见)
解决思路:应先做好sda中的备份,然后使用系统光盘进救援模式进行恢复
A. 备份:因为MBR扇区存放了整块硬盘的分区信息,所以必须新添加一块硬盘进行挂载,然后dd MBR中的数据到挂载点(dd if=/dev/sda of=/benet/sda.bat bs=512 count=1);
B. 若出现此故障,则开机屏幕会显示Operating system not found,在测试环境中可以模拟故障(dd if=/dev/zero of=/dev/sda bs=512 count=1);
C. 需使用系统光盘,调整bois启动,进入急救模式后(注:在急救模式中,使用的是光盘的linux目录结构),所以找不到MBR扇区所在磁盘的任何分区信息,需要在光盘下新建挂载点,然后将备份数据所在的硬盘挂载到挂载点,在进行数据恢复(dd 挂载点下备份内容到MBR所在位置); - grub引导故障:
GRUB引导概述:GRUB大多为linux默认的引导程序,主配置文件/boot/grub/grub.conf;
故障原因:主配置文件grub.conf文件丢失;
故障现象:引导停滞,无法启动系统,出现grub>字段;
解决思路:
a.备份:将grub引导程序的主配置文件/boot/grub/grub.conf备份到别的存储位置;
b.模拟故障:将主机的/boot/grub/grub.conf文件删除,重启主机;
c.修复1:手动在grub>字段后输入grub信息 ,进入系统后进行修补grub.conf文件;
d.修复2:进入光盘救援模式;
chroot /mnt/sysimage ##光盘模式默认是光盘的目录结构,由于系统的分区表没有损坏,那么救援模式将linux 主机的目录架构挂载到了/mnt/sysimage下,需要使用此命令切换到待修复的linux系统;
cp grub.conf备份文件位置 /boot/grub/ ##将备份的grub.conf文件恢复到/boot目录下
exit ##退出待修复的系统模式
reboot ##重启验证是否修复成功
e.若通过以上步骤无法修复grub引导问题,那么需要进入光盘救援模式,重新安装grub引导程序,若grub.conf配置文件内部字段被损坏,可以执行重新安装引导,若此文件丢失则无法安装.
chroot /mnt/sysimage
grub-install /dev/sda ##重新安装grub引导程序到sda分区中
exit ##退出待修复的系统模式
reboot - 遗忘root的密码:
解决思路:两种方案
a.进入单用户模式进行修改root密码:开机到秒数时按下键–选择grub行按e键–将光标移动到kernel行按e键–输入空格1然后回车–将光标移动到kernel行按b键–进入单用户模式;passwd 更改root的密码;
b.进入光盘救援模式进行修改root密码:
chroot /mnt/sysimage ##切换到待修复linux系统的的模式下;
passwd ##更改root的密码
exit ##退出待修复linux系统的模式
reboot ##重启主机,登陆验证 - 文件系统故障:
故障原因:非正常关机、突然断电、设备读写失误等(文件系统的超级块super-block信息被损坏);
故障现象:无法向分区中读取或写入数据,启动后显示Give root password for maintenance;
解决思路:
a.模拟故障:dd if=/dev/zero of=/dev/sdb1 bs=512b count=4 ##将sdb1分区的文件系统破坏掉
b.测试挂载:出现mount: you must specify the filesystem type;
c.修复文件系统:fsck -y -t ext4 /dev/sdb1 ##修复文件系统
d.再次测试挂载:mount /dev/sdb1 /benet - 磁盘资源耗尽故障:
故障原因:磁盘空间已被大量的数据占满,空间耗尽,有可用空间,但文件数i节点(磁盘中的文件的指针,当Linux系 统要查找某个文件时,它会先搜索inode table找到这个文件的属性及数据存放地点,然后再查找数据存放的Block进 而将数据取出)耗尽;
故障现象:无法写入新的文件,提示设备上没有空间,部分程序无法运行,甚至系统无法启动;
解决思路:
a.清理磁盘空间、删除无用的占用i节点的小文件;
b.为用户设置磁盘限额;
注:df -i ##查看磁盘分区的i节点使用情况 - 磁盘坏道的检测:
故障原因:磁盘设备中存在逻辑的或者物理的坏道情况
故障现象:读取磁盘中的数据时,磁盘设备发出声响、访问磁盘中的文件时,反复读取且出错,提示文件损坏、新建立的 分区无法格式化;
解决思路:
a.检测磁盘时候存在坏道情况(badblocks -sv /dev/sdb);
b.修复硬盘或者更换新的硬盘;
扩展:为grub引导菜单设置密码及清空回收站
grub-md5-crypt ##生成MD5加密的字符串
将密码加密串写入配置文件/boot/grub/grub.conf 配置文件
在hiddenmenu 和 title之间增加加密信息,如下
password --md5 加密字符串 ##设置密文密码
password=123123 ##设置明文密码
(学习看到的自己还没有实验大家可以看下做下实验)
清空回收站
回收站目录 /root/.local/share/Trash
第二张图图片显示的回收站的内容
第一张图中显示回收站的两个文件夹 info中存储内容
rm -rf /root/.local/share/Trash/info/*