您现在的位置: 万盛学电脑网 >> 程序编程 >> 服务器教程 >> 正文

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

作者:佚名    责任编辑:admin    更新时间:2022-06-22

   网络命令:

  # 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,会以一页一页的显示,下一页,上一页,帮助

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

  [email protected]/1211> cat 1.txt

  1 4

  2 5

  3 6

  [email protected]/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也是很好用的,如: