您好,登錄后才能下訂單哦!
初次登錄Linux 服務器馬上要做的事有哪些,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在將新配置的服務器投入工作之前,請確保你知道你正在使用什么。
當我在 Linux 上測試軟件時(這是我工作中的一個常規部分),我需要使用多臺運行 Linux 的不同架構的服務器。我整備機器,安裝所需的軟件包,運行我的測試,收集結果,并將機器返回到倉庫中,以便其他人可以使用它進行測試。
由于我經常這樣做(甚至一天多次),我初次登錄 Linux 服務器的前 10 分鐘內的工作已經成為每天的儀式。當我初次登錄 Linux 服務器時,我會使用命令來收集我需要的信息來尋找某些東西。我將在本文中介紹我的過程,但請注意,在大多數情況下,我只給出命令名稱,所以你需要確定這些命令的具體選項,以獲得你需要的信息。閱讀命令的手冊頁是一個很好的起點。
1、第一次接觸
當我登錄到一臺服務器時,我做的第一件事就是檢查它是否擁有我將要運行的測試所需的操作系統、內核和硬件架構。我經常會檢查一臺服務器已經運行了多久。雖然這對測試系統來說并不重要,因為它會被多次重啟,但我還是發現這些信息很有幫助。
使用下面的命令來獲取這些信息。我主要使用 Red Hat Linux 進行測試,所以如果你使用其他 Linux 發行版,請在文件名中使用 *-release
而不是 redhat-release
:
cat /etc/redhat-releaseuname -ahostnamectluptime
2、有人登錄在上面嗎?
一旦我知道這臺機器符合我的測試需求,我需要確保沒有其他人同時登錄該系統運行他們自己的測試。雖然考慮到整備系統會幫我處理好這個問題,這種可能性很小,但偶爾檢查一下還是有好處的 —— 尤其是當我第一次登錄服務器的時候。我還會檢查是否有其他用戶(除了 root)可以訪問系統。
使用下面的命令來查找這些信息。最后一條命令是查找 /etc/passwd
文件中具有 shell 訪問權限的用戶;它會跳過文件中沒有 shell 訪問權限或 shell 設置為 nologin
的其他服務:
whowho -Hugrep sh$ /etc/passwd
3、物理機還是虛擬機
現在我有了屬于自己的機器,我需要確定它是一臺物理機還是一臺虛擬機(VM)。如果是我自己整備的這臺機器,我可以確定這是我要求的東西。但是,如果你使用的是一臺不是你自己整備的機器,你應該檢查該機器是物理機還是虛擬機。
使用以下命令來識別這些信息。如果是物理系統,你會看到供應商的名稱(如 HP、IBM 等)以及服務器的品牌和型號;而在虛擬機中,你應該看到 KVM、VirtualBox 等,這取決于創建虛擬機時使用了什么虛擬化軟件:
dmidecode -s system-manufacturerdmidecode -s system-product-namelshw -c system | grep product | head -1cat /sys/class/dmi/id/product_namecat /sys/class/dmi/id/sys_vendor
4、硬件
因為我經常測試連接到 Linux 機器的硬件,所以我通常使用物理服務器,而不是虛擬機。在物理機器上,我的下一步是確定服務器的硬件能力 —— 例如,運行的是什么類型的 CPU,它有多少個核心,啟用了哪些標志,以及有多少內存可用于運行測試。如果我正在運行網絡測試,我會檢查連接到服務器的以太網或其他網絡設備的類型和容量。
使用以下命令來顯示連接到 Linux 服務器的硬件。其中一些命令在新的操作系統版本中可能會被廢棄,但你仍然可以從 yum 存儲庫中安裝它們或切換到它們的等效新命令:
lscpu or cat /proc/cpuinfolsmem or cat /proc/meminfoifconfig -aethtool lshwlspcidmidecode
5、已安裝的軟件
測試軟件總是需要安裝額外的依賴包、庫等。然而,在安裝任何東西之前,我都會檢查已經安裝了什么(包括是什么版本),以及配置了哪些存儲庫,這樣我就知道軟件來自哪里,并可以調試任何軟件包安裝問題。
使用下面的命令來確定安裝了什么軟件:
rpm -qarpm -qa | grep rpm -qi yum repolistyum repoinfoyum install ls -l /etc/yum.repos.d/
6、運行的進程和服務
檢查了安裝的軟件之后,自然就會檢查系統上有哪些進程在運行。當在系統上運行性能測試時,這一點至關重要 —— 如果一個正在運行的進程、守護進程、測試軟件等占用了大部分 CPU/RAM,那么在運行測試之前停止該進程是有意義的。這也可以檢查測試所需的進程或守護進程是否已經啟動并運行。例如,如果測試需要 httpd
運行,那么即使安裝了軟件包,啟動守護進程的服務也可能沒有運行。
使用以下命令來識別系統上正在運行的進程和已啟用的服務:
pstree -pa 1ps -efps auxfsystemctl
7、網絡連接
如今的機器網絡化程度很高,它們需要與網絡上的其他機器或服務進行通信。我會識別服務器上哪些端口是開放的,是否有到測試機器的任何網絡連接,是否啟用了防火墻,如果啟用了,是否屏蔽了任何端口,以及機器與哪些 DNS 服務器對話。
使用以下命令來識別網絡服務相關信息。如果一個過時的命令不可用,請從 yum 存儲庫中安裝它或使用等效的新命令:
netstat -tulpnnetstat -anplsof -issiptables -L -ncat /etc/resolv.conf
8、內核
在進行系統測試時,我發現了解內核相關的信息是很有幫助的,比如內核版本和加載了哪些內核模塊。我還會列出任何可調整的內核參數以及它們的設置,并檢查啟動運行中的內核時使用的選項。
使用以下命令來識別這些信息:
uname -rcat /proc/cmdlinelsmodmodinfo sysctl -acat /boot/grub2/grub.cfg
9、日志
現在,我已經對服務器有了很好的了解,包括安裝了哪些軟件,運行了哪些進程。還有一件事我無法逃避,那就是日志文件 —— 我需要知道在哪里可以查看不斷更新的信息。
使用以下命令查看系統的日志:
dmesgtail -f /var/log/messagesjournalctl
接下來的步驟
雖然命令和實用程序會發生變化,但它們所顯示的基本信息大致不變。在你專注于掌握哪些命令之前,你需要對你要尋找的信息以及它屬于什么類別有一個宏觀的看法。
由于 Linux 將大部分信息保存在文件中,這些命令基本上是從文件中讀取信息,并以一種易于理解的方式呈現出來。下一步的好做法是找出每個命令用來獲取信息顯示的文件。一個提示:尋找這些信息的方法是 strace
命令。
Linux是一種免費使用和自由傳播的類UNIX操作系統,是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統,使用Linux能運行主要的Unix工具軟件、應用程序和網絡協議。
關于初次登錄Linux 服務器馬上要做的事有哪些問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。