Linux日常维护常用命令.docx
《Linux日常维护常用命令.docx》由会员分享,可在线阅读,更多相关《Linux日常维护常用命令.docx(11页珍藏版)》请在冰豆网上搜索。
Linux日常维护常用命令
网络命令:
#ifconfig#显示网络信息,包括IP地址、数据包接收/发送情况
#ifconfigeth0up#启动eth0
#vi/etc/sysconfig/network-scripts/ifcfg-eth0#更改eth0配置文件
#iwconfig#显示无线网络信息
#sudo/etc/init.d/networkrestart|start|stop#重启网络|启动网络|停止网络
#servicenetworkstart|servicenetworkingrestart#同上
#/etc/network/interfaces#手动配置网络文件
#ifupinterface#启用网络接口
#ifdowninterface#禁用网络接口
#route-n#列举内核IP路由表,用来解决相关问题
#sudodhclient#从DHCP服务器上获取IP地址
#sudodhclient-r#从指定的网络接口获取IP地址
#cat/etc/resolv.conf#查看DNS服务器
#iwlistscan#显示区域内无线网络情况
#lshw-Cnetwork#显示网卡和网络设备驱动信息(需以管理员权限运行)
其他常用命令:
#cat#把档案串连接后传到基本输出(屏幕)
#more#类似cat,会以一页一页的显示,下一页,上一页,帮助
#grep#查找文件里符合条件的字符串,若包含则显示那一列
#hostname|cat/etc/sysconfig/network#查看主机名
#lspci-nn#以数字和硬件名称方式显示连接到PCI总线的PCI供应商和设备代码
#lsusb#显示USB设备
#lshw-Cusb#显示USB相关的硬件上的附加信息(适用于USB加密狗)
#yuminstallXX#yum安装命令
#yumlistinstalled|wc-l|rpm-qa#查看所有安装的软件包
#chkconfig--list#列出所有系统服务
#grepon#列出所有启动的系统服务
#serviceXX(服务)restart|stop|start#重启|停止|启动XX服务
#echo$LANG$LANGUAGE|cat/etc/sysconfig/i18n#查看系统默认语言
硬盘挂载:
#mount-t硬盘类型硬盘挂载点
(硬盘类型:
FAT则是msdos,FAT32则是vfat,NTFS则是ntfs)
#fdisk-l#查看硬盘以及所有使用情况
#mkdir/mnt/win_disk#在/mnt目录下建立挂载点
#mount-tntfs/dev/sda6/mnt/win_disk#挂载sda6至/mnt/win_disk
#unmount/mnt/win_disk#卸载硬盘
#mount-tiso9660/dev/cdrom/mnt/cdrom#挂载光盘
#mount/dev/fd0/mnt/floppy#挂载软盘
常用命令归类:
系统
#uname-a|uname-r#查看内核/操作系统/CPU信息
#lsb_release-a#查看系统版本信息
#head-n1/etc/issue#查看操作系统版本
#cat/proc/cpuinfo|more/proc/cpuinfo|grep"modelname"#查看CPU信息
#hostname#查看计算机名
#lspci-tv#列出所有PCI设备
#lsusb-tv#列出所有USB设备
#lsmod#列出加载的内核模块
#env#查看环境变量
#getconfLONG_BIT#查看cpu位数(32or64)
#more/etc/redhat-release|cat/etc/redhat-release#查看当前linux的版本信息
#passwd#修改用户密码
#reboot|Ctrl+Alt+Del|init6#重启
#shutdown-hnow|halt|init0#关机
资源
#free-m#查看内存使用量和交换区使用量
#df-h#查看各分区使用情况
#du-sh<目录名>#查看指定目录的大小
#grepMemTotal/proc/meminfo#查看内存总量
#grepMemFree/proc/meminfo#查看空闲内存量
#uptime#查看系统运行时间、用户数、负载
#cat/proc/loadavg#查看系统负载
#pwd#查看所在目录
#ls-l#显示目录文件列表(-a:
显示隐藏)
磁盘和分区
#mount|column-t#查看挂接的分区状态
#fdisk-l|df-h#查看所有分区
#swapon-s#查看所有交换分区
#hdparm-i/dev/hda#查看磁盘参数(仅适用于IDE设备)
#dmesg|grepIDE#查看启动时IDE设备检测状况
网络
#ifconfig#查看所有网络接口的属性
#iptables-L#查看防火墙设置
#route-n#查看路由表
#netstat-lntp#查看所有监听端口
#netstat-antp#查看所有已经建立的连接
#netstat-s#查看网络统计信息
#cat/etc/sysconfig/network#查看网关
#cat/etc/resolv.conf#查看DNS
进程
#ps-ef#查看所有进程
#top#实时显示进程状态
#ps-auxw#列举当前进程ID
#killXX进程ID#终止单一进程
#killall程序名#终止程序的所有进程
#xkill#终止X-Window程序
用户
#w#查看活动用户
#id<用户名>#查看指定用户信息
#last#查看用户登录日志
#cut-d:
-f1/etc/passwd#查看系统所有用户
#cut-d:
-f1/etc/group#查看系统所有组
#crontab-l#查看当前用户的计划任务
#startx#启动X桌面
#switchdeskgnome|KDE|..#切换桌面
服务
#chkconfig--list#列出所有系统服务
#chkconfig--list|grepon#列出所有启动的系统服务
程序
#rpm-qa|wc-l#查看所有安装的软件包
#yumlistinstalled#同上
#cat-n/root/install.log#查看系统安装时安装的软件包
#more/root/install.log#同上
#/.configure#配置
#make#编译
#makeinstall#安装
1、--df–hP不管文件系统的名字多长,就不折行的输出,这在写监控磁盘使用率的时候很有用
df–hP-P,--portabilityusethePOSIXoutputformat
2、--在/var/log/messages筛选昨天和今天的错误日志
cat/var/log/messages|grep-iE'warning|panic|error|exception|fail'|grep"$(date|awk'{print$2""$3}')">>$FILENAME
cat/var/log/messages|grep-iE'warning|panic|error|exception|fail'|grep"$(date-dyesterday|awk'{print$2""$3}')">>$FILENAME
3、--sort根据字段来排序,-t后跟分隔符,-kn(n代表数字)根据第几列来排序,-n对字符串数字进行排序
sort-t':
'-k3-n/etc/passwd//对/etc/passwd文件的uid进行从小到大的排序,如下所示:
root:
x:
0:
0:
root:
/root:
/bin/bash
bin:
x:
1:
1:
bin:
/bin:
/bin/bash
daemon:
x:
2:
2:
Daemon:
/sbin:
/bin/bash
4、--bc数学运算
scale默认值为0
.200
9.6
[root@station90~]#bc-q//-q--quietdon'tprintinitialbanner
3*4
12
3/4
0
scale=5
3/4
.75000
[root@station90~]#var1=2
[root@station90~]#echo"scale=5;$var1/3"|bc//bc支持变量
.66666
[root@station90~]#var1=3
[root@station90~]#var2=$(echo"scale=3;$var1/3"|bc)
[root@station90~]#echo$var2
1.000
5、--取出第二行第2列的数据NR取出第几行的数据
14
25
36
5
每隔2s执行一次df–h
watch–n2“df–h”
ls–ltrh人性化的显示输出
rm*删除文件报错,可通过如下方式删除文件
find./-typef>/tmp/0110.txt
forain$(cat/tmp/0110.txt);dorm$a;done
tar命令中,参数—files-from很好用,如:
解压tar中特定几个文件,同时使用-C指定解压路径,--files-from后面的文件0110.txt存放要解压的文件名,可进行模糊匹配
在进行压缩文件的时候,--files-from也是很好用的,如:
对当前路径下的文件保留十天十天,其他的进行删除操作
find./-typef–name“emcm*”–mtime+10>/tmp/0110.txt
tar––files-from/tmp/0110.txt
forain$(cat/tmp/0110.txt);dorm$a;done
5、split分割文件和合成文件
因网络原因,将导出文件分割为70M,在您下载了所有文件后,执行如下命令进行合成文件:
若您需要在windows上合成,如您下载文件到d盘,执行如下命令:
C:
\Users\Administrator>d:
6、查看进程打开了多少个文件句柄,取前3
[root@squid~]#lsof-n|awk'{print$2}'|sort|uniq-c|sort-nr|head-n3
1286618
589945
559883
7、批量更改操作系统用户密码
chpasswd<1.txt
cat1.txt
test1:
$%uK83Re
test2:
$#rK8e78
test3:
#&rH9e3R
8、当时同事正在做一些操作,可能导致存储有问题,只要能在存储上创建文件,则说明存储还是OK的,这时候的工作就是时不时的去多台服务器上去创建文件,简单重复但很累,就写下面的脚本代替:
脚本作用:
若不能创建文件则发出响声报警echo$'\a'
#!
/bin/bash
foriin{1..10000}
do
sleep3
echo"xxxxxxxxxxxxxxxxxxxxx">lhf_$i.txt
if[$?
-eq0];then
echo"ok"
else
echo"failure"
echo$'\a'
fi
done
9、tac倒着看文本,如要看最新的message日志就挺方便的
tac/var/log/message|less
10、grep参数-A,-B,-C
-A1取当前行和所筛选值的后一行
-B1取当前行和所筛选值的前一行
-C1取当前行和所筛选值的上下行
1
2
3
4
5
6
3
4
4
5
3
4
5
11、grep–l–r参数
搜索含有keyword关键字文件,-l只列出含有关键字的文件名,-r递归
grep-l-rkeyword./
12、grep参数–x–w
cat1.txt|grep–
cat1.txt|grep–
13、grep–f后跟文件名,如:
Cat1.txt|grep–f2.txt2.txt内容中的每一行都会在1.txt进行匹配下,如果1.txt文件中有匹配的,则1.txt文件将显示匹配内容,如果2.txt和1.txt的文件都很大,是很消耗性能的
14、更改用户的uid和组的gid
usermod–uuid用户名
groupmod–ggid组名
15、sed用法
1、sed将号码前的86替换成空
sed-i's/^86//g'1.txt
2、将文本中的第115行上面插入xxxxx
sed-i"115i\xxxxx"1.txt
3、在开头加上”,同时将空格替换成\+空格
sed-i-e"s/^/\"/g"-e"s/$/\"/g"-e"s//\\\/g"mdsp_filepath.txt
4、分步写,则为:
sed-i"s/^/\"/g"1.txt
sed-i"s//\\\/g"1.txt
5、在文件内容的末尾加上”
sed-i"s/$/\"/g"1.txt
16、xargs用法
1、批量重命名文件
ls|xargs-imv{}{}.bak
2、在文件中,查询关键字的信息
find.-name'*.CDR'|xargsgrep'关键字'
17、awk用法
awk–F指定分隔符,默认的分隔符为空格,如
以|作为分隔符,取第九列
awk-F'|''{print$9}'1.txt
18、批量取文件所在的绝对路径dirname,文件名须不带空格
/etc/ATAEV100R002C03SPC200/sles10sp2_x64.properties
/etc/ATAEV100R002C03SPC200/1206/task.properties
/etc/DIR_COLORS
/etc/ATAEV100R002C03SPC200
/etc/ATAEV100R002C03SPC200/1206
/etc
19、批量取文件名basename
sles10sp2_x64.properties
task.properties
DIR_COLORS
netcontrol_global_hooks
20、rsync传输文件
rsync–avH–n–
-n并不会真正的传输,只是一种测试
-a示以递归方式传输文件,并保持所有文件属性
--delete如果远程文件和被传输的目录文件不同,则删除(谨慎使用)