系统个人笔记

这篇文章主要介绍了在AIX和Linux系统中如何查看和管理CPU、内存、网络和磁盘等关键资源,包括系统监控、用户管理、网络配置、磁盘挂载、进程控制以及使用yum包管理器等内容。此外,还涵盖了系统诊断、日志分析、脚本编写等相关操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

''

#———————————————————————————

查看是什么系统

uname

#———————————————————————————

机器名:

hostname

#———————————————————————————

序列号:

prtconf | head

#———————————————————————————

型号序列号:

uname -uM

#———————————————————————————

版本号

oslevel

#———————————————————————————

重启AIX系统:

shutdown -Fr

#———————————————————————————

查看centos版本

cat /etc/centos-release

#———————————————————————————

查大小

du -sm * | sort -nr

#———————————————————————————

查看执行文件(路径)

which xx

#———————————————————————————

查看ogg位置

ps -ef|grep rpt

#———————————————————————————

aix批量杀进程

ps -ef | grep xxxx | grep -v grep | awk '{print $2}' | xargs kill -9

(grep -v grep,去除本身grep的条目)

#———————————————————————————

打印xxxx换行

printf "xxxx\n"

#———————————————————————————

将ls的内容设置为i

然后将i mv 改为 i.bak

for i in `ls`;do mv $i $i.bak; done

#———————————————————————————

使用命令# --没懂

lsdev -Cc memory

#———————————————————————————

再使用命令# --没懂

lsattr -El xxxx

#———————————————————————————

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

CPU

top:

us 用户空间占用CPU百分比

sy 内核空间占用CPU百分比

ni 用户进程空间内改变过优先级的进程占用CPU百分比

id 空闲CPU百分比

wa 等待输入输出的CPU时间百分比

hi 硬件中断

si 软件中断

#———————————————————————————

逻辑数:(最常用)

cat /proc/cpuinfo| grep "processor"| wc -l

物理数:

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

核数:

cat /proc/cpuinfo| grep "cpu cores"| uniq

#———————————————————————————

逻辑/物理=核

cpu逻辑个数:AIX

pmcycles -m

#———————————————————————————

cpu物理个数 AIX

prtconf|grep Processors

#———————————————————————————

单个cpu信息:AIX

lsattr -E -l proc0

#———————————————————————————

cpu频率:AIX

lsattr -El proc0

prtconf -s

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

内存

free -g

cat /proc/meminfo

#———————————————————————————

sawp:

lvdisplay (不会用)

swapon -s

#———————————————————————————

看内存 AIX

svmon -G

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

IO

1秒查看一次io状态

iostat 1

#———————————————————————————

查看io

iostat -d -x -m 1 100 linux

#———————————————————————————

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

服务器用户

#———————————————————————————

--创建用户名为aaa的用户

sudo useradd -m aaa

#———————————————————————————

输入用户aaa的密码

sudo passwd aaa

#———————————————————————————

给新用户添加crontab权限

vim /etc/cron.allow

/etc/cron.deny

#———————————————————————————

查看系统用户:

cat /etc/passwd

查看某个用户进程

ps aux| grep 用户

#———————————————————————————

修改服务器名字

hostnamectl set-hostname xxxx

刷新主机名

exec bash

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

查看是虚拟机还是物理机

https://mp.weixin.qq.com/s/u0BaLY_MObmGB-qcxrxRVQ

1、显示全信息

dmidecode -t 1

2、显示服务器

dmidecode -s system-manufacturer

3、虚拟机的话会返回信息

virt-what

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

网络

DEVICE:网卡名称(一定是写eth0)

ONBOOT=yes(相当于启动这个网卡的开关,你要用eth0这个一定要yes,表示开)

BOOTPROTO=none

这个是表示你使用什么样的路由协议,有三种不同写法,

如果是none和static表示你用的是静态路由,那么你在接下来的项目里就必须填写IPADDR、NETMASK、GATEWAY这三个选项。

如果是dhcp表示你使用动态路由协议,那IPADDR、NETMASK、GATEWAY这些选项就可以不必填写。如果填写了,就以你填写的值为准

HWADDR:你网卡的物理地址(可以不用写,系统自动会生成)

IPADDR:ip地址

NETMASK:子网掩码

GATEWAY:网关

#———————————————————————————

重启网络服务

service network restart

#———————————————————————————

当前ip

ip addr

ifconfig

#———————————————————————————

网卡路径

/etc/sysconfig/network-scripts/

#———————————————————————————

查看uuid

cat /proc/sys/kernel/random/uuid

#———————————————————————————

生成新网卡的uuid

uuidgen ensxx

#———————————————————————————

查看ssh端口

netstat -ntlp

#———————————————————————————

查看某某端口被谁使用

lsof -i:5432

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

卷组

查询卷组可用空间:

vgdisplay

#———————————————————————————

查看:free -h

取消sawp空间挂载:

swapoff /dev/mapper/centos-swap

查看:free -h

#———————————————————————————

扩容:

lvextend -L 4G /dev/mapper/centos-swap

(扩展多少需要不超过内存本身)

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

AIX系统监控相关:

AIX实际ip地址

lsattr -El en0 | grep -w "netaddr" | awk '{print $2}'

#逻辑cpu个数

pmcycles -m | wc -l | awk '{print $1}'

#物理cpu个数

prtconf|grep Processors | awk '{print $4}'

#用户空间占用CPU百分比

vmstat -w | awk 'NR==7{print}' | awk '{print $14}'

#系统占用CPU百分比

vmstat -w | awk 'NR==7{print}' | awk '{print $15}'

#CPU空闲时间比

vmstat -w | awk 'NR==7{print}' | awk '{print $16}'

#CPU因为等待I/O而空闲的时间比

vmstat -w | awk 'NR==7{print}' | awk '{print $17}'

#CPU15分钟前到现在的负载平均值

uptime | awk '{print $13}' | cut -f 1 -d ','

#CPU5分钟前到现在的负载平均值

uptime | awk '{print $12}' | cut -f 1 -d ','

#CPU1分钟前到现在的负载平均值

uptime | awk '{print $11}' | cut -f 1 -d ','

#物理内存总量

svmon -G | grep memory | awk '{print $2}'

#操作系统已使用内存总量

svmon -G | grep memory | awk '{print $3}'

#操作系统未使用内存总量

svmon -G | grep memory | awk '{print $4}'

#磁盘I/O统计信息

iostat -d

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

正常挂载

mount -o loop /挂载文件位置/xx.iso /挂载位置

永久挂载

编辑挂载文件:

vi /etc/fstab

+内容

/CentOS-7-x86_64-Everything-2009.iso /mnt iso9660 loop 0 0

#———————————————————————————

系统路径

if [ "`uname`" = "Linux" ]; then

. ~/.bash_profile

else

. ~/.profile

fi

--

.profile

添加:

export PGHOME=/usr/local/postgresql

source .profile

cd $PGHOME就到/usr/local/postgresql/下了

(修改失败后↓执行,在vim改回原文件)

export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

配置yum:

/etc/yum.repos.d/路径下

首先参数意义:

(

[CentOS7] //yum的ID,本地唯一,用于区分不同yum源

name=CentOS-server //描述信息

baseurl=file:///mnt //前面的file://是协议,后面的/mnt是光盘挂载点

enabled=1 //1启用yum源,0禁用yum源

gpgcheck=0 //1使用公钥验证rpm包的正确性,0不验证

)

#———————————————————————————

关闭所有的源

/etc/yum.repos.d/CentOS-Base.repo和其他yum配置文件中,都添加上enabled=0

#———————————————————————————

再vi /etc/yum.repos.d/CentOS-Media.repo中,改为:

[c7-media]

name=CentOS-$releasever - Media

baseurl=file:///mnt/

gpgcheck=0

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#———————————————————————————

配置网络yum

mv CentOS-Base.repo CentOS-Base.repo.bak

本机在rpm文件夹中有Centos-7.repo,上传到服务器,代替原来的repo

mv Centos-7.repo /etc/yum.repos.d/CentOS-Base.repo

#———————————————————————————

清理yum和chache文件

yum clean all

rm -rf /var/cache/yum/

重新生成yum cache

yum makecache

成功会返回Metadata Cache Created。(元数据缓存已建立)

enabled=0

#———————————————————————————

安装命令:

yum search xx

例如:ifconfig

根据最下面一行下载安装

yum install xx

例如:yum install net-tools.x86_64

#———————————————————————————

http://rpm.pbone.net/

rpm -i 安装

rpm -ivh 安装显示备注

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

装机必关1、2、3

1、永久关闭防火墙

systemctl disable firewalld.service

停止firewalld服务运行

systemctl stop firewalld

禁用firewalld服务自启动

systemctl disable firewalld

#———————————————————————————

2、永久关闭网络管理服务

systemctl disable NetworkManager

禁止开机启动

chkconfig NetworkManager off

关闭

service NetworkManager stop

#———————————————————————————

3、关闭selinux

进入到/etc/selinux/config文件# vim /etc/selinux/config

SELINUX=enforcing改为SELINUX=disabled,重启生效

禁用selinux自启动

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

立即停止selinux

setenforce 0

#———————————————————————————

停止avahi-daemon服务

systemctl stop avahi-daemon

禁用avahi-daemon服务的自启动

systemctl disable avahi-daemon

配置NOZEROCONF参数

echo 'NOZEROCONF=yes' >> /etc/sysconfig/network

(avahi-daemon服务可能会在网卡流量大的时候,造成网络请求障碍,因此禁用它。)

#———————————————————————————

配置启动禁用透明大页和NUMA

sed -i 's/quiet/quiet transparent_hugepage=never numa=off/' /etc/default/grub

生成启动规则

grub2-mkconfig -o /boot/grub2/grub.cfg

然后重启

reboot

(Oracle官方文档中指出透明大页可能会导致在RAC中造成性能影响,因此关闭透明大页。)

#———————————————————————————

停止NTP服务

systemctl stop ntpd

禁用NTP服务自启动

systemctl disable ntpd

(Oracle会在安装时检测是否有NTP服务,如果有,

则会认为你的服务器是使用NTP来同步节点时间的,

会将自身的CTSS服务配置成观察状态;

如果检测到没有NTP服务,则会使用CTSS服务来同步时间。

CTSS服务会将安装Grid软件的那台来作为主节点,

然后让集群的其他节点时间与主节点的时间进行同步。

禁用NTP服务,使用Oracle的CTSS服务来同步节点的时间。)

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

LSVG

看有哪些卷组

lsvg

(linux:vgdisplay)

查看具体某个卷组信息

lsvg xx

#———————————————————————————

--看看有哪些物理磁盘

lspv

hdisk0 00c3ee9e3439bc67 rootvg active

hdisk1 00c3ee9e5033384d rootvg active

hdisk2 00c3ee9eae48cc48 rootvg active

hdisk3 00c3ee9eae48df75 rootvg active

--看hdiskx上挂载了那些逻辑卷

lspv -l hdiskx

#———————————————————————————

solaris

format

#———————————————————————————

查看盘日志

cat /var/adm/messages

查看掉盘记录

cat /var/adm/messages |grep loghost

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

FIND

#———————————————————————————

find . -name xx

#———————————————————————————

查找ZIP文件 在xx-xx时间内生成的

find . -name *.zip -newermt '2022-06-01 00:00:00' ! -newermt '2022-06-02 12:00:00'

#———————————————————————————

删除2天前的东西:

find /jdlj -mtime +2 -name "*.*" -exec rm -f {} \;

#———————————————————————————

删除3天前的trc文件:(如果是solars+3就是4天前的)

find . -name \*.trm -mtime +3 -exec rm {} \;

#———————————————————————————

# 查找存在时间超过3天的属于jacklee的文件

find / -ctime +3 -user jacklee

-atime [+|-]#

-mtime [+|-]#

-ctime [+|-]#

#———————————————————————————

AIX机器查询

find ~ -name "scnmonitor.sql" -print

#———————————————————————————

# 解读:

-# 表示[0,#)

# 表示[#,#+1)

+# 表示[#+1,∞]

#———————————————————————————

# 实例:比如 #=3的含义如下

-3 表示 3个24h之内 (系统称之为三天内)

3 表示 第4个24h期间内 (系统称之为是第三天)

+3 表示 超过4个24h (系统称之为是超过三天)

#———————————————————————————

# 默认格式是小时,指定分钟格式:

-amin

-mmin

-cmin

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

CAT

+行数看

cat xx |grep -n xx > xx.log

cat -n xx.log

#———————————————————————————

显示文件前面10行

cat filename | head -n 10

#———————————————————————————

从10行开始显示

cat filename | tail -n +10

#———————————————————————————

cat截取日志 $0是第几列,时间自己选

cat xx.log | awk '$0 >="2023-03-17 08:55:00" && $0 <="2023-03-17 09:02:02"' > zcj01.log

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

zip xx.zip xxxxx

#———————————————————————————

解压tar包gz

gunzip -c zjff_20220526.dmp.gz | tar -xvf -

linux

tar -xzvf 压缩包文件名.tar.gz

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

unlimit

ulimit -a 列出所有的参数选项

#———————————————————————————

ulimit -H 设置硬件资源限制

#———————————————————————————

ulimit -S 设置软件资源限制

#———————————————————————————

ulimit -n 设置应许打开文件数

#———————————————————————————

修改ulimit参数,配置文件是:/etc/security/limits.conf

格式:

domain:可以是用户或者用户组 *代表所有

type:可以有两个值,soft 和 hard

item:表示要限定的资源 可以有很多候选值,如 stack(最大堆栈大小),cpu(占用cpu的时间),nofile(最大打开文件数) 等等

例:* hard nofile 100 该行配置语句限定了任意用户所能创建的最大文件数是 100。

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

scp

scp xx deployer@10.162.67.189:/路径

反向拽

scp username@remote.com:/from/path/\{a,b,c\} ./

sftp

sftp vsftpd@10.245.1.33

(输密码)

(

sftp> help

可用命令:

cd 路径 更改远程目录到“路径”

lcd 路径 更改本地目录到“路径”

chgrp group path 将文件“path”的组更改为“group”

chmod mode path 将文件“path”的权限更改为“mode”

chown owner path 将文件“path”的属主更改为“owner”

exit 退出 sftp

help 显示这个帮助文本

get 远程路径 下载文件

ln existingpath linkpath 符号链接远程文件

ls [选项] [路径] 显示远程目录列表

lls [选项] [路径] 显示本地目录列表

mkdir 路径 创建远程目录

lmkdir 路径 创建本地目录

mv oldpath newpath 移动远程文件

open [用户@]主机[:端口] 连接到远程主机

put 本地路径 上传文件

pwd 显示远程工作目录

lpwd 打印本地工作目录

quit 退出 sftp

rmdir 路径 移除远程目录

lrmdir 路径 移除本地目录

rm 路径 删除远程文件

lrm 路径 删除本地文件

symlink existingpath linkpath 符号链接远程文件

version 显示协议版本

)

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

脚本

%H 小时,24小时制(00~23)

%I 小时,12小时制(01~12)

%k 小时,24小时制(0~23)

%l 小时,12小时制(1~12)

%M 分钟(00~59)

%p 显示出AM或PM

%r 显示时间,12小时制(hh:mm:ss %p)

%s 从1970年1月1日00:00:00到目前经历的秒数

%S 显示秒(00~59)

%T 显示时间,24小时制(hh:mm:ss)

%X 显示时间的格式(%H:%M:%S)

%Z 显示时区,日期域(CST)

%a 星期的简称(Sun~Sat)

%A 星期的全称(Sunday~Saturday)

%h,%b 月的简称(Jan~Dec)

%B 月的全称(January~December)

%c 日期和时间(Tue Nov 20 14:12:58 2012)

%d 一个月的第几天(01~31)

%x,%D 日期(mm/dd/yy)

%j 一年的第几天(001~366)

%m 月份(01~12)

%w 一个星期的第几天(0代表星期天)

%W 一年的第几个星期(00~53,星期一为第一天)

%y 年的最后两个数字(1999则是99)

#———————————————————————————

输出昨天日期

date -d "1 day ago" +"%Y-%m-%d"

2016-11-29

#———————————————————————————

2秒后输出

date -d "2 second" +"%Y-%m-%d %H:%M.%S"

2016-11-30 10:46.04

#———————————————————————————

时间戳类型的 输出对应的1234567890秒

date -d "1970-01-01 1234567890 seconds" +"%Y-%m-%d %H:%m:%S"

2009-02-13 23:02:30

#———————————————————————————

普通格式

date -d "2016-11-30" +"%Y/%m/%d %H:%M.%S"

2016/11/30 00:00.00

#———————————————————————————

apache格式转换:

date -d "Nov 30, 2016 12:00:37" +"%Y-%m-%d %H:%M.%S"

2016-11-30 12:00.37

#———————————————————————————

格式转换后时间游走:

date -d "Nov 30, 2016 12:00:37 AM 2 year ago" +"%Y-%m-%d %H:%M.%S"

2014-11-30 00:00.37

#———————————————————————————

加减操作

date +%Y%m%d //显示前天年月日

date -d "-1 day" +%Y%m%d //显示前一天的日期

date -d "+1 day" +%Y%m%d //显示后一天的日期

date -d "-1 month" +%Y%m%d //显示上一月的日期

date -d "+1 month" +%Y%m%d //显示下一月的日期

date -d "-1 year" +%Y%m%d //显示前一年的日期

date -d "+1 year" +%Y%m%d //显示下一年的日期

#———————————————————————————

如果需要计算一组命令花费多少时间

start=$(date +"%d")//以时间戳类型保存当前时间

// 执行需要计算的命令

end=$(date +"%d")//以时间戳类型保存当前时间

difference=$(( end - start )) // 相减的结果就是命令执行完需要的时间

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

shell 判断

-gt是大于的意思。

-eq是等于的意思。

-ne是不等于的意思。

-ge是大于等于的意思。

-lt是小于的意思。

-le是小于等于的意思

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

互信:

想要服务器A访问服务器B不输入密码,则需要配置互信,先执行:

ssh-keygen -t rsa

(一直回车即可)

如果已存在,就可以直接输入:

ssh-copy-id hostname或者ip

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Solaris

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

查看交换内存

swap -s

total: 130079280k bytes allocated + 46876976k reserved = 176956256k used, 51073656k available

used / total = %

#———————————————————————————

cpu

prstat -a

#———————————————————————————

vi

echo $TERM linux

TERM=vt100

export TERM

EDITOR=vi

export EDITOR

echo EDITOR

<————————————————————————————————————————————————————————————————————————————————————————————————————————————>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值