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是以文件系統為基礎,此命令在系統管理中很有幫助。 例如: |
| ps | 進程查看命令,可以用來顯示進程的詳細信息。 常用命令參數組合為,ps -ef,ps aux,推薦使用ps -A -o來自定義輸出字段。 |
其他常用的命令和文件,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中配置。
16. 為什么服務器硬盤只讀?
硬盤只讀的常見原因如下:
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),時間設置為每120秒(every 120 seconds)。
24. 如何獲得CVM的root權限?
詳見:root權限說明。
25. 為什么刪除linux服務器上的文件,硬盤空間不釋放?
現象:
登錄linux服務器,執行 rm 命令刪除文件,用 df 命令查看硬盤空間,發現刪除文件后,可用的硬盤空間沒有增加。
原因:
通過 rm 命令刪除文件的時候,如果正好有其它進程在訪問該文件,通過 df 命令查看,刪除的文件占用的空間是沒有立即釋放的。
解決方法:
使用root權限執行 lsof |grep deleted ,查看正在使用被刪除文件的進程的PID,通過命令 kill -9 PID 殺掉對應的進程即可。
