• Linux 云服务器运维(操作及命令)


    1. 什么是linux服务器load average?

    Load是用来度量服务器工作量的大小,即计算机cpu任务执行队列的长度,值越大,表明包括正在运行和待运行的进程数越多。

    2. 如何查看linux服务器负载?

    可以通过w,top,uptime,procinfo命令,也可以通过/proc/loadavg文件查看。
    procinfo工具安装请参考Linux环境下安装软件。

    4. 如何查看服务器内存使用率?

    可以通过free,top(执行后可通过shitf+m对内存排序),vmstat,procinfo命令,也可以通过/proc/meminfo文件查看。

    5. 如何查看单个进程占用的内存大小?

    可以使用top -p PID,pmap -x PID,ps aux|grep PID命令,也可以通过/proc/$process_id(进程的PID)/status文件查看,例如/proc/7159/status文件。

    6. 如何查看正在使用的服务和端口?

    可以使用netstat -tunlp,netstat -antup,lsof -i:PORT命令查看。

    7. 如何查看服务器进程信息?

    可以使用ps auxww|grep PID,ps -ef,lsof -p PID,top -p PID命令查看。

    8. 如何杀死进程?

    可以使用kill -9 PID(进程号),killall 程序名(比如killall cron)来杀死进程。
    如果要杀死的是僵尸进程,则需要杀掉进程的父进程才有效果,命令为: kill -9 ppid(ppid为父进程ID号,可以通过ps -o ppid PID查找,例如ps -o ppid 32535)。

    9. 如何查找僵尸进程?

    可以使用top命令查看僵尸进程(zombie)的总数,使用ps -ef | grep defunct | grep -v grep查找具体僵尸进程的信息。

    11. 常用的linux服务器性能查看命令有哪些?

    命令名称说明
    top 进程监控命令,用来监控系统的整体性能。

    可以显示系统负载,进程,cpu,内存,分页等信息,常用shift+m和shift+p来按memory和cpu使用对进程进行排序。

    vmstat 系统监控命令,重点侧重于虚拟内存,也可以监控cpu,进程,内存分页以及IO的状态信息。

    例如,vmstat 3 10,每隔3秒输出结果,执行10次。

    iostat 用于输出cpu状态和IO状态的工具,可以详细展示系统的IO信息。

    例如iostat -dxmt 10,每10秒以MB的格式输出IO的详细信息。

    df 用来检查系统的磁盘空间占用状况。

    例如:df -m,以MB为单位展现磁盘使用状况。

    lsof 列举系统中被打开的文件,由于linux是以文件系统为基础,此命令在系统管理中很有帮助。

    例如:
    lsof -i:36000,显示使用36000端口的进程 
    lsof -u root,显示以root运行的程序 
    lsof -c php-fpm,显示php-fpm进程打开的文件 
    lsof php.ini,显示打开php.ini的进程。

    ps 进程查看命令,可以用来显示进程的详细信息。

    常用命令参数组合为,ps -ef,ps aux,推荐使用ps -A -o来自定义输出字段。
    例如:
    ps -A -o pid,stat,uname,%cpu,%mem,rss,args,lstart,etime |sort -k6,6 -rn,按所列字段输出并以第六个字段进行排序 
    ps -A -o comm |sort -k1 |uniq -c|sort -k1 -rn|head,列出运行实例最多的进程。

    其他常用的命令和文件,free -m,du,uptime,w,/proc/stat,/proc/cpuinfo,/proc/meminfo。

    12. Cron不生效怎么办?

    排查步骤如下:
    1) 确认crontab是否正常运行。
    可以运行命令crontab -e添加如下测试条目*/1 * * * * /bin/date >> /tmp/crontest 2>&1 &,然后观察/tmp/crontest文件。
    如果有问题,建议使用ps aux|grep cron查找cron的pid,kill -9 PID结束cron进程,然后通过/etc/init.d/cron start重新启动cron。

    2) 确认cron条目中的脚本路径为绝对路径。

    3) 查看运行cron的用户帐号是否正确,同时查看/etc/cron.deny中是否包含此账户。

    4) 检查脚本的执行权限,脚本目录以及日志的文件权限。

    5) 建议通过后台方式运行脚本,在脚本条目后添加“&”,例如,*/1 * * * * /bin/date >> /tmp/crontest 2>&1 &

    14. 为什么服务器硬盘只读?

    硬盘只读的常见原因如下:
    1) 磁盘空间满
    可以通过df -m命令查看磁盘使用情况,然后删除多余的文件释放磁盘空间(非第三方文件不建议删除,如果需要请确认);
    2) 磁盘inode资源占用完
    可以通过df -i命令查看,确认相关的进程;
    3) 硬件故障

    15. 如何查看linux系统日志?

    系统级别的日志文件存放路径为/var/log。
    常用的系统日志为/var/log/messages 。

    6. 如何查找文件系统大文件?

    可以首先通过df命令查看磁盘分区使用情况,比如df -m;
    然后通过du命令查看具体文件夹的大小,比如du -sh ./*,du -h --max-depth=1|head -10;
    使用ls命令列出文件以及大小,比如ls -lSh;
    另外,也可以通过find命令直接查看特定目录下的文件大小,比如find / -type f -size +10M -exec ls -lrt {} ;

    17. 如何查看服务器操作系统版本?

    可以通过下列命令查看系统版本:
    uname -a,cat /proc/version,cat /etc/issue

    20. 为什么删除linux服务器上的文件,硬盘空间不释放?

    有时,登录linux服务器执行 rm 命令删除文件后,用 df 命令查看硬盘空间,发现删除文件后可用的硬盘空间没有增加。原因是通过 rm 命令删除文件的时候,如果正好有其它进程在访问该文件,通过 df 命令查看,删除的文件占用的空间是没有立即释放的。

    解决方法:
    使用root权限执行 lsof |grep deleted ,查看正在使用被删除文件的进程的PID,通过命令 kill -9 PID 杀掉对应的进程即可。

  • 相关阅读:
    安装docker (centos7.6)
    idea docker docker-compose发布springboot站点到tomcat
    tomcat启动慢的解决办法
    skywalking6.3.0安装(centos7.6)
    RocketMQ集群安装 2主2从 console
    RocketMQ官方启动脚本不支持jdk11的修改
    python在windows上创建虚拟环境
    JVM之Java运行时数据区(线程共享区)
    Dijkstra算法和Floyd算法
    JVM之Java运行时数据区(线程隔离区)
  • 原文地址:https://www.cnblogs.com/feixiablog/p/8406124.html
Copyright © 2020-2023  润新知