心之所向,皆可身往。

常用linux命令

killall

yum install psmisc

dmesg|grep -i err

yum list installed | grep kubernetes
yum -y remove cri-tools.x86_64 kubeadm.x86_64 kubectl.x86_64 kubelet.x86_64 kubernetes-cni.x86_64
yum list installed | grep docker
yum -y remove docker-ce.x86_64 docker-ce-cli.x86_64 containerd.io.x86_64

安装 yum-complete-transaction

yum install yum-utils

运行 yum-complete-transaction

yum-complete-transaction –cleanup-only

清除可能存在的重复包

package-cleanup –dupes

清除可能存在的损坏包

package-cleanup –problems

kubeadm reset -f
modprobe -r ipip
lsmod
rm -rf ~/.kube/
rm -rf /etc/kubernetes/
rm -rf /etc/systemd/system/kubelet.service.d
rm -rf /etc/systemd/system/kubelet.service
rm -rf /usr/bin/kube*
rm -rf /etc/cni
rm -rf /opt/cni
rm -rf /var/lib/etcd
rm -rf /var/etcd
yum clean all
yum remove kube*

cat /dev/null > /var/log/boot.log
cat /dev/null > /var/log/btmp
cat /dev/null > /var/log/cron
cat /dev/null > /var/log/dmesg
cat /dev/null > /var/log/firewalld
cat /dev/null > /var/log/grubby
cat /dev/null > /var/log/lastlog
cat /dev/null > /var/log/mail.info
cat /dev/null > /var/log/maillog
cat /dev/null > /var/log/messages
cat /dev/null > /var/log/secure
cat /dev/null > /var/log/spooler
cat /dev/null > /var/log/syslog
cat /dev/null > /var/log/tallylog
cat /dev/null > /var/log/wpa_supplicant.log
cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/yum.log
cat /dev/null > /var/adm/sylog
cat /dev/null > /var/log/openwebmail.log
cat /dev/null > /var/log/maillog
cat /dev/null > /var/log/httpd/error_log
cat /dev/null > /var/log/lastlog.log
cat /dev/null > /var/log/dmesg.log
cat /dev/null > /var/log/rabbitmq
rm -rf /var/log/pods/*
rm -rf /var/log/containers/*

yum install acpid
systemctl start acpid

/etc/systemd/journald.conf

查看占用的磁盘

journalctl –disk-usage

设置占用的磁盘空间,日志量大于这些后自动删除旧的

journalctl –vacuum-size=512M

2d之前的自动删除

journalctl –vacuum-time=2d

查看系统内核日志

journalctl -k

查看系统本次启动的日志

journalctl   -b

journalctl  -b  -0

查看上一次启动的日志

需更改设置,如上次系统崩溃,需要查看日志时,就要看上一次的启动日志。

journalctl  -b -1

查看指定时间的日志

journalctl –since=”2012-10-3018:17:16″

journalctl –since “20 minago”

journalctl –since yesterday

journalctl –since”2015-01-10″ –until “2015-01-11 03:00”

journalctl –since 09:00 –until”1 hour ago”

journalctl –since”15:15″ –until now

显示尾部的最新10行日志

journalctl  -n

显示尾部指定行数的日志

查看的是/var/log/messages的日志,但是格式上有所调整,如主机名格式不一样而已

journalctl -n 20

实时滚动显示最新日志

journalctl   -f

查看指定服务的日志

journalctl  /usr/lib/systemd/systemd

查看指定进程的日志

journalctl   _PID=1

查看某个路径的脚本的日志

journalctl    /usr/bin/bash

查看指定用户的日志

journalctl _UID=33  –since today

查看某个Unit的日志

journalctl  -u nginx.service

journalctl  -u nginx.service  –since  today

实时滚动显示某个Unit的最新日志

journalctl  -u nginx.service  -f

合并显示多个Unit的日志

journalctl  -u nginx.service  -u php-fpm.service  –since today

​查看指定优先级(及其以上级别)的日志

日志优先级共有8级

0: emerg

1: alert

2: crit

3: err

4: warning

5: notice

6: info

7: debug

journalctl  -p err  -b

不分页标准输出

日志默认分页输出–no-pager改为正常的标准输出

journalctl  –no-pager

以JSON格式(单行)输出

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgramming Language, Standard ECMA-262 3rd Edition – December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java,JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。

JSON建构于两种结构:

“名称/值”对的集合(A collection ofname/value pairs):不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组(associativearray)。

值的有序列表(An ordered list of values):在大部分语言中,它被理解为数组(array)。

这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。

例子

以JSON格式(单行)输出

journalctl  -b -u httpd.service  -o json

.以JSON格式(多行)输出,可读性更好,建议选择多行输出

journalctl  -b -u httpd.service  -o json-pretty

显示日志占据的硬盘空间

journalctl  –disk-usage

指定日志文件占据的最大空间

journalctl   –vacuum-size=1G

.指定日志文件保存多久

journalctl   –vacuum-time=1years