热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

腾讯开放平台的一些linux常用命令

腾讯开放平台的一些linux常用命令,感觉也适用centos,就拿来用了

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

Load是用来度量服务器工作量的大小,即计算机cpu任务执行队列的长度,值越大,表明包括正在运行和待运行的进程数越多。
参考资料:http://en.wikipedia.org/wiki/Load_average 
 

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

可以通过w,top,uptime,procinfo命令,也可以通过/proc/loadavg文件查看。 
 

3. 服务器负载高怎么办?

服务器负载(load/load average)是根据进程队列的长度来显示的。
当服务器出现负载高的现象时(建议以15分钟平均值为参考),可能是由于CPU资源不足,I/O读写瓶颈,内存资源不足等原因造成,也可能是由于CPU正在进行密集型计算。
建议使用vmstat -x,iostat,top命令判断负载过高的原因,然后找到具体占用大量资源的进程进行优化处理。 
 

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. 无法从linux服务器A登录到服务器B怎么办?

请开发者首先确认服务器A和B是属于同一个应用,不同应用无法交叉登录。
1. 当服务器A无法登录服务器B时,可以使用ping IP和telnet IP 36000命令确认服务器B是否死机,ssh服务是否正常。
如果有异常,登录open.qq.com管理中心重启服务器(详细操作说明见:CVM_V2申请和管理#3.2 服务器重启)。 
2. 如果可以通过客户端直接访问服务器B,但是不能从服务器A登录服务器B,请通过企业QQ联系运维支持协助定位。 
 

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

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

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

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

9. 如何杀死进程?

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

10. 如何查找僵尸进程?

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

11. 如何在内网服务器间传输数据?

同一应用下的不同机器,可以通过如下命令实现文件传输:

scp -P port(使用36000端口) /home/user/localfilename(本地文件路径) user(使用appid)@serverip:/home/user/removefilename(目标文件路径)

rsync -e 'ssh -p port(使用36000端口) -q' /home/user/localfilename (本地文件路径) user(使用appid)@serverip:/home/user/removefilename(目标文件路径) 
 

12. 为什么启动不了服务器端口?

服务器端口的启动监听,需要从操作系统本身以及应用程序查看。
linux操作系统1024以下的端口只能由root用户启动,即需要先运行sudo su –获取root权限后再启用服务端口。
应用程序问题,建议通过应用程序启动日志来排查失败原因,例如端口冲突(腾讯服务器系统使用端口不能占用,比如36000),配置问题等。 
 

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

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

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

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

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

iostatc 用于输出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。 
参考资料:http://en.wikipedia.org/wiki/Template:Unix_commands,http://www.linuxmanpages.com/ 
 

 

14. 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 & 
 

15. 如何设置opensuse服务器开机任务?

Linux内核启动顺序为:
/sbin/init进程启动,
然后依次执行init初始脚本,
运行级别脚本/etc/rc.d/rc*.d,*号值等于运行模式,可以在/etc/inittab中查看,
最后是/etc/rc.d/rc.local。
 

如果需要配置开机任务,可以在/etc/rc.d/rc*.d中的S**rclocal文件配置,也可以在/etc/rc.d/rc.local中配置。 
 

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

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

如果hosting应用通过上述方式仍无法确认原因,请通过企业QQ联系运维支持协助定位。 
 

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

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

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

可以首先通过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 {} ; 
 

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

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

20. 如何重启服务器?

方式1:
登录open.qq.com管理中心重启服务器(详细操作说明见:CVM_V2申请和管理#3.2 服务器重启)。 

方式2:如果方式1不生效,可以尝试在服务器上以root运行reboot命令进行重启。 
 

 

21. 为什么linux终端显示中文会出现乱码?

服务器本身没有对显示语言有限制,如果是终端软件的影响中文的显示
可以尝试调整 选项-会话选项-外观(secureCRT设置,其他版本软件请查找相关设置);
如果是纯Linux shell出现乱码,请使用export命令查看用户环境变量,查看LANG,LC_CTYPE等环境变量设置。
 

22. 如何设置通过SecureCRT连接CVM服务器的超时时间?

可以通过如下设置,使SecureCRT连接CVM时,不断开连接:
打开secureCRT选项(Options),选择会话选项(Session Opetions),点击终端(Terminal),在右侧反空闲(Anti-idle)的框中勾选发送协议NO-OP(Send protocol NO-OP),时间设置为每180秒(every 180 seconds)。 
 

24. 如何获得CVM的root权限?

详见:root权限说明。

网络相关

1. 访问应用慢怎么办?

首先开发者需确认访问慢的原因,包括用户原因,网络原因,服务端原因。
1. 用户原因建议从以下方面排查:
用户电脑性能,电脑病毒,DNS缓存和设置,上网代理,防火墙设置,浏览器版本和插件等,可以通过换电脑测试。
 

2.网络原因建议从以下方面排查:
确定用户的IP以及网络运营商,域名解析是否正确,是否存在跨网,局域网额外限制,到其他公网服务是否正常,到相关服务器或网络中间路由节点的网络延迟,有无丢包,小运营商网络不稳定等。
建议通过异地正常网络使用相同帐号测试。
 

3. 服务端问题建议从以下方面排查:
平台问题,如CDN异常,请求转发异常等;服务端问题,如服务器性能,进程状况,程序异常等。
 

排查时,请配合使用如tcpdump,tracert等各种命令,以及httpwatch,wireshark等抓包工具。
如通过上述技术手段还无法解决,请提供以上排查信息和数据,通过企业QQ联系运维支持协助定位。 
 

2. 常用的网络排障命令?

命令名称 说明
Ipconfig/ifconfig 显示计算机TCP/IP的详细配置,包括DNS信息,例如ipconfig /all,ipconfig /displaydns。
 
Ping 包发送命令,可以模拟诊断延迟,丢包,测试网络状况,例如linux:ping 10.1.1.1 -c 10 -s 800,ping 10.1.1.1 -i 0.5,windows:ping qq.com -t,ping 10.1.1.1 -n 8 -l 800。
Tracert/traceroute 跟踪路由,显示数据包到达目的的路径及各节点的时间,可以用来发现运营商节点问题和跨网问题等,如tracert qq.com。
Telnet 远程登录服务命令,主要用于测试端口状态,例如telnet 10.1.1.1 8001。
Nslookup 域名查询工具,主要用来查看域名解析是否正确。
Netstat wc,netstat -an等。


 

3. 常用的网络抓包工具?

工具名称 说明
Tcpdump 适用于linux系统。

网络数据采集分析工具,可以对网络数据包进行截获和分析。
通过设定参数来实现对网络数据包的各种监控与分析。
例如,tcpdump -i any -nn tcp and port 443,tcpdump -i any "host 10.1.1.1" -n,tcpdump -s 0 -nX -i eth0 host 113.108.20.23等。

Httpwatch 适用于windows系统。

强大的网页数据分析工具,集成在IE浏览器,也可支持firefox,可以用来诊断前台接口调试,CDN下载资源慢和页面响应慢等问题。
建议使用专业版。

Fiddler 适用于windows系统。

独立的网络抓包工具,可监听所有电脑和互联网的http通讯,可以用来调试和诊断web服务和本地http的交互等问题。

Wireshark 适用于windows和linux系统。

网络封包分析软件,可以实时分析所有支持协议的通讯数据


 

4. 如何查看IP来源及所属运营商?

请通过以下网站查询:
Ip.qq.com, ip138.com 
 

5. 如何修改windows本地dns设置?

方法一:
WinXP:
右键网上邻居—>属性(R)—>右键本地链接—>属性(P),双击Internet协议版本4(TCP/IPV4),修改本地DNS设定。 
Win7:
开始菜单—>控制面板—>网络和共享中心—>本地连接—>属性(P),双击Internet协议版本4(TCP/IPV4),修改本地DNS设定。 

方法二:
开始—>运行—>输入CDM进入到命令模式,输入
命令一:netsh interface ip set dns "网卡名" static 主DNS, 
命令二:netsh interface ip set dns "网卡名" static 辅DNS编号(例如:主DNS设定:netsh interface ip set dns "本地连接" static 8.8.8.8,辅DNS设定:netsh interface ip set dns "本地连接" static 8.8.8.8 2)。 
 

6. 如何清理dns缓存?

方法一:
开始菜单—>管理工具—>服务,重启DNS Client和DHCP client两项服务。
 

方法二:
开始菜单—>运行—>输入CDM进入命令模式,输入ipconfig/flushdns,回车执行,提示成功即可。 
 

7. 端口不通怎么办?

服务端:
确认是否有监听对应的端口,是否有做访问限制。 

客户端:
测试连接方式是否正常,例如TELNET只能测试TCP端口,UDP端口可以使用NETCAT等工具进行测试.可以通过wireshark和tcpdump等工具查看具体的数据包走向,明确定位问题。 

其他:
腾讯机房禁止不同应用的机器相互访问,如果同一应用内端口无法正常访问,请通过企业QQ联系运维支持查询防火墙设置。 
 

8. Ping不通怎么办?

请确认网络是否可用,域名解析是否正确,服务端是否禁止ICMP包,使用tracert/traceroute协助确定网络故障。
如通过上述技术手段还无法解决,请提供以上排查信息和数据,请通过企业QQ联系运维支持协助定位。 
 

9. Telnet不通怎么办?

Telnet不通,指的是telnet之后没有任何返回,如果直接返回信息,则表示telnet是通的,但是请求被直接拒绝。

故障排查步骤:
在telnet源上,通过ping测试网络是否正常;
在目标机器上,确认服务器是否设置了禁止telnet(默认没有设置),是否监听了正确的IP和端口,可以通过telnet 127.0.0.1测试本地telnet服务;
对于hosting应用,如果通过以上技术手段还无法解决问题,请提供相应信息和数据,请通过企业QQ联系运维支持排查腾讯防火墙设置。

 

10. Tracert不通怎么办?

tracert不通,指的是从某一节点开始,全部是*,并且无法到达目的,如果只是中间某一个节点出现*,则只能说明该节点禁止被tracert。

故障排查步骤:
从tracert的第一个节点开始,到最后一个可访问节点,查询各节点IP的所属运营商,可以判断网络访问路径以及运营商,然后定位是运营商问题,还是目标服务的问题。
注意,小运营商跨网问题,需要自助向运营商反馈。

11. 如何测试udp端口是否正常?

Udp包的发送和监听可以使用如下方法:
发送udp包,使用netcat命令,例如netcat -v -u 10.1.1.1 8001,同时使用tcpdump或者netcat监听udp请求。

12. 如何判断是否受到DDOS网络攻击?

可以结合以下现象初步判断是否受到DDOS攻击:
机器入流量出现陡增,同时出流量急剧下降; 
服务器出现大量SYN,TIME_WAIT等异常连接( netstat –a |awk '{print $6}' |sort|uniq -c|sort -gk 1);
某些IP访问频率过高,占用大量资源(netstat -tun|awk '{print $5}'|uniq -c|sort -r),导致服务不正常等。

注:腾讯已经对常见的攻击进行了监控和防范,开发者也可结合自身逻辑在服务器端限制特定IP访问。

13. 服务器如何同时接入电信、联通、移动三网?

应用为了兼顾电信、联通、移动的用户,一般都需要实现三网接入,让三个运营商的用户进入都不需要跨网,保证应用质量。
腾讯开放平台提供了TGW域名接入方案(详见:域名接入),开发者只需要通过域名绑定,让一个域名同时绑定在电信、联通、移动的代理机器上,即可让电信的用户通过电信代理访问应用,联通的用户通过联通的代理进入,移动的用户通过移动的代理进入,满足了应用对三网接入的需求。 
 

14. 用户网络有问题怎么办?

单个用户网络问题,建议开发商协助用户检查其电脑设置,包括DNS,上网代理,防火墙,局域网设置,是否跨网等;
如果是批量用户出现网络问题,可以收集共性信息,比如地域,运营商,访问方式等,然后通过企业QQ联系运维支持进行问题定位和解决。 
 

15. http访问出现40x怎么办?

当http返回码出现40x的时候,表示用户提交的请求被服务器接受,但是被认为是错误的请求,包括:
请求语法错误,请求文件不存在,服务器拒绝请求,客户端请求发送超时等。 
开发者需要结合客户端请求和服务端设置来详细定位。详细返回信息信息请参考:
http://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81

16. http访问出现50x怎么办?

当http返回码出现50x的时候,表示服务器在处理正确请求时,出现了内部错误,属于服务端问题。
建议开发者在服务代码和逻辑中进行定位。详细返回码信息请参考:
http://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Java学习笔记之使用反射+泛型构建通用DAO
    本文介绍了使用反射和泛型构建通用DAO的方法,通过减少代码冗余度来提高开发效率。通过示例说明了如何使用反射和泛型来实现对不同表的相同操作,从而避免重复编写相似的代码。该方法可以在Java学习中起到较大的帮助作用。 ... [详细]
  • 原理:dismiss再弹出,把dialog设为全局对象。if(dialog!null&&dialog.isShowing()&&!(Activity.)isFinishing()) ... [详细]
  • 本文详细介绍了在Centos7上部署安装zabbix5.0的步骤和注意事项,包括准备工作、获取所需的yum源、关闭防火墙和SELINUX等。提供了一步一步的操作指南,帮助读者顺利完成安装过程。 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • hadoop1.2.1文档中这样写:Nowcheckthatyoucansshtothelocalhostwithoutapassphrase:$sshlocalhostIfyou ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
author-avatar
天天写程序
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有