linux常用命令
Linux常用命令记录
Virt-clone -o centos7.x -n test-clone -f /var/lib/libvirt/images/test-clone.qcow2很实用,克隆虚拟机,但是好像只能同时存在2个虚拟机,
系统故障信息路径 /var/crash/127.0.0.1-xxxxxx/vmcore-dmesg.txt,可以用cat命令查看
Ifconfig -a eth0是ip
Zip -q -r xxx.zip /root/1234/ 将/home/1234/这个目录下所有文件和文件夹打包为当前目录下的xxx.zip
tar xivf fio-2.1.10.tar.gz 解压文件!
tar -zxvf 目录文件名.tar.gz 解压文件 解压一个tar
unzip xxxxx.zip 解压zip格式文件
rpm -ivh xxxx.rpm 解压并安装rpm压缩包
rpm -qa 显示已安装的包
Cat /sys/devices/system/cpu/cpu/cpufreq/scaling_driver 看驱动模式 acpi-cpufreq intel-pstate模式
Cat /sys/devices/system/cpu/cpu/cpufreq/scaling_governor 看是powersave performance ondemand 模式
ondemand指的是平时以低速方式运行,当系统负载提高时候自动提高频率
以这种模式运行不会因为降频造成性能降低,同时也能节约电能和降低温度。
Cpupower frequency-set -g powersave 更改cpu模式 注意空格! 前面也可以价格,因为可能重启后会恢复
Vi /etc/default/grub 添加intel_pstate=disable 就是acpi模式,删掉就是intel模式 接着执行下一条
Grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg 更改开机启动参数后用这一条使更改有效,并重启
uname命令用于查看系统内核版本等信息 cat /proc/version 也可以
查看系统的内核名称、内核发行版、内核版本、节点名、硬件名称、硬件平台、处理器类型、操作系统等信息
-a: 查看系统所有相关信息
-r: 查看内核版本
-s: 查看内核名称
举例: 查看内核版本 uname -r
3.10.0-327.el7.x86_64 主版本是3 次版本是10 修订版本0-327
turbostat --show Bzy_MHz quiet sleep 5 查看cpu频率5秒
turbostat 持续查看cpu频率
U盘装系统
去rufus.ie下载软件下来,然后插入U盘,选择镜像,刻录,几乎没有什么多余操作
目前已知问题是新版本的系统会提示说要下载syslinux,然后还下载不下来,提示请求超时,暂时无解
Linux os下查询是否开启安全模式
Mokutil –sb-state
Dmesg| tee dme.log 既可以显示又可以保存log
Iftop 统计流量 -i设定监测的网卡,如:# iftop -i eth1 默认一定会监控某个网口
安装 wondershaper: 限制单网口流量作用
sudo apt-get install wondershaper
示例: $ sudo wondershaper eth0 1000 500 (限制eth0网卡下载速度100K,上传速度50K)
示例: $ sudo wondershaper clear eth0 (清除eth0网卡的网速限制)
一:关键字
Linux命令 根据关键字查询日志
1.单个文件可以使用vi或vim编辑器打开日志文件,使用编辑器里的查找功能。在查看模式下,符号/后面跟关键字向下查找,符号?后面跟关键字向上查找,按n查找下一个,按N查找上一个。
2.多个文件可以使用grep命令,比如 grep ERROR /var/log/messages*。会把匹配到ERROR这个关键字的行和所在的日志文件直接输出到屏幕。
3.还可以使用cat命令后面使用grep过滤等方法,不如上面两个实用。上面两个较常用。
vim找到指定行数
:20000 就可以到2w行
-c
-f<name/descriptor> --follow
显示文件file的最后10行:
tail file
显示文件file的内容,从第20行至文件末尾:
tail +20 file
显示文件file的最后10个字符:
tail -c 10 file
一直变化的文件总是显示后10行(使用最多):
tail -f 10 file
显示帮助信息:
tail --help
windows查询文件md5
不用软件,可以用window自带的命令行,首先在一个目录下按住Shift点击鼠标右键,调出CMD界面(或者直接win+R,cmd),命令行如下:
certutil -hashfile file MD5
file可以给绝对路径,也可以给相对路径
linux修改主机名
第一种方法
vim /etc/hosts
xx.xx.xx.xx source.xx.com
vim /etc/hostname
source
bash即刻生效
第二种方法
vim /etc/hosts
xx.xx.xx.xx source.xx.com
hostnamectl set-host "source" 设置主机名
hostnamectl查询
bash即刻生效
nohup介绍
nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
语法格式
nohup Command [ Arg … ] [ & ]
参数说明:
Command:要执行的命令。
Arg:一些参数,可以指定输出文件。
&:让命令在后台执行,终端退出后命令仍旧执行。
实例
以下命令在后台执行 root 目录下的 runoob.sh 脚本:
nohup /root/runoob.sh &
在终端如果看到以下输出说明运行成功:
appending output to nohup.out
这时我们打开 root 目录 可以看到生成了 nohup.out 文件。
如果要停止运行,你需要使用以下命令查找到 nohup 运行脚本到 PID,然后使用 kill 命令来删除:
ps -aux | grep "runoob.sh"
nohup lscpu &
会在后台运行,也不会输出信息到控制台,会把信息放在nohup.out
2>&1介绍
Linux shell中2>&1的含义解释 (全网最全,看完就懂)
在一条命令执行后执行echo $? ,如果为1则异常,为0则正常
含义:将标准错误输出重定向到标准输出(本来输出有问题,重定向一下改为无问题输出)
符号>&是一个整体,不可分开,分开后就不是上述含义了。
http://t.csdn.cn/u8zaV
标准输入(stdin) 0 < 或 <<
标准输出(stdout) 1 >, >>, 1> 或 1>>
标准错误输出(stderr) 2 2> 或 2>>
从上表看的出来,我们平时使用的
echo "hello" > t.log
lscpu > lscpu.log
其实也可以写成
echo "hello" 1> t.log
lscpu 1> lscpu.log
linux执行命令后无任何输出,无报错 解决方法
输入echo $? 显示0
ethtool -i eth1 2>&1
ethtool -i eth1 2>&1 > eth.log
nohup ethtool -i eth1 &
cat nohup.out
以上,无作用,未完待续
关于文件权限介绍
4+2+1=7
r=4
w=2
x=1
rwx=7
r-x=5
r-x=5
3个字母一组,d不用管
drwxr-xr-x=rwx r-x r-x
root用户下新建个文件touch temp
权限是-rw-r--r--,就是644
chmod +x temp
权限是-rwxr-xr-x-,就是755,拥有可执行权限
Cd / 是根目录,
Cd /root 是home目录,所以说可以直接cd /root/Desktop
Cd home 很奇怪,好像不是home文件夹,是一个新的,上一级是 /
按i键可以编辑文件,进入insert模式
按:q退出
:wq保存编辑并退出
:wq!保存编辑强制退出
:q! 退出vi,但不保存更改
Rm * 本目录下所有文件 rm -rf *
Rm -rf xxxx.xxxx 删除某个文件
./文件名;执行当前目录下的文件
Cp XXX /root/Desktop 复制XXX到/root/Desktop下 前提要cd到你要复制的文件目录下
Md5 XXX /root/Desktop/XXX MD5校验,前提要cd到你要复制的文件目录下
Ipmitool lan print 1 显示ip BMCip
设置fan为手动模式,且设置所有fan胡PWM为30%
Ipmitool raw 0x34 0x28 2 2 30
Ipmitool raw 0x34 0x28 2 4 30
Ipmitool raw 0x34 0x28 2 6 30
Ipmitool raw 0x34 0x28 2 8 30
1°C=33.8°F
5°C-45°C
41°F-113°F
ipmitool sdr elist 查询传感器信息
iostat -d -k
-d 显示磁盘使用情况
-k 以KB的单位显示
-m 以M为单位显示
-x 显示详细信息
-c 显示CPU使用情况
-n 显示nfs使用情况
-N 显示磁盘阵列LVM信息
正常情况下,无压力,肯定是各方面接近于0
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
400 5000 1000
磁盘每秒传输次数(tps)平均约400;每秒磁盘读取约5MB,写入约1MB。
watch 命令以周期性的方式执行给定的命令,并全屏显示执行结果。
watch 是一个非常实用的命令,基本所有的 Linux 发行版都带有。如同名字一样,watch 可以帮助监测一个命令的运行结果,省得我们一遍遍地手动运行。比如 tail 一个 log 文件,ls 监测某个文件的大小变化等。缺省每 2 秒运行一下程序,可以用 -n 或 --interval 来指定间隔的时间。
例如:
watch tail -n 30 xx.log 每隔2秒刷新,log最后30行内容,很实用
查看当前linux系统是处于什么模式,UEFI或者Legacy
【 -d /sys/firmware/efi 】 && echo UEFI || echo BIOS
显示BIOS就是legacy模式,否则就是UEFI(其实就是看/sys/firmware/目录下是否有efi文件夹,有就是uefi,否则就是legacy)
-d 判断目录是否存在,存在为真,不存在为假。
神器网站,centos的所有包集合网站
https://centos.pkgs.org/
https://download-ib01.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/n/
systemctl sel clear 清楚BMC系统日志
ipmitool sel clear 清除BMC系统日志
Ls (英文全拼:list files)命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。
Ll -h xxx 显示xxx文件大小
Du -sh xxx 显示xxx文件夹的大小 显示xxx文件大小 (英文全拼:disk usage)命令用于显示目录或文件的大小。
ls -ll xxx,会显示成字节大小,而
ls- lh xxx 会以KB、MB等为单位进行显示,这样比较直观一些
Lsblk 显示硬盘信息 显示有几块硬盘sda 1块 sdb2块 sdc3块 sd表示是SCSI硬盘
Lsscsi 查看有几块硬盘
Df -h 显示硬盘使用情况(英文全拼:disk free) 命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计
Lsusb 显示USB信息
Lsusb -t 树层级结构输出USB设备
12M 意味着 USB 1.0 / 1.1的速率是 12Mbit/s
480M 意味着 USB 2.0的速率是 480Mbit/s
5.0G,那意味这你有USB 3.0类型接口
Lscpu 查询cpu数量
Lspci 显示所有的pci设备信息
lspci -v/-vv/-vvv:显示详细的pci设备信息,v越多,越详细,当然,上限3个。
Lspci -s(bdf) -vvv 显示网卡详细信息
Lsmod 显示已载入系统的模块:list modules
sudo lspci -vvvx -ns 9b:00.0
./getlog.sh 输出日志?
Cat /etc/redhat-release环境系统版本&内核
Uname -a 环境系统版本&内核
Cat /proc/scsi/scsi RAID卡驱动&固件版本
./storcli64 show
./storcli64 /c0 show
Storcli64命令详细
https://www.cnblogs.com/luxiaodai/p/9878747.html
Xrandr 可以查询服务器支持的最大最小分辨率
xrandr --output default --mode "1920x1080"
即可变为1920x1080的分辨率。
进入操作系统运行dmidecode命令,检查SMBIOS的配置信息结构的Type类型,有结果
(执行命令后正确显示SMBIOS信息结构的Type类型按规范填写)
Dmidecode -t 0 查询BIOS信息
Dmidecode -t 1 查询单板信息
Dmidecode -t 4 查询CPU Core Count 信息
Dmidecode -t 7 查询CPU cache 信息
Dmidecode -t 9 查询PCIE网卡信息
Dmidecode -t 19 查询内存容量
dmidecode -t 41,查询板载网卡信息
dmidecode -t 41,查询RAID卡信息
ethtool -i ens2f0 确认bus
lspci |grep Ethernet 查看bus
Free 删除虚拟机后内存变化优先使用这个查询
Free -h 可以查看当前内存使用状况 以G为单位显示内存使用情况,其实和free一样
Free -m 查看当前虚拟机的设置的内存情况 以MB为单位显示内存使用情况
Dmesg -c 清除报错信息后再操作并再查看是否有报错信息
Grep 正则表达式/查找字符串 egrep和grep的区别在于同时查询多个字符串
Dmesg|egrep -i “error|fail|warn” 虚拟机下载dmesg信息 -i表示忽略字符大小写区别
Who -r 查看当前级别
grep Running\ Benchmark xxx.log 查询带空格的字符串,可以用\ 符号来转义空格符
两台服务器之间发送和接收文件的选择
Scp命令用于
浙公网安备 33010602011771号