服務器向來是企業最重要的應用之一,是企業信息儲存的關鍵,關係到企業是否能正常展開業務運作。但是在服務器的日常運行之中,由於服務器本身24小時不間斷運作,再加上複雜的硬件結構和運行原理,導致服務器常常會遇到各種問題,可能一些小問題也會使管理人員沒有而引發更大的問題。因此,管理人員需要對常見故障有一定的了解,並知道如何解決。

下面數據灣精心整理了一些服務器的常見問題匯總,幫助各位排憂解難。
1.服務器遠程桌面連接超出最大連接數
由於服務器默認為允許連接數為2個,如果登陸後忘記註銷,而是直接關閉遠程桌面的話,服務器識別此次登陸還是留在服務器端的。
出現這種情況,最常見的就是重啟服務器,但是,如果是高峰期,重啟服務器帶來的損失是顯而易見的。那麼此時,就可以利用mstsc/console指令進行強行登陸了。
打開「運行」框,鍵入「mstscv:xxx.xxx.xxx.xxx(服務器IP)/console」,即可強行登陸到遠程桌面了。

2.無法刪除的文件該怎麼清理
遇到這種情況,可能是該文件還在運行中,可以重啟刪之,或者運行CMD,輸入arrtib-a-s-h-r想要刪除的文件夾名,最後輸入del想要刪除的文件夾名即可刪除,運行該命令後無法恢復,請慎用。

3.服務器負載高怎麼辦?
服務器負載(load/loadaverage)是根據進程隊列的長度來顯示的。
當服務器出現負載高的現象時(建議以15分鐘平均值為參考),可能是由於CPU資源不足,I/O讀寫瓶頸,內存資源不足等原因造成,也可能是由於CPU正在進行密集型計算。
建議使用vmstat-x,iostat,top命令判斷負載過高的原因,然後找到具體佔用大量資源的進程進行優化處理。

4.如何查看服務器內存使用率?
可以通過free,top(執行後可通過shitf+m對內存排序),vmstat,procinfo命令,也可以通過/proc/meminfo文件查看。

5.如何查看單個進程佔用的內存大小?
可以使用top-pPID,pmap-xPID,psaux|grepPID命令,也可以通過/proc/$process_id(進程的PID)/status文件查看,例如/proc/7159/status文件。
6.無法從linux服務器A登錄到服務器B怎麼辦?
請開發者首先確認服務器A和B是屬於同一個應用,不同應用無法交叉登錄。
- 1)、當服務器A無法登錄服務器B時,可以使用pingIP和telnetIP36000命令確認服務器B是否死機,ssh服務是否正常。
如果有異常,重啟服務器。
- 2)、如果可以通過客戶端直接訪問服務器B,但是不能從服務器A登錄服務器B,AB之間網絡不能互通。

7.如何查看正在使用的服務和端口?
可以使用netstat-tunlp,netstat-antup,lsof-i:PORT命令查看。
8.如何查看服務器進程信息?
可以使用psauxww|grepPID,ps-ef,lsof-pPID,top-pPID命令查看。
9.如何殺死進程?
可以使用kill-9PID(進程號),killall程序名(比如killallcron)來殺死進程。
如果要殺死的是殭屍進程,則需要殺掉進程的父進程才有效果,命令為:kill-9ppid(ppid為父進程ID號,可以通過ps-oppidPID查找,例如ps-oppid32535)。

10.如何查找殭屍進程?
可以使用top命令查看殭屍進程(zombie)的總數,使用ps-ef|grepdefunct|grep-vgrep查找具體殭屍進程的信息。
11.如何在內網服務器間傳輸數據?
同一應用下的不同機器,可以通過如下命令實現文件傳輸:
scp-Pport(使用36000端口)/home/user/localfilename(本地文件路徑)user(使用appid)@
serverip:/home/user/removefilename(目標文件路徑)
rsync-e’ssh-pport(使用36000端口)-q’/home/user/localfilename(本地文件路徑)user(使用appid)@
serverip:/home/user/removefilename(目標文件路徑)。

12.為什麼啟動不了服務器端口?
服務器端口的啟動監聽,需要從操作系統本身以及應用程序查看。
linux操作系統1024以下的端口只能由root用戶啟動,即需要先運行sudosu–獲取root權限後再啟用服務端口。
應用程序問題,建議通過應用程序啟動日誌來排查失敗原因,例如端口衝突(騰訊服務器系統使用端口不能佔用,比如36000),配置問題等。
13.常用的linux服務器性能查看命令有哪些?
命令名稱說明
- top:進程監控命令,用來監控系統的整體性能。
可以顯示系統負載,進程,cpu,內存,分頁等信息,常用shift+m和shift+p來按memory和cpu使用對進程進行排序。

- vmstat:系統監控命令,重點側重於虛擬內存,也可以監控cpu,進程,內存分頁以及IO的狀態信息。
例如,vmstat310,每隔3秒輸出結果,執行10次。
- iostatc:用於輸出cpu狀態和IO狀態的工具,可以詳細展示系統的IO信息。
例如iostat-dxmt10,每10秒以MB的格式輸出IO的詳細信息。
- df:用來檢查系統的磁盤空間佔用狀況。
例如:df-m,以MB為單位展現磁盤使用狀況。
- lsof:列舉系統中被打開的文件,由於linux是以文件系統為基礎,此命令在系統管理中很有幫助。
例如:
lsof-i:36000,顯示使用36000端口的進程
lsof-uroot,顯示以root運行的程序
lsof-cphp-fpm,顯示php-fpm進程打開的文件
lsofphp.ini,顯示打開php.ini的進程。
- ps:進程查看命令,可以用來顯示進程的詳細信息。
常用命令參數組合為,ps-ef,psaux,推薦使用ps-A-o來自定義輸出字段。
例如:
ps-A-opid,stat,uname,%cpu,%mem,rss,args,lstart,etime|sort-k6,6-rn,按所列字段輸出並以第六個字段進行排序
ps-A-ocomm|sort-k1|uniq-c|sort-k1-rn|head,列出運行實例最多的進程。
其他常用的命令和文件,free-m,du,uptime,w,/proc/stat,/proc/cpuinfo,/proc/meminfo。
14.Cron不生效怎麼辦?
排查步驟如下:
- 1)、確認crontab是否正常運行。
可以運行命令crontab-e添加如下測試條目*/1****/bin/date>>/tmp/crontest2>&1&,然後觀察/tmp/crontest文件。
如果有問題,建議使用psaux|grepcron查找cron的pid,kill-9PID結束cron進程,然後通過/etc/init.d/cronstart重新啟動cron。
- 2)、確認cron條目中的腳本路徑為絕對路徑。
- 3)、查看運行cron的用戶帳號是否正確,同時查看/etc/cron.deny中是否包含此賬戶。
- 4)、檢查腳本的執行權限,腳本目錄以及日誌的文件權限。
- 5)、建議通過後台方式運行腳本,在腳本條目後添加「&」,例如,*/1****/bin/date>>/tmp/crontest2>&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命令查看磁盤使用情況,然後刪除多餘的文件釋放磁盤空間;
- 2)、磁盤inode資源佔用完
可以通過df-i命令查看,確認相關的進程;
- 3)、硬件故障。
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/-typef-size+10M-execls-lrt{};
19.如何查看服務器操作系統版本?
可以通過下列命令查看系統版本:
uname-a,cat/proc/version,cat/etc/issue
20.如何重啟服務器?
方式1:在服務器上以root運行shutdown-rnow命令進行重啟。
方式2:如果方式1不生效,可以嘗試在服務器上以root運行reboot命令進行重啟。
21.linux終端顯示中文會出現亂碼?
服務器本身沒有對顯示語言有限制,如果是終端軟件的影響中文的顯示
可以嘗試調整選項-會話選項-外觀(secureCRT設置,其他版本軟件請查找相關設置);
如果是純Linuxshell出現亂碼,請使用export命令查看用戶環境變量,查看LANG,LC_CTYPE等環境變量設置。

22.如何設置通過SecureCRT連接CVM服務器的超時時間?
可以通過如下設置,使SecureCRT連接CVM時,不斷開連接:
打開secureCRT選項(Options),選擇會話選項(SessionOpetions),點擊終端(Terminal),在右側反空閑(Anti-idle)的框中勾選發送協議NO-OP(SendprotocolNO-OP),時間設置為每120秒(every120seconds)。
23.為什麼刪除linux服務器上的文件,硬盤空間不釋放?
現象:
登錄linux服務器,執行rm命令刪除文件,用df命令查看硬盤空間,發現刪除文件後,可用的硬盤空間沒有增加。
原因:
通過rm命令刪除文件的時候,如果正好有其它進程在訪問該文件,通過df命令查看,刪除的文件佔用的空間是沒有立即釋放的。
解決方法:
使用root權限執行lsof|grepdeleted,查看正在使用被刪除文件的進程的PID,通過命令kill-9PID殺掉對應的進程即可。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/216205.html
微信掃一掃
支付寶掃一掃