安裝或設定

有關獲得 CentOS 7 安裝和基本設定的詳細說明。

  1. 下載最新的 CentOS .ISO - https://www.centos.org/download/
  2. 使用上述連結或使用官方 CentOS 下載頁面下載最新版本的 CentOS 後。使用名為 Unetbootin 的 LiveUSB Creator 將其燒錄到 DVD 或建立可啟動的 USB 記憶棒。
  3. 建立安裝程式可啟動媒體後,將 DVD / USB 放入系統相應的驅動器,啟動計算機,選擇可啟動單元,然後應出現第一個 CentOS 7 提示符。在提示符處選擇 Install CentOS 7 並按[Enter]鍵。

StackOverflow 文件

  1. 系統將開始載入媒體安裝程式,並顯示歡迎螢幕。選擇安裝過程語言,它將幫助你完成整個安裝過程,然後單擊繼續。

StackOverflow 文件

StackOverflow 文件

  1. 下一步,當前螢幕提示是安裝摘要。它包含許多完全自定義系統的選項。你可能想要設定的第一件事是你的時間設定。單擊日期和時間並從提供的地圖中選擇你的伺服器物理位置,然後點選上方完成按鈕以應用配置。

StackOverflow 文件

StackOverflow 文件

  1. 下一步是選擇語言支援和鍵盤設定。選擇系統的主要語言和額外語言,並在完成完成按鈕時選擇。

StackOverflow 文件

StackOverflow 文件

  1. 以同樣的方式通過點選加號按鈕選擇鍵盤佈局,並使用正確的輸入欄位測試鍵盤配置。設定完鍵盤後,可以使用任意組合鍵在鍵盤之間切換,在我的例子中,我使用的是 Alt + Ctrl。選擇所需的組合鍵後,再次按完成以應用更改並返回安裝摘要中的主螢幕。

StackOverflow 文件

StackOverflow 文件

StackOverflow 文件

StackOverflow 文件

  1. 現在,如果你不想使用英語,我們可以新增 LANGUAGE SUPPORT。單擊 LANGUAGE SUPPORT 開啟對話方塊。

StackOverflow 文件

  1. 預設情況下,CentOS 預裝了英語,但我們可以輕鬆新增更多語言。就我而言,我將 Deutsch German 與 Deutsch(Deutschland) 作為附加語言。選擇後按完成。

StackOverflow 文件

  1. 在下一步中,你可以使用除本地 DVD / USB 介質之外的其他安裝源來自定義安裝,例如使用 HTTP,HTTPS,FTP 或 NFS 協議的網路位置,甚至新增一些其他儲存庫,但僅在你使用此方法時才使用此方法知道你在做什麼。因此,請保留預設的自動檢測安裝媒體,然後點選完成繼續。

StackOverflow 文件

StackOverflow 文件

  1. 在下一步中,你可以選擇系統安裝軟體。在這一步驟中,CentOS 提供了許多你可以選擇的伺服器和桌面平臺環境,但是,如果你想要高度自定義,特別是如果你要使用 CentOS 7 作為伺服器平臺執行,那麼我建議你選擇使用相容性庫作為附加元件進行最小安裝,這將安裝最小的基本系統軟體,稍後你可以根據需要新增其他軟體包:

    [ yum groupinstall `Name of installed package` ] command.
    

StackOverflow 文件

StackOverflow 文件

  1. 現在是時候分割槽你的硬碟了。單擊安裝目標選單,選擇你的磁碟,然後選擇我將配置分割槽。閱讀更多關於在此選擇的分割槽: https//www.centos.org/docs/5/html/Installation_Guide-en-US/s1-diskpartitioning-x86.html

StackOverflow 文件

StackOverflow 文件

  1. 在下一個螢幕上,選擇 LVM(邏輯卷管理器)作為分割槽佈局,然後單擊單擊此處自動建立它們,選項將使用 XFS 檔案系統建立三個系統分割槽,自動重新分配你的硬碟空間並收集所有 LVS 成為一個名為 centos 的大集團。
  • / boot - 非 LVM
  • /(root) - LVM
  • 交換 - LVM

StackOverflow 文件

StackOverflow 文件

  1. 如果你對安裝程式自動完成的預設分割槽佈局不滿意,則可以完全新增,修改或調整分割槽方案,並在完成完成按鈕並在更改摘要提示上接受更改時完成。

StackOverflow 文件

注意:對於那些硬碟大小超過 2TB 的使用者,安裝程式會自動將分割槽錶轉換為 GPT,但如果你希望在小於 2TB 的磁碟上使用 GPT 表,則應使用引數 inst.gpt 安裝程式引導命令列以更改預設行為。

  1. 下一步是設定系統主機名並啟用網路。單擊網路和主機名標籤,在主機名欄位上鍵入你的系統 FQDN(完全限定域名),然後啟用你的網路介面,將頂部乙太網按鈕切換為開。如果你的網路上有一個功能強大的 DHCP 伺服器,那麼它將自動配置已啟用 NIC 的所有網路設定,該設定應顯示在你的活動介面下。

StackOverflow 文件

StackOverflow 文件

  1. 如果你的系統將作為伺服器執行,最好通過單擊配置按鈕在乙太網 NIC 上設定靜態網路配置,並新增所有靜態介面設定,如下面的螢幕截圖所示,當你點選儲存按鈕時,禁用和通過將按鈕切換為 OFF 和 ON 來啟用乙太網卡,然後點選 Done to apply 設定並返回主選單。

StackOverflow 文件

StackOverflow 文件

StackOverflow 文件

  1. 根據你的靜態 IP 環境新增地址,網路掩碼和閘道器條目。在我的情況下,我使用地址為 192.168.1.100,網路掩碼 255.255.255.0,閘道器為 192.168.1.1,DNS 伺服器為 8.8.8.8 8.8.4.4 這些值可能會根據你的網路環境而有所不同。之後按儲存。

重要提示:如果你沒有 IPv6 網際網路連線,請在 IPv6 選項卡上將 IPv6 從 auto 設定為忽略,否則你將無法通過 IPv4 從此伺服器訪問網際網路,因為 CentOS 似乎忽略了正確的 IPv4 設定而使用 IPv6 代替失敗。

StackOverflow 文件

  1. 接下來,我們必須開啟連線,如下面的螢幕截圖所示。再按完成。

StackOverflow 文件

  1. 現在是時候通過按下 Begin Installation 按鈕開始安裝過程併為 root 帳戶設定一個強密碼。

StackOverflow 文件

  1. 安裝過程將立即開始,你將在下一個視窗中看到一個小的藍色進度條。現在我們必須設定 ROOT PASSWORD 並在 USER CREATION 選項中新增一個新的非 root 使用者。我會先找 root 密碼。

StackOverflow 文件

  1. 輸入你選擇的安全密碼,然後按完成

StackOverflow 文件

  1. 接下來我們將進行使用者建立。

StackOverflow 文件

  1. 接下來我將建立使用者,在我的情況下,我使用全名管理員和使用者名稱管理員,選中要求密碼使用此帳戶,然後按完成。當然,你可以根據自己的選擇使用任何值。

StackOverflow 文件

  1. 按 Finish.Have 耐心等待設定完成。

StackOverflow 文件

  1. 完成安裝後,它將要求重新啟動伺服器,只需按完成配置即可。

StackOverflow 文件

  1. 伺服器重新啟動並在之後請求你的使用者名稱和密碼。

StackOverflow 文件

恭喜! 你現在已經在裸機上安裝了最新版本的 CentOS。刪除所有安裝介質並重新啟動計算機,以便你可以登入到新的最小 CentOS 7 環境並執行其他系統任務,例如更新系統並安裝執行日常任務所需的其他有用軟體。

  1. 現在我們已準備好使用上面建立的使用者登入,或者我們可以使用 root 憑據。

首次登入 CentOS

以 root 使用者身份登入到伺服器,以便我們可以執行一些最終安裝步驟。

第一個是用 yum 安裝所有可用的更新。

yum update

y 確認繼續安裝更新。

我將安裝兩個命令列編輯器,以便能夠在 shell 上編輯配置檔案:

yum install nano vim

網路配置

CentOS 7.2 minimal 沒有預先安裝 ifconfig 命令我們將按如下方式安裝它:

yum install net-tools

如果要更改或檢視網路配置檔案,只需編輯該檔案即可

nano /etc/sysconfig/network-scripts/ifcfg-ens33

配置靜態 IP 地址時會如下所示:

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="ens33"
UUID="eb1ba0ce-af9f-4953-a6a7-3d05a15c8d4f"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.1.100"
PREFIX="24"
GATEWAY="192.168.1.1"
DNS1="192.168.1.1"
DNS2="8.8.8.8"
DNS3="8.8.4.4"

    Or like this when you use DHCP:

TYPE="Ethernet"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="ens33"
UUID="eb1ba0ce-af9f-4953-a6a7-3d05a15c8d4f"
DEVICE="ens33"
ONBOOT="yes"
HWADDR="00:50:56:15:23:79"
PEERDNS="yes"
PEERROUTES="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_PRIVACY="no"

如果需要,更改值。

注意:上面的 DEVICE 名稱可能會有所不同,請檢查/ etc / sysconfig / network-scripts 目錄中的等效檔案。

調整/ etc / hosts

調整檔案/ etc / hosts,如下所示:

nano /etc/hosts

製作如下值:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.1.100   server1.example.com     server1

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

恭喜! 現在我們有基本的最小 CentOS 7 伺服器設定

現在你可能更喜歡使用 GUI,這裡有各種各樣的風格,你可以選擇:

安裝 GNOME-Desktop:

輸入以安裝 GNOME 桌面環境。

# yum -y groups install "GNOME Desktop"

要在完成安裝後啟動 GUI:

# startx

StackOverflow 文件

如何使用 GNOME Shell?

CentOS 7 的預設 GNOME 桌面以經典模式開始,但如果你想使用 GNOME Shell,請設定如下:

選項 A:如果使用 startx 啟動 GNOME,請設定如下。

# echo "exec gnome-session" >> ~/.xinitrc
# startx

選項 B:設定系統圖形登入 systemctl set-default graphical.target 並重啟系統。系統啟動後

  1. 單擊登入按鈕旁邊的按鈕。
  2. 在列表中選擇 GNOME。 (預設為 GNOME Classic)
  3. 單擊登入並使用 GNOME Shell 登入。

StackOverflow 文件

GNOME shell 的開頭如下:

StackOverflow 文件

安裝 KDE-Desktop:

輸入,安裝 KDE 桌面環境

# yum -y groups install "KDE Plasma Workspaces"

完成安裝後輸入如下命令:

# echo "exec startkde" >> ~/.xinitrc
# startx

KDE 桌面環境如下所示:

StackOverflow 文件

安裝 MATE 桌面環境:

輸入以安裝 MATE 桌面環境。

# yum --enablerepo=epel -y groups install "MATE Desktop"

完成安裝後輸入如下命令:

# echo "exec /usr/bin/mate-session" >> ~/.xinitrc 
# startx

MATE 桌面環境啟動。

StackOverflow 文件

安裝 Xfce 桌面環境:

輸入以安裝 Xfce Desktop Environment。

# yum --enablerepo=epel -y groups install "Xfce" 

完成安裝後輸入如下命令:

# echo "exec /usr/bin/xfce4-session" >> ~/.xinitrc 
# startx

Xfce 桌面環境啟動。

StackOverflow 文件

其他方式:

而不是將 startx 命令的黑客攻擊到 .xinitrc 檔案中,最好告訴 Systemd 你要引導到終端的圖形 GUI。

要完成此任務,只需執行以下操作:

$ sudo yum groupinstall "GNOME Desktop"
$ ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

然後只需重啟。

最後一位將執行級別 5 目標與 Systemd 的預設值相關聯。

用 Systemd 做

你也可以使用 Systemd 來完成此任務。這可以說是更好的方法,因為你直接通過 Systemd 及其 CLI 管理系統狀態。

你可以看到當前的預設目標:

$ sudo systemctl get-default
multi-user.target

然後將其更改為圖形:

$ sudo systemctl set-default
graphical.target

目標

在 Systemd 中,目標 runlevel5.target 和 graphical.target 是相同的。runlevel2.target 和 multi-user.target 也是如此。

Runlevel    Target Units                          Description
0           runlevel0.target, poweroff.target     Shut down and power off the system.
1           runlevel1.target, rescue.target       Set up a rescue shell.
2           runlevel2.target, multi-user.target   Set up a non-graphical multi-user system.
3           runlevel3.target, multi-user.target   Set up a non-graphical multi-user system.
4           runlevel4.target, multi-user.target   Set up a non-graphical multi-user system.
5           runlevel5.target, graphical.target    Set up a graphical multi-user system.
6           runlevel6.target, reboot.target       Shut down and reboot the system.

RHEL / CentOS Linux 安裝核心開發工具 Automake,Gcc(C / C++),Perl,Python 和偵錯程式

問:在 shell 提示符下安裝 CentOS 或 RHEL 或 Fedora Linux 之後,如何安裝所有開發人員工具,如 GNU GCC C / C++編譯器,make 等?

你需要在 RHEL / CentOS / Fedora / Scientific / Red Hat Enterprise Linux 上安裝開發工具組。這些工具包括核心開發工具,如 automake,gcc,perl,python 和偵錯程式,它們是編譯軟體和構建新 rpms 所必需的:

  1. 柔性
  2. gcc c / c ++編譯器
  3. 紅帽 -RPM-配置
  4. strace 的
  5. rpm-build 程式
  6. 使
  7. pkgconfig
  8. gettext 的
  9. automake 的
  10. strace64
  11. GDB
  12. 野牛
  13. libtool 的
  14. autoconf 的
  15. gcc-c ++編譯器
  16. binutils 和所有依賴項。

安裝:

開啟終端或通過 ssh 會話登入並以 root 使用者身份鍵入以下命令:

# yum groupinstall 'Development Tools'

以下示例輸出:

Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * base: mirror.steadfast.net
 * updates: dist1.800hosting.com
 * addons: centos.mirrors.tds.net
 * extras: dist1.800hosting.com
Setting up Group Process
Loading mirror speeds from cached hostfile
 * base: mirror.steadfast.net
 * updates: dist1.800hosting.com
 * addons: centos.mirrors.tds.net
 * extras: dist1.800hosting.com
Package make - 1:3.81-3.el5.i386 already installed and latest version
Package gettext - 0.14.6-4.el5.i386 already installed and latest version
Package binutils - 2.17.50.0.6-6.el5.i386 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package automake.noarch 0:1.9.6-2.1 set to be updated
---> Package frysk.i686 0:0.0.1.2008.03.19.rh1-1.el5 set to be updated
--> Processing Dependency: libgcj.so.7rh for package: frysk
--> Processing Dependency: glib-java >= 0.2.6 for package: frysk
---> Package autoconf.noarch 0:2.59-12 set to be updated
--> Processing Dependency: imake for package: autoconf
---> Package rcs.i386 0:5.7-30.1 set to be updated
---> Package strace.i386 0:4.5.16-1.el5.1 set to be updated
---> Package redhat-rpm-config.noarch 0:8.0.45-24.el5 set to be updated
---> Package elfutils.i386 0:0.125-3.el5 set to be updated
--> Processing Dependency: libdw.so.1 for package: elfutils
...........
....
..
Transaction Summary
=============================================================================
Install    105 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total download size: 127 M
Is this ok [y/N]: y
Downloading Packages:
(1/105): python-numeric-2 100% |=========================| 751 kB    00:12     
(2/105): xorg-x11-fonts-b 100% |=========================| 3.7 MB    01:03     
(3/105): pfmon-3.2-0.0609 100% |=========================| 656 kB    00:10     
(4/105): automake14-1.4p6 100% |=========================| 205 kB    00:03     
(5/105): libtool-1.5.22-6 100% |=========================| 680 kB    00:11     
(6/105): systemtap-0.6.2- 100% |=========================| 1.3 MB

現在,你可以編譯和使用系統上的任何應用程式。

驗證

要顯示 Gnu gcc / c / c ++編譯器版本型別:

$ gcc --version

樣本輸出:

gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

如何在 Fedora / RHEL / CentOS Linux 伺服器中列出所有當前執行的服務?

在 Fedora / RHEL / CentOS Linux 系統下,有各種方法和工具可以查詢和列出所有正在執行的服務。

service command – list running services

CentOS / RHEL 6.x 及更早版本(pre systemd)的語法如下:

service --status-all
service --status-all | more
service --status-all | grep ntpd
service --status-all | less

列印任何服務的狀態。要列印 apache(httpd) 服務的狀態:

service httpd status

列出所有已知服務(通過 SysV 配置)

chkconfig --list

列出服務及其開放埠

netstat -tulpn

開啟/關閉服務

ntsysv
chkconfig service off
chkconfig service on
chkconfig httpd off
chkconfig ntpd on

ntsysv 是一個用於配置執行級別服務的簡單介面,也可以通過 chkconfig 進行配置。預設情況下,它配置當前執行級別。只需鍵入 ntsysv 並選擇要執行的服務即可。

關於 RHEL / CentOS 7.x 與 systemd 的說明

如果你使用的是基於 systemd 的發行版,例如 Fedora Linux v22 / 23/24 或 RHEL / CentOS Linux 7.x +。嘗試使用以下命令使用 systemctl 命令列出正在執行的服務。它控制 systemd 系統和服務管理器。

在 CentOS / RHEL 7.x +上列出系統服務

語法是:

systemctl
systemctl | more
systemctl | grep httpd
systemctl list-units --type service
systemctl list-units --type mount

    

列出所有服務:

systemctl list-unit-files

樣本輸出:

StackOverflow 文件

上圖顯示了基於 CentOS / RHEL 7 systemd 系統安裝的所有單元及其當前狀態

要檢視與特定服務(cgroup)關聯的程序,可以使用 systemd-cgtop 命令。與 top 命令一樣,systemd-cgtop 根據其服務列出正在執行的程序:

systemd-cgtop

樣本輸出:

StackOverflow 文件

僅在 CentOS / RHEL 7.x +上列出 SysV 服務(不包括本機系統服務)

chkconfig --list

樣本輸出:

StackOverflow 文件

防火牆如何:

https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-using-firewalld-on-centos-7

參考