Linux日常维护常用命令集合整理

作者&投稿:毓蔡 (若有异议请与网页底部的电邮联系)
~

网络命令:

# ifconfig# 显示网络信息,包括IP地址、数据包接收/发送情况

# ifconfig eth0 up# 启动eth0

# vi /etc/sysconfig/network-scripts/ifcfg-eth0 # 更改eth0配置文件

# iwconfig # 显示无线网络信息

# sudo /etc/init.d/network restart | start | stop# 重启网络|启动网络|停止网络

# service network start| service networking restart# 同上

# /etc/network/interfaces# 手动配置网络文件

# ifup interface# 启用网络接口

# ifdown interface# 禁用网络接口

# wget http://xxx.com/xx.tar.gz # 下载

# route -n# 列举内核 IP 路由表,用来解决相关问题

# sudo dhclient# 从DHCP服务器上获取IP地址

# sudo dhclient -r# 从指定的网络接口获取IP 地址

# cat /etc/resolv.conf# 查看DNS 服务器

# iwlist scan# 显示区域内无线网络情况

# lshw -C network# 显示网卡和网络设备驱动信息(需以管理员权限运行)

其他常用命令:

# cat# 把档案串连接后传到基本输出(屏幕)

# more# 类似cat,会以一页一页的显示,space下一页,b上一页,h帮助

# grep# 查找文件里符合条件的字符串,若包含则显示那一列

# tar -zxpf xx.tar.gz# 解压缩

# hostname | cat /etc/sysconfig/network# 查看主机名

# lspci -nn# 以数字和硬件名称方式显示连接到PCI总线的PCI供应商和设备代码

# lsusb# 显示USB设备

# lshw -C usb# 显示USB相关的硬件上的附加信息(适用于USB加密狗)

# yum install XX# yum安装命令

# yum list installed | wc -l | rpm -qa# 查看所有安装的软件包

# chkconfig --list # 列出所有系统服务

# grep on# 列出所有启动的系统服务

# service XX(服务) 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 -t ntfs /dev/sda6 /mnt/win_disk# 挂载sda6至/mnt/win_disk

# unmount /mnt/win_disk# 卸载硬盘

# mount -t iso9660 /dev/cdrom /mnt/cdrom# 挂载光盘

# mount /dev/fd0 /mnt/floppy# 挂载软盘

常用命令归类:

系统

# uname -a | uname -r # 查看内核/操作系统/CPU信息

# lsb_release -a # 查看系统版本信息

# head -n 1 /etc/issue # 查看操作系统版本

# cat /proc/cpuinfo | more /proc/cpuinfo | grep "model name" # 查看CPU信息

# hostname # 查看计算机名

# lspci -tv # 列出所有PCI设备

# lsusb -tv # 列出所有USB设备

# lsmod # 列出加载的内核模块

# env # 查看环境变量

# getconf LONG_BIT # 查看cpu位数(32 or 64)

# more /etc/redhat-release | cat /etc/redhat-release# 查看当前linux的版本信息

# passwd # 修改用户密码

# reboot | Ctrl+Alt+Del | init 6#重启

# shutdown -h now | halt | init 0#关机

资源

# free -m # 查看内存使用量和交换区使用量

# df -h # 查看各分区使用情况

# du -sh 目录名 # 查看指定目录的大小

# grep MemTotal /proc/meminfo # 查看内存总量

# grep MemFree /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 | grep IDE # 查看启动时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

# kill XX进程ID # 终止单一进程

# killall 程序名 # 终止程序的所有进程

# xkill # 终止X-Window程序

用户

# w # 查看活动用户

# id 用户名 # 查看指定用户信息

# last # 查看用户登录日志

# cut -d: -f1 /etc/passwd # 查看系统所有用户

# cut -d: -f1 /etc/group # 查看系统所有组

# crontab -l # 查看当前用户的计划任务

# startx # 启动X桌面

# switchdesk gnome|KDE|..# 切换桌面

服务

# chkconfig --list # 列出所有系统服务

# chkconfig --list | grep on # 列出所有启动的系统服务

程序

# rpm -qa | wc -l # 查看所有安装的软件包

# yum list installed # 同上

# cat -n /root/install.log# 查看系统安装时安装的软件包

# more /root/install.log # 同上

# /.configure # 配置

# make # 编译

# make install # 安装

1、--df –hP 不管文件系统的名字多长,就不折行的输出,这在写监控磁盘使用率的时候很有用

df –hP -P, --portability use the POSIX output format

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 -d yesterday | awk '{print $2" "$3}')" $FILENAME

3、-- sort根据字段来排序,-t 后跟分隔符,-k n(n代表数字)根据第几列来排序,-n 对字符串数字进行排序

sort -t ':' -k 3 -n /etc/passwd //对/etc/passwd文件的uid进行从小到大的排序,如下所示:

station90.example.com# sort -n -t ":" -k 3 /etc/passwd | head -n 3

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 数学运算

station90.example.com# echo "scale=3;1/5" | bc //精确到小数点几位,需要加scale,scale默认值为0

.200

station90.example.com# echo "1.2*8" | bc

9.6

[root@station90 ~]# bc -q //-q --quiet don't print initial banner

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取出第几行的数据

oracle@Station90.example.com/1211 cat 1.txt

1 4

2 5

3 6

oracle@Station90.example.com/1211 awk 'NR==2 {print $2}' 1.txt

5

每隔2s执行一次df –h

watch –n 2 “df –h”

ls –ltrh 人性化的显示输出

rm *删除文件报错,可通过如下方式删除文件

find ./ -type f /tmp/0110.txt

for a in $(cat /tmp/0110.txt);do rm $a;done

tar命令中,参数—files-from很好用,如:

解压tar中特定几个文件,同时使用-C指定解压路径,--files-from后面的文件0110.txt存放要解压的文件名,可进行模糊匹配

tar -zxvf xxxxx.tar.gz -C xxxx/ --files-from 0110.txt

在进行压缩文件的时候,--files-from也是很好用的,如:

对当前路径下的文件保留十天十天,其他的进行删除操作

find ./ -type f –name “emcm*” –mtime +10 /tmp/0110.txt

tar –zcvpf xxxxx.tar.gz –files-from /tmp/0110.txt

for a in $(cat /tmp/0110.txt);do rm $a;done

5、split分割文件和合成文件

split -b 70m xxx.tar.gz xxx.tar.gz_

因网络原因,将导出文件分割为70M,在您下载了所有文件后,执行如下命令进行合成文件:

cat xxx.tar.gz_aa xxx.tar.gz_ab xxx.tar.gz_ac xxx.tar.gz_ad xxx.tar.gz

若您需要在windows上合成,如您下载文件到d盘,执行如下命令:

C:/Users/Administratord:

d:/copy /b "xxx.tar.gz_aa"+"xxx.tar.gz_ab"+"xxx.tar.gz_ac"+"xxx.tar.gz_ad" xxx.tar.gz

6、查看进程打开了多少个文件句柄,取前3

[root@squid ~]# lsof -n | awk '{print $2}' | sort| uniq -c | sort -nr | head -n 3

128 6618

58 9945

55 9883

7、批量更改操作系统用户密码

chpasswd 1.txt

cat 1.txt

test1:$%uK83Re

test2:$#rK8e78

test3:#rH9e3R

8、当时同事正在做一些操作,可能导致存储有问题,只要能在存储上创建文件,则说明存储还是OK的,这时候的工作就是时不时的去多台服务器上去创建文件,简单重复但很累,就写下面的脚本代替:

脚本作用:若不能创建文件则发出响声报警echo $'/a'

#!/bin/bash

for i in {1..10000}

do

sleep 3

echo "xxxxxxxxxxxxxxxxxxxxx" lhf_$i.txt

if [ $? -eq 0 ];then

echo "ok"

else

echo "failure"

echo $'/a'

fi

done

9、tac 倒着看文本,如要看最新的message日志就挺方便的

tac /var/log/message | less

10、grep 参数-A,-B,-C

-A 1 取当前行和所筛选值的后一行

-B 1 取当前行和所筛选值的前一行

-C 1 取当前行和所筛选值的上下行

station90.example.com:~/1205 # cat grep.txt

1

2

3

4

5

6

station90.example.com:~/1205 # cat grep.txt | grep -B 1 4 //取当前行和所筛选值的前一行

3

4

station90.example.com:~/1205 # cat grep.txt | grep -A 1 4 //取当前行和所筛选值的后一行

4

5

station90.example.com:~/1205 # cat grep.txt | grep -C 1 4 //取当前行和所筛选值的上下行

3

4

5

11、grep –l –r参数

搜索含有keyword关键字文件,-l只列出含有关键字的文件名,-r递归

grep -l -r keyword ./

12、grep 参数–x –w

cat 1.txt | grep –x 192.168.1.1匹配的是行,只有这一行只有192.168.1.1的时候才进行匹配

cat 1.txt | grep –w 192.168.1.1匹配的词组,只要这一行有192.168.1.1就是匹配的

13、grep –f 后跟文件名,如:

Cat 1.txt | grep –f 2.txt 2.txt内容中的每一行都会在1.txt进行匹配下,如果1.txt文件中有匹配的,则1.txt文件将显示匹配内容,如果2.txt和1.txt的文件都很大,是很消耗性能的

14、更改用户的uid和组的gid

usermod –u uid 用户名

groupmod –g gid 组名

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 -i mv {} {}.bak

2、在文件中,查询关键字的信息

find . -name '*.CDR'|xargs grep '关键字'

17、awk用法

awk –F指定分隔符,默认的分隔符为空格,如

以|作为分隔符,取第九列

awk -F '|' '{print $9}' 1.txt

18、批量取文件所在的绝对路径dirname,文件名须不带空格

station90.example.com~ # cat 1.txt

/etc/ATAEV100R002C03SPC200/sles10sp2_x64.properties

/etc/ATAEV100R002C03SPC200/1206/task.properties

/etc/DIR_COLORS

station90.example.com:~ # for i in $(cat 1.txt);do dirname $i;done

/etc/ATAEV100R002C03SPC200

/etc/ATAEV100R002C03SPC200/1206

/etc

19、批量取文件名basename

station90.example.com~# for i in $(cat 1.txt);do basename $i;done

sles10sp2_x64.properties

task.properties

DIR_COLORS

netcontrol_global_hooks

20、rsync传输文件

rsync –avH –n –delete ./ oracle@192.168.15.28:/home/oracle/

-n 并不会真正的传输,只是一种测试

-a示以递归方式传输文件,并保持所有文件属性

--delete 如果远程文件和被传输的目录文件不同,则删除(谨慎使用)

后续继续更新,现在脑袋就先想到了这些,朋友们觉得好的,就留言给我,我一并整出来,一起进步!!!




Linux日常维护常用命令集合整理
# getconf LONG_BIT # 查看cpu位数(32 or 64) # more \/etc\/redhat-release | cat \/etc\/redhat-release# 查看当前linux的版本信息 # passwd # 修改用户密码 # reboot | Ctrl+Alt+Del | init 6#重启 # shutdown -h now | halt | init 0#关机 资源 # free -m # 查看内存使用量和交换区使用量 #...

linux系统运维工作内容?
Linux运维分为初级、中级、高级,级别不同负责的工作内容不同。初中级运维的日常涉及工作:1、评估产品需求及发展需求,设计网站架构。2、选择IDC公司、云产品,CDN等产品。3、采购服务器、安装系统、配置服务、服务器IDC上架。4、调试网络、优化系统及服务。5、上线代码、配合研发搭建环境、调试、测试代码。

Linux运维每天都做什么工作?
Linux运维每天主要负责的工作:1.每天登陆系统查看系统运行的负荷如何,有无报错日志或报警日志。2.操作系统故障排除,依据操作系统故障日志分析出现该报警或报错的原因,从而解决问题,保证操作系统的高可用性。3.服务器状态确认,服务器上除了跑着操作系统,必然会安装一些应用程序或数据库,运维工程师每天需要...

如何做好Linux服务器安全维护
七、保持更新,补丁管理 Linux作为一种优秀的开源软件,其稳定性、安全性和可用性有极为可靠的保证,世界上的Linux高手共同维护着个优秀的产品,因而起流通渠道很多,而且经常有更新的程序和系统补丁出现,因此,为了加强系统安全,一定要经常更新系统内核。

Linux实现日常服务器维护管理工作,如配置文件被更改清单,软件包更新...
Linux 中没有一个标准的配置文件格式 Red Hat Linux 系统中大多数配置文件都在 \/etc 目录中 配置文件也分好多种呢 一。访问文件 1.\/etc\/host.conf 告诉网络域名服务器如何查找主机名。(通常是 \/etc\/hosts,然后就是名称服务器;可通过 netconf 对其进行更改)2.\/etc\/hosts 包含(本地网络中)...

IT运维中的linux运维具体每天工作是做什么的?
20% ,处理紧急重要的事情。80% ,开展重要不紧急的事情的工作。紧急重要很容易理解,其实就是救火类工作。重要不紧急的工作,才是最能体现运维的价值的工作。监控系统,这个是一个大话题。除了被动地监控各类服务的正常与否,还有主动开发各类协助系统分析的系统,并对整个系统的未来有规划性。性能调优,...

关于Linux\/Unix服务器维护的详细介绍
Linux\/Unix服务器维护 1、Unix服务器维护(服务器由我们全权维护,也是对您来说最放心的服务)Unix服务器安全配置,WEB服务器环境配置,其它应用程序安装配置,网站安全检测和清马,杀毒软件、防火墙安装、数据备份、迁移、程序升级等。负责您服务器和网站的各方面技术处理和日常维护(除网站程序代码的修改和...

Linux运维都做什么工作?
1、对Linux下各种网络服务、应用系统、监控系统等进行版自动化脚本开发的工作权,并根据项目对系统进行性能优化;2、负责网站项目中Linux服务器的部署与维护,解决Linux系统下版本兼容性问题;3、精通linux操作系统,熟练部署和维护Linux服务器以及在linux服务器上架设各种服务;4、熟练编写shell script脚本;5...

linux系统运维工作内容?
linux系统运维一般RedHat的比较多,其次Ubuntu的现在也开始有了。维护其实主要就是确保服务器上跑的进程服务,能安全高效稳定的运行。首先要了解各种服务的配置,如FTP,DNS,APACHE,IPTABLE,ORACLE,MYSQL等。对服务器状态进行监控,如CPU内存占用,进程僵死崩溃,磁盘空间,异常登陆等。还要对系统进行升级,...

Linux运维工程师的岗位职责
Linux运维工程师的岗位职责1 职责:1.负责服务器的搭建、部署、监控、调优、升级、日常维护和管理工作;2.负责处理系统方面日常变更、控制突发情况,对疑难问题进行分析并解决;3.支持服务器系统部署、应用调整和优化,提高操作效率,增强系统可用性;4.云台与产品发布迭代,升级部署。任职要求 1.了解各种...

筠连县13114484734: linux常用命令有哪些? -
斗转新鱼: linux常用命令有pwd命令、cd命令、ls命令、cat命令、grep命令、touch命令、cp命令、mv命令、rm命令、rmdir命令等.linux常用命令: 1、 pwd命令 该命令的英文解释为print working directory(打印工作目录).输入pwd命令,Linux会输出当...

筠连县13114484734: linux的常用命令有那些 -
斗转新鱼: ls 查看目录或者文件的属*;whereis;查看所用用户的使用资料 finger root /创建netseek这个目录 19,相当与DOS下的cls;/将这个解压到nmap-3:/. 8: mkdir netseek /. cd 改变当前目录 pwd 查看当前所在目录完整路径 eg, g 表示文件文件所在组...

筠连县13114484734: 常用的Linux命令有哪些?
斗转新鱼: PWD 显示当前目录 CD 在目录之间移动 LS 显示目录内容 touch 生成空文件 cp 复制文件 mv 移动文件,或改变文件名 rm 删除文件和目录 mkdir 生成目录 rmdir 删除目录 管理文件 file cat head tail more less 操纵文件 wc find locate slocate grep

筠连县13114484734: linux 操作系统 常用 命令 有哪些? -
斗转新鱼: 一. 启动,关机,登入,登出相关命令 <login> 登录 <logout> 登出 <exit> 登出 <shutdown> 停止系统 <halt> 停止系统 <reboot> 重启动 <poweroff> 切断电源 <sync> 把内存里的内容写入磁盘 <lilo> 安装lilo启动管理程序 <grub> 安装lilo启动管理程序 ...

筠连县13114484734: linux 操作系统 常用 命令 有哪些 -
斗转新鱼: 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘...

筠连县13114484734: linux系统管理常用命令有哪些呢?
斗转新鱼: 进程与服务管理 1.ps 以静态快照方式输出当前运行的进程的状态统计数据 格式:... 编辑特别推荐: linux系统管理常用命令 (1) linux系统管理常用命令 (2) linux系统...

筠连县13114484734: linux系统管理常用命令有哪些?
斗转新鱼: 文件和目录管理 1.pwd 显示当前用户所在的工作目录 pwd -p /*显示链接到的真实路... 编辑特别推荐: linux系统管理常用命令 (1) linux系统管理常用命令 (2) linux系统...

筠连县13114484734: 求linux的常用命令!!!
斗转新鱼:su su命令是最基本的命令之一,常用于不同用户间切换.例如,如果登录为 user1,要切换为user2,只要用如下命令: $su user2 然后系统提示输入user2口令,输入正确的口令之后就可以切换到user2.完成之后就可以用exit命令返回到user1....

筠连县13114484734: Linux 命令大全 -
斗转新鱼: 一. 启动,关机,登入,登出相关命令登录登出登出停止系统二. Shell相关命令 ......更多: http://wenku.baidu.com/view/5eb510fc700abb68a982fbb2.html

筠连县13114484734: linux,unix常用基本命令
斗转新鱼: 1. tar 压缩文件夹 tar zcvf archive_name.tar dirname/1 解压文件夹 tar xvf archive_name.tar1 grep 在文件中查找字符串 不区分大小写 grep -i "the" demo_file1 输出成功匹配的行,以及该行之后的三行 grep -A 3 -i "example" demo_text1 在一个...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网