• 测试人员常用Linux命令


    1.防火墙
    1) 重启后生效
    开启: chkconfig iptables on
    关闭: chkconfig iptables off
    2) 即时生效,重启后失效
    开启: service iptables start
    关闭: service iptables stop
    查看状态 service iptables status
    
    
    2.关机
    # shutdown -h now #立刻关机
    # shutdown -h 2:30 'halt' #2点30分关机,注意以本机时间为准
    # halt -p #立刻关机
    # init 0 #立即将系统运行级别切换为0,即关机
    # shutdown -r now #立刻重启
    
    
    3.重启
    # shutdown -k now 'reboot' #发出警告讯息,但没有真的关机.
    # shutdown -t10 -r now #立刻重启, 但在警告和删除processes之间,延迟10秒钟.
    # init 6 #立即将系统运行级别切换为6,即重启
    # shutdown -r +10 'reboot' #10分钟后重启
    # shutdown -c #取消之前的shutdown命令
    # shutdown now #切换至单人操作模式(不加任何选项时)
    
    4.修改系统时间
    date 时间窗口
    date -s '2017-08-01 10:10:00' 更改年月日小时分秒
    date -s 10:00:02 只更改时间 不更改年月
    clock -w 写入系统时间
    hwclock 同步bios 时间
    service ntpdate start 开启网络时间同步
    systemctl start ntpdate.service 开启网络时间同步 Red Hat 7
    chkconfig --leves 2345 ntpdate on 开机启动
    
    时区:
    date -R
    tzselect
    
    5、端口
    1、lsof -i:端口号
    2、netstat -tunlp|grep 端口号
    3、netstat -anp|grep 80
    端口启用、停止
    1、开启端口(以80端口为例)
    
    方法一:
    /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 写入修改
    /etc/init.d/iptables save 保存修改
    service iptables restart 重启防火墙,修改生效
    方法二:
    vi /etc/sysconfig/iptables 打开配置文件加入如下语句:
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 重启防火墙,修改完成
    2、关闭端口
    
    方法一:
    /sbin/iptables -I INPUT -p tcp --dport 80 -j DROP 写入修改
    /etc/init.d/iptables save 保存修改
    service iptables restart 重启防火墙,修改生效
    方法二:
    vi /etc/sysconfig/iptables 打开配置文件加入如下语句:
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j DROP 重启防火墙,修改完成
    
    
    6、查看CPU、内存配置
    硬盘: df -h
    CPU、内存: top
    ##CPU型号查看:cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
    ##从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
    ##查看cpu是几核的,也可以用命令显示,4代表就是4核
    cat /proc/cpuinfo |grep "cores"|uniq cpu cores : 4
    ##查看物理CPU的个数,1代表只有一个物理CPU
    cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l
    
    查看显卡:lspci |grep -i vga
    
    7、终端乱码修改
    # vim /etc/sysconfig/i18n
    修改为:
    LANG="en_US.UTF-8"
    SYSFONT="latarcyrheb-sun16"
    
    9.top界面介绍
    第一行:
    13:42:59 当前系统时间
    6 days, 9:29 系统已经运行了6天6小时29分钟(在这期间没有重启过)
    3 users 当前有3个用户登录系统
    load average: 3.06,3.01, 1.79 load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
    load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
    第二行:
    Tasks 任务(进程),系统现在共有131个进程,其中处于运行中的有3个,127个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有1个。
    第三行:cpu状态
    10.6% us 用户空间占用CPU的百分比。
    2.2% sy 内核空间占用CPU的百分比。
    0.0% ni 改变过优先级的进程占用CPU的百分比
    84.5% id 空闲CPU百分比
    2.5% wa IO等待占用CPU的百分比
    0.1% hi 硬中断(Hardware IRQ)占用CPU的百分比
    0.0% si 软中断(Software Interrupts)占用CPU的百分比
    在这里CPU的使用比率和windows概念不同,如果你不理解用户空间和内核空间,需要充充电了。
    第四行:内存状态
    8300124k total 物理内存总量(8GB)
    5979476k used 使用中的内存总量(5.7GB)
    2320648k free 空闲内存总量(2.2G)
    455544k buffers 缓存的内存量 (434M)
    第五行:swap交换分区
    8193108k total 交换区总量(8GB)
    41568k used 使用的交换区总量(40.6M)
    8151540k free 空闲交换区总量(8GB)
    4217456k cached 缓冲的交换区总量(4GB)
    ****内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,
    还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。
    ****可用内存的近似计算公式:第四行的free + 第四行的buffers + 第五行的cached,按这个公式此台服务器的可用内存: 2320648+455544 +4217456 = 6.6GB。
    ****在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。
    第七行以下:各进程(任务)的状态监控
    PID 进程id
    USER 进程所有者
    PR 进程优先级
    NI nice值。负值表示高优先级,正值表示低优先级
    VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
    SHR 共享内存大小,单位kb
    S 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
    %CPU 上+——次更新到现在的CPU时间占用百分比
    %MEM 进程使用的物理内存百分比
    TIME+ 进程使用的CPU时间总计,单位1/100秒
    COMMAND 进程名称(命令名/命令行)
    ********************多U多核CPU监控****************************************************
    在top基本视图中,按键盘数字1,可监控每个逻辑CPU的状况:
    默认进入top时,各进程是按照CPU的占用量来排序的,在【top视图 01】中进程ID为3527的mysqld进程排在第一(cpu占用2%),进程ID为26955的java进程排在第二(cpu占用1%)。
    可通过键盘指令来改变排序字段,比如想监控哪个进程占用MEM最多,我一般的使用方法如下:
    1. 敲击键盘b(打开/关闭加亮效果),top的视图变化如下:
    我们发现进程id为20517的top进程被加亮了,一般为运行状态(runing)的进程才被加亮,可以通过敲击y键关闭或打开运行态进程的加亮效果。
    2. 敲击键盘x(打开/关闭排序列的加亮效果),top的视图变化如下:
    可以看到,top默认的排序列是%CPU。
    3. 通过shift + >或shift + <可以向右或左改变排序列,下图是按一次shift + >的效果图:
    视图现在已经按照%MEM来排序了。
    改变进程显示字段
    1. 敲击f键,top进入另一个视图,在这里可以编排基本视图中的显示字段:
    这里列出了所有可在top基本视图中显示的进程字段,有*并且标注为大写字母的字段是可显示的,没有*并且是小写字母的字段是不显示的。
    如果要在基本视图中显示CODE和DATA两个字段,可以通过敲击r和s键:
    2. 回车返回基本视图,可以看到多了CODE和DATA两个字段:
    top命令的补充
    top命令是Linux上进行系统监控的首选命令,但有时候却达不到我们的要求,top命令的监控最小单位是进程,所以看不到程序的线程数和客户连接数,通常可以ps和netstate两个命令来补充top的不足。
    监控java线程数:
    ps -eLf | grep java | wc -l
    监控网络客户连接数:
    netstat -n | grep tcp | grep 侦听端口 | wc -l
    上面两个命令,可改动grep的参数,来达到更细致的监控要求。
    在Linux系统一切都是文件的思想贯彻指导下,所有进程的运行状态都可以用文件来获取。系统根目录/proc中,每一个数字子目录的名字都是运行中的进程的PID,进入任一个进程目录,
    可通过其中文件或目录来观察进程的各项运行指标,例如task目录就是用来描述进程中线程的,
    因此也可以通过下面的方法获取某进程中运行中的线程数量(PID指的是进程ID):
    ls /proc/PID/task | wc -l
    在linux中还有一个命令pmap,来输出进程内存的状况,可以用来分析线程堆栈:
    pmap PID
    %CPU=(进程的生命周期中占用CPU的时间)*100/(进程的生命周期代表的时间长度)
    比如一个进程的生命周期的时间长度是1000s,然后在这1000s内占用CPU的时间是500s,那么
    %CPU=500*100/1000=50
    即最后的结果表示50%
    
    
    10.修改IP地址
    vim /etc/sysconfig/network-scripts/ifcfg-eth0
    service network restart
    
    
    11.进程管理
    查进程
    ps命令查找与进程相关的PID号:
    ps a 显示现行终端机下的所有程序,包括其他用户的程序。
    ps -A 显示所有程序。
    ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
    ps -e 此参数的效果和指定"A"参数相同。
    ps e 列出程序时,显示每个程序所使用的环境变量。
    ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
    ps -H 显示树状结构,表示程序间的相互关系。
    ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
    ps s 采用程序信号的格式显示程序状况。
    ps S 列出程序时,包括已中断的子程序资料。
    ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
    ps u 以用户为主的格式来显示程序状况。
    ps x 显示所有程序,不以终端机来区分。
    最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
    ps aux | grep program_filter_word,ps -ef |grep tomcat
    ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。
    杀进程
    使用kill命令结束进程:kill xxx
    常用:kill -9 324
    Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME
    进入到进程的执行文件所在的路径下,执行文件 ./文件名
    
    
    12.Centos上Apache重启,mysql重启, nginx 重启方法
    1.重启 apache
      service httpd restart
      /etc/init.d/httpd stop
      /etc/init.d/httpd start
      2.重启 mysql
      service mysql restart
      /etc/init.d/mysqld stop
      /etc/init.d/mysqld start
      3.重启nginx
      service nginx restart
      /etc/init.d/nginx stop
      /etc/init.d/nginx start
    
    13.查看linux版本
    版本 : lsb_release -a cat /etc/issue uname -a
    位数:getconf LONG_BIT file /bin/ls
    
    14.Linux 的网卡监控
    watch more /proc/net/dev
    
    15.打包以及压缩(注:Linux中的很多压缩程序只能针对一个文件进行压缩)
    01-.tar格式
    解包:[*******]$ tar xvf FileName.tar
    打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)
    
    02-.gz格式
    解压1:[*******]$ gunzip FileName.gz
    解压2:[*******]$ gzip -d FileName.gz
    压 缩:[*******]$ gzip FileName
    
    03-.tar.gz格式
    解压:[*******]$ tar zxvf FileName.tar.gz
    压缩:[*******]$ tar zcvf FileName.tar.gz DirName
    
    04-.bz2格式
    解压1:[*******]$ bzip2 -d FileName.bz2
    解压2:[*******]$ bunzip2 FileName.bz2
    压 缩: [*******]$ bzip2 -z FileName
    
    05-.tar.bz2格式
    解压:[*******]$ tar jxvf FileName.tar.bz2
    压缩:[*******]$ tar jcvf FileName.tar.bz2 DirName
    
    06-.bz格式
    解压1:[*******]$ bzip2 -d FileName.bz
    解压2:[*******]$ bunzip2 FileName.bz
    ./bin/pika -c conf/pika.conf
    07-.tar.bz格式
    解压:[*******]$ tar jxvf FileName.tar.bz
    
    08-.Z格式
    解压:[*******]$ uncompress FileName.Z
    压缩:[*******]$ compress FileName
    
    09-.tar.Z格式
    解压:[*******]$ tar Zxvf FileName.tar.Z
    压缩:[*******]$ tar Zcvf FileName.tar.Z DirName
    
    10-.tgz格式
    解压:[*******]$ tar zxvf FileName.tgz
    
    11-.tar.tgz格式
    解压:[*******]$ tar zxvf FileName.tar.tgz
    压缩:[*******]$ tar zcvf FileName.tar.tgz FileName
    
    12-.zip格式
    解压:[*******]$ unzip FileName.zip
    压缩:[*******]$ zip FileName.zip DirName
    
    13-.lha格式
    解压:[*******]$ lha -e FileName.lha
    压缩:[*******]$ lha -a FileName.lha FileName
    
    14-.rar格式
    解压:[*******]$ rar a FileName.rar
    压缩:[*******]$ rar e FileName.rar
    
    16.查看进程的路径
    cd /proc/29565 ll
  • 相关阅读:
    iaas,paas,saas理解
    July 06th. 2018, Week 27th. Friday
    July 05th. 2018, Week 27th. Thursday
    July 04th. 2018, Week 27th. Wednesday
    July 03rd. 2018, Week 27th. Tuesday
    July 02nd. 2018, Week 27th. Monday
    July 01st. 2018, Week 27th. Sunday
    June 30th. 2018, Week 26th. Saturday
    June 29th. 2018, Week 26th. Friday
    June 28th. 2018, Week 26th. Thursday
  • 原文地址:https://www.cnblogs.com/Good-Life/p/9026234.html
Copyright © 2020-2023  润新知