本指南將詳細介紹在戴爾電腦上安裝 Linux 操作系統的步驟,以及后續的重要配置,包括系統選擇、安裝流程、MySQL
數據恢復、網絡配置、文件共享和遠程維護等。步驟清晰且配有命令行示例和配置文件示例,適合初中級用戶參考。
1、Linux 系統選擇與安裝建議
Linux Mint Cinnamon 桌面界面示意:Linux Mint 提供了類似 Windows 風格的開始菜單和桌面,界面友好直觀。
推薦發行版: 建議選擇 Linux Mint(基于 Ubuntu LTS)作為發行版。Linux Mint 是一款穩定且用戶友好的桌面 Linux 系統,基于 Ubuntu 長期支持版并提供長達 5 年的更新支持。它預裝了常用的軟件和驅動,擁有良好的硬件兼容性,即使老款戴爾電腦也能流暢運行。Mint 的桌面環境(如 Cinnamon)界面直觀,類似 Windows,更容易上手。此外,Mint 擁有活躍的社區和豐富的文檔支持,新手遇到問題也能方便地找到解決方案。相比最新的 Ubuntu,Linux Mint 更加保守穩定,避免了一些新特性可能帶來的不穩定或不習慣之處(例如 Ubuntu 默認的 Snap 軟件管理等)。總之,Linux Mint 提供了簡單易用、美觀穩定的桌面環境,深受廣大用戶青睞。
圖形界面 vs. 命令行界面: 在安裝 Linux 時,可以選擇安裝圖形化桌面環境,或者僅安裝純命令行的服務器環境。兩者各有優缺點:
- 圖形化界面環境:
優點是操作直觀,使用鼠標鍵盤即可完成大部分操作,更加易于使用,適合日常辦公、上網瀏覽、文檔處理等普通用途[4]。例如,在桌面環境下可以方便地拖放文件、使用文件管理器瀏覽硬盤、打開瀏覽器、編輯文檔等,這對不熟悉命令行的用戶非常友好。缺點是圖形界面占用一定的系統資源(CPU、內存、硬盤空間),對硬件要求更高一些,相對于命令行模式效率稍低[4]。另外,遇到系統故障時,圖形界面可能無法啟動,還需切換到命令行解決問題。 - 純命令行環境:
優點是系統資源占用極少,非常精簡,高效穩定,特別適合服務器環境或硬件性能較弱的舊電腦使用。通過命令行可以快速執行復雜任務,支持腳本和批處理,提高自動化程度,對于系統管理和配置而言效率更高。同時,沒有圖形界面意味著減少了潛在漏洞,更安全。缺點是學習曲線較陡,對于不熟悉命令的用戶來說上手難度較大,需要記憶命令和參數。純命令行模式下日常操作(如瀏覽網頁、看視頻)不方便,需要額外安裝基于文本的工具或從其他機器遠程管理。
如何選擇: 如果計劃將戴爾電腦作為日常使用的電腦或者需要方便地進行本地操作(如文件管理、瀏覽器訪問等),推薦安裝帶圖形界面的發行版(如 Linux Mint 默認桌面版)。它能提供良好的用戶體驗,配置網絡、安裝軟件也可以通過圖形界面完成。但如果打算將其作為一臺服務器使用,并希望最大化利用資源、提高穩定性,而且本人對Linux命令行較為熟悉,那么可以選擇不安裝圖形界面,使用純命令行模式的系統(例如安裝Mint的“no GUI”選項或使用 Ubuntu Server 等)。對于大多數初中級用戶,安裝圖形界面會更友好一些,畢竟可以隨時打開終端使用命令行,不需要時仍可享受桌面帶來的便利。
2、安裝 Linux 系統過程
在決定好發行版后,接下來就是在戴爾電腦上安裝 Linux 系統的具體步驟。這里以推薦的 Linux Mint 為例,其他發行版(如 Ubuntu/Debian 等)安裝過程類似。
2.1 制作啟動安裝介質:
首先,從官網下載所選發行版的 ISO 鏡像文件,并使用工具將其寫入 U 盤(推薦使用 Rufus、balenaEtcher 等軟件)。確保戴爾電腦的 BIOS 已設置為從 U 盤啟動。將啟動盤插入戴爾電腦并重啟,按下 F12(有些戴爾型號是 F12 進入引導菜單),選擇從 USB 設備啟動。
2.2 啟動安裝程序:
成功從 U 盤引導后,會進入 Linux Mint 的安裝界面。一般首先會看到一個“試用或安裝”的選項,可以選擇直接Start Linux Mint進入實時桌面環境。接著點擊桌面上的“Install Linux Mint”圖標開始安裝向導。
2.3 語言與鍵盤:
在安裝向導的第一步,選擇安裝過程使用的語言(此處可選“簡體中文
”),方便閱讀安裝提示。接著選擇鍵盤布局(默認美式鍵盤即可,若有特殊需要可選中文輸入)。
2.4 分區和格式化硬盤:
這是安裝中最關鍵的步驟。可以選擇自動分區或者手動分區:
- 自動分區(清除磁盤并安裝):
安裝程序通常提供“一鍵安裝
”選項,例如“清除整個磁盤并安裝 Linux Mint
”。選擇此項會格式化整塊硬盤并自動創建所需分區,非常適合無重要數據的新硬盤或準備抹掉磁盤重裝的情況。Mint 的自動分區一般會建立根分區/(ext4文件系統)和交換分區(swap),以及引導分區(EFI)等必要分區。只需確認選擇正確的硬盤(如果有多塊硬盤,一定要選中SSD所在盤),然后繼續,安裝程序將自動完成分區和格式化。
- 手動分區:
如果有特殊需求(例如需要多分區方案、雙系統或保留部分數據分區),可以選擇“手動分區”或“其它選項”。進入手動分區界面后,需要根據需求新建分區。推薦分區方案:EFI 引導分區(ESP)大約 100~300MB(FAT32 格式,掛載點/boot/efi
,用于 UEFI 引導);根分區/ 50~100GB(ext4 格式,存放系統和應用。普通桌面用戶50GB已夠,大型軟件多可以給到100GB以上[6]);交換分區 SWAP 大小視內存而定(若物理內存較小如4GB,建議交換分區=內存大小甚至2倍;內存充裕如16GB以上也可不設獨立swap分區,Linux Mint 默認也支持交換文件代替交換分區);家庭分區/home
(ext4,根據剩余空間全部分給/home,用于存儲用戶個人文件,可選)。其中,EFI 分區在使用 UEFI 引導時必不可少,如果硬盤之前裝有 Windows 已有 EFI 分區,可直接重用它。每個分區創建后需要指定掛載點,例如將最大的一塊分區掛載到/,交換分區類型選為“swap
”,EFI 分區文件系統選 FAT32 并掛載到/boot/efi
。完成手動分區后,雙擊“安裝引導器的設備”確保指向SSD本身(如/dev/sda
),然后點擊繼續。
注意: 手動分區時務必小心,確保選擇正確的硬盤和分區進行格式化。建議在操作前備份硬盤上重要數據。一旦分區和格式化執行,數據將無法恢復。
2.5 時區和用戶
繼續安裝時,選擇時區(例如中國用戶選“上海”或相應城市),鍵盤布局(中文用戶一般美國英語即可,之后可在系統中添加中文輸入法)。然后設置計算機名稱、創建用戶賬戶和密碼。請使用強密碼并記住,它將用于日常登錄和執行管理員操作(sudo)。
2.6 安裝系統文件:
安裝程序開始將 Linux 系統復制到 SSD期間可以看到一些幻燈片介紹Mint特性。等待進度完成(通常幾分鐘到十幾分鐘,視SSD速度)。
2.7 完成安裝并重啟: 提示安裝完成后,拔除 U 盤并點擊重啟。電腦將從SSD啟動進入剛安裝的 Linux 系統。如果是雙系統,開機時會出現 GRUB 引導菜單供選擇啟動哪一個系統。
2.8 首次啟動配置: 首次進入 Linux Mint 桌面,可能會彈出歡迎屏幕。可以按照提示更新系統、安裝多媒體解碼器等:
- 系統更新:
建議在聯網后立即更新系統以獲取最新的安全補丁和軟件更新。可以通過圖形界面的“更新管理器”執行更新,或者打開終端輸入命令:
sudo apt update && sudo apt upgrade -y
這將刷新軟件源并安裝所有可用更新。
- 語言和區域設置:
如果界面未自動切換為中文,可在「系統設置 -> 語言支持」
中添加中文語言并應用到整個系統,然后注銷重新登錄。確保區域設置(Locale)為中文(簡體,中國),如需要也可調整數字、日期格式等區域選項。
- 驅動程序:
戴爾電腦若有專有驅動(如 NVIDIA 顯卡),Mint會在「驅動管理」中提示可用的專有驅動。可以選擇相應驅動安裝以獲得更好性能。
- 開啟自動更新(可選):
為免除手動更新的麻煩,可在更新管理器中設置自動更新。另外建議開啟時間自動同步(NTP),以確保系統時間準確。
完成以上設置后,Linux 系統就安裝妥當并準備就緒了。接下來,進入具體的服務器配置步驟。
3. MySQL 8.0 數據恢復
假設之前在舊系統中使用 MySQL 8.0 數據庫,并且有一份數據庫文件夾的備份(其中包含 .ibd 和 .frm 文件)。現在在新安裝的 Linux 系統上恢復這份數據庫。以下步驟將指導如何安裝 MySQL 8.0、導入這些數據文件并驗證恢復結果:
3.1 安裝 MySQL 8.0:
Linux Mint 基于 Ubuntu,默認軟件源提供 MySQL。打開終端,執行:
sudo apt update
sudo apt install mysql-server -y
這將安裝 MySQL 8.0 服務器(Ubuntu 22.04 默認提供 MySQL 8.0.x)。安裝完成后,服務可能會自動啟動并設置為開機自啟。先不要急于配置,繼續下面的步驟。
3.2 停止 MySQL 服務:
在導入數據前,需要停止正在運行的 MySQL 服務以避免沖突:
sudo systemctl stop mysql
(有時服務名可能是 mysql 或 mysqld,可用 sudo systemctl status mysql
查看)。確保服務已停止再繼續。
3.3 準備數據文件:
將備份的數據庫文件夾拷貝到 MySQL 的數據目錄。默認情況下,MySQL 8.0 的數據目錄是 /var/lib/mysql
。假設備份的數據庫名為 mydb,且備份時保存了整個 mydb 文件夾(包含該庫下所有表的 .ibd 和 .frm 文件)。執行以下操作:
- 將備份的 mydb 文件夾復制到 /var/lib/mysql/ 下(可以先將備份U盤掛載后復制,或用 cp 命令)。如果 mydb 目錄已存在(例如安裝時初始化了同名空數據庫),可以先刪除那個空目錄。
sudo cp -r /path/to/backup/mydb /var/lib/mysql/
確保復制過程中不要漏掉任何 .ibd 或 .frm 文件。特別是 MySQL InnoDB 存儲引擎在 5.7 及以前版本會將表結構存于 .frm 中,數據存于 .ibd 中,兩者必須配對。
- 設置權限: 復制完成后,調整新拷貝文件的屬主屬組為 MySQL:
sudo chown -R mysql:mysql /var/lib/mysql/mydb
這是非常重要的一步!如果文件權限不正確,MySQL 啟動時將無法訪問數據文件。另外,確保目錄權限為750或700(一般繼承即可)。
注意: MySQL 8.0 與之前版本略有差異:8.0 移除了獨立的 .frm 文件,表定義存儲在 InnoDB
內部的數據字典中。如果備份源自 MySQL 5.7 及以下版本,那么直接拷貝 .frm 和 .ibd 到 MySQL 8.0
下可能無法被識別。最好使用相同版本的 MySQL 來恢復。也就是說,如果備份來自 MySQL 5.7,建議在本機先安裝 MySQL 5.7
來導入這些文件,運行正常后再升級到 8.0。如果無法方便地安裝舊版本,則需要借助 MySQL 8.0 的表空間導入工具(ALTER
TABLE … IMPORT TABLESPACE)進行恢復。在這里假定備份就是來自 MySQL 8.0 環境,因而 .frm
文件可能其實無用,但仍一并放置以防萬一。
3.4 啟動 MySQL 服務:
現在重新啟動 MySQL:
sudo systemctl start mysql
首次啟動時,MySQL 會嘗試讀取數據目錄下的數據庫文件。如果版本一致且操作正確,服務應能正常啟動。如果啟動失敗,可檢查日志(/var/log/mysql/error.log
)以確定問題。
3.5 驗證數據恢復:
用 MySQL 客戶端登錄并檢查數據。例如:
sudo mysql -u root -p
# 以root用戶登錄數據庫
進入 MySQL 控制臺后,執行:
SHOW DATABASES;
USE mydb;
SHOW TABLES;
SELECT COUNT(*) FROM some_table;
看看是否列出了備份的數據庫 mydb 以及其中的表。如果能 SELECT 出預期的數據行數,則說明恢復成功。也可以使用之前備份的數據做對比驗證。
如果數據沒有如預期出現,可能需要采取額外步驟導入表空間:對于每個表,先在目標數據庫中創建同名表(結構需一致),然后執行 ALTER TABLE 表名 DISCARD TABLESPACE;
,替換 .ibd
文件,再執行 ALTER TABLE 表名 IMPORT TABLESPACE;
。這屬于高級操作,在此不展開。一般按照上述簡單步驟拷貝整個數據庫目錄后,在相同MySQL版本下啟動服務,多數情況下數據會直接恢復出現。
4. 配置靜態 IP
默認情況下,大多數 Linux 發行版安裝后會通過 DHCP 自動獲取 IP 地址。但在某些場景下(如公司局域網服務器),我們希望使用固定的局域網 IP 地址。假設我們計劃將這臺電腦配置為 192.168.0.11
,子網掩碼 255.255.255.0
(即 /24),網關 192.168.0.1
,DNS 使用公司網關或公共 DNS。
下面介紹兩種設置靜態 IP 的方法:Netplan(Ubuntu及衍生發行版采用的新配置方式)和 NetworkManager(桌面環境常用的網絡管理器)。請選擇其中一種方法即可。
前提: 請確認當前系統的網絡接口名稱(如 enp3s0、eth0、wlan0 等)。可在終端執行 ip addr 或 ifconfig
查看有IP地址的網卡接口名稱。下面示例用enp3s0表示有線網卡接口名稱,請根據實際名稱替換。
- 方法一:使用 Netplan 配置靜態 IP
Ubuntu 18.04+系統(包括 Linux Mint 新版本)普遍使用 Netplan 來管理網絡配置。Netplan 通過 YAML 配置文件來描述網絡接口設置,然后應用配置到后端(NetworkManager 或 systemd-networkd)。Mint 桌面版通常將有線接口交由 NetworkManager 管理,但我們仍可以使用 Netplan 直接設置網絡(將渲染器切換為 networkd)。步驟如下:
1.編輯 Netplan 配置文件: 打開 /etc/netplan/
目錄下的配置文件(Mint/Ubuntu 桌面可能文件名為 01-network-manager-all.yaml
或 01-netcfg.yaml
等)。使用管理員權限編輯它:
sudo nano /etc/netplan/01-netcfg.yaml
(Nano或vim等文本編輯器均可。)
2.編寫靜態 IP 配置: 在文件中添加或修改網卡配置,使之包含靜態 IP 設置。例如,針對接口 enp3s0
,配置內容如下:
network:
version: 2renderer: networkd # 使用 systemd-networkd 來應用配置ethernets:enp3s0:dhcp4: no # 關閉 DHCPaddresses: [192.168.0.11/24] # 靜態 IP/子網掩碼gateway4: 192.168.0.1 # 默認網關nameservers:addresses: [192.168.0.1, 114.114.114.114] # DNS服務器,可填寫多個
配置說明:其中 enp3s0
是網絡接口名稱,請根據實際名稱替換。addresses
字段指定靜態IP和掩碼,gateway4
是默認網關(通常是路由器IP),nameservers
下的 addresses
列出 DNS 服務器地址,可使用公司內部DNS或公共DNS。
- 應用配置:
保存文件并退出編輯器,然后執行命令使配置生效:
sudo netplan apply
若配置有誤,netplan
會給出錯誤提示,請根據提示修改 YAML 文件格式后重試。
- 驗證 IP:
用 ip addr show
確認接口已經獲得了新的靜態 IP 192.168.0.11
。也可以嘗試 ping 192.168.0.1
測試與網關的連通性。
Netplan 配置靜態 IP 非常簡潔,一旦應用成功,配置會持久保存并在重啟后生效。
注意:如果 Mint 系統原本使用 NetworkManager 管理網絡,直接用 Netplan (renderer: networkd)
可能會接管接口,使 NetworkManager 圖形設置失效。這種情況下,建議在 Netplan 中將指定接口交由
networkd,而無線等仍由 NetworkManager 管理,以避免沖突。
- 方法二:使用 NetworkManager 設置靜態 IP
如果安裝了桌面環境,NetworkManager 通常負責網絡連接,可通過圖形界面或命令行工具配置靜態 IP:
圖形界面操作:
點擊系統托盤的網絡圖標 -> 選擇“網絡設置”或“編輯連接”
。找到當前使用的有線連接(如 Wired Connection 1
),點擊編輯,將 IPv4 方法從 “自動 (DHCP)” 改為 “手動 (Manual)”。然后輸入 IP 地址 192.168.0.11,子網掩碼 255.255.255.0,網關 192.168.0.1,以及 DNS 服務器地址。保存設置后,斷開再連接網絡或重啟網絡服務,靜態 IP 應生效。Windows 用戶可以像以前通過DHCP一樣訪問 \192.168.0.11,但現在這個地址是固定的。
- 使用 nmcli 命令:
NetworkManager 提供 nmcli 命令行工具。例如(假設連接名為 “Wired connection 1”,設備名 enp3s0):
sudo nmcli con modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.0.11/24 ipv4.gateway 192.168.0.1 ipv4.dns "192.168.0.1 114.114.114.114"
sudo nmcli con down "Wired connection 1" && sudo nmcli con up "Wired connection 1"
以上命令設置有線連接的 IPv4 手動參數并重新激活連接。用 nmcli con show "Wired connection 1"
可查看修改后的配置確認無誤。
- 使用 nmtui 工具:
在終端執行 sudo nmtui
會打開NetworkManager的文本用戶界面。選擇“編輯連接”,找到網卡連接,設置 IPv4 配置為手動并填寫 IP、網關、DNS 等,保存退出后,即可生效。nmtui界面友好,不用記復雜命令。
無論采用哪種方式,完成后可用 ip addr 或 ifconfig 驗證新 IP。
提示: 如果網絡需要同時設置 IPv6,請相應配置 IPv6 地址或禁用 IPv6,以免影響。同時確保路由器未將 192.168.0.99
分配給其他設備,避免 IP 沖突。
5. 配置 Samba 文件共享
Samba 服務允許我們將 Linux 系統上的目錄通過 SMB/CIFS 協議共享出來,方便 Windows 用戶訪問。下面將指導如何在這臺 Linux 系統上配置 Samba,實現如下需求:
- 創建多個共享目錄(例如 /srv/share/group1、/srv/share/group2 等),并通過 Samba 分享。
- 針對不同的部門/工作組設置訪問權限,例如 group1 組只能訪問 group1 共享,group2 組訪問 group2 共享。 希望局域網內的同事訪問共享時不必每次都輸入用戶名密碼(可以設置初次輸入后記住憑證,或對某些公共分享啟用匿名訪問)。 Windows
用戶可以像訪問本地文件夾一樣,在資源管理器地址欄輸入 \192.168.0.11\共享名 來直接訪問。
5.1 安裝 Samba:
默認大部分發行版未預裝 Samba 服務。首先安裝 Samba:
sudo apt install samba -y
安裝完成后,Samba 的配置文件位于 /etc/samba/smb.conf,服務名通常是 smbd(文件共享服務)和 nmbd(網絡鄰居發現服務)。安裝過程通常已自動啟動 Samba 服務,可以用 sudo systemctl status smbd
查看其運行狀態。
5.2 創建共享目錄及用戶組: 在配置 Samba 前,先在系統中創建實際的共享目錄及對應的用戶/組,并設置權限:
?創建共享目錄:按照需求建立目錄,例如:
sudo mkdir -p /srv/share/group1
sudo mkdir -p /srv/share/group2
為規范起見,我們在 /srv/share/ 下集中存放共享資源。也可以根據需要更改路徑。
- 創建用戶組:
為方便權限管理,創建 Linux 用戶組 group1 和 group2:
sudo groupadd group1
sudo groupadd group2
然后將相應的本地用戶加入這些組(假設現有用戶user1屬于group1部門,user2屬于group2部門):
sudo usermod -aG group1 user1
sudo usermod -aG group2 user2
如果希望為每個部門單獨用一個共享賬戶,也可以直接創建對應的系統用戶,如 sudo useradd -M -s /sbin/nologin group1user
(創建無主目錄、不可交互登錄的用戶),然后 sudo passwd group1user
設置密碼,并將該用戶加入 group1 組。
- 設置目錄權限:將共享目錄的屬組設置為相應組,并給予讀寫權限。比如:
sudo chown root:group1 /srv/share/group1
sudo chown root:group2 /srv/share/group2
sudo chmod 2770 /srv/share/group1 /srv/share/group2
上述 chmod 2770 設置目錄權限為用戶和組可讀寫(770),其他人無權限(0),并啟用 SGID 位(2),使新建文件繼承目錄組。這確保組內成員均有權限訪問和創建文件。
5.3 添加 Samba 用戶:
Samba 有獨立的用戶數據庫,但它基于系統用戶。因此需要將需要訪問共享的用戶添加到 Samba。這里假設每個實際用戶各用各的賬戶:
sudo smbpasswd -a user1 # 為user1添加Samba密碼(會提示輸入新密碼)
sudo smbpasswd -a user2 # 為user2添加Samba密碼
上述命令會將對應系統用戶添加到 Samba 并設置訪問密碼。可以為組內所有用戶都執行一遍。提示: Samba 用戶名和密碼可以與Linux登錄相同(方便用戶記憶),但兩者數據庫是分開的。
如果采用“一組一賬戶”策略,比如只想創建一個賬戶讓所有group1部門員工共用,那在前一步可創建如 group1user 的系統用戶,并執行 sudo smbpasswd -a group1user 設置密碼,然后將這個賬號和密碼發放給group1的員工共用。
5.4 編輯 Samba 配置:
用編輯器打開 /etc/samba/smb.conf
,找到 [global] 段并確認以下設置(如果不存在則添加):
[global]workgroup = WORKGROUP # Windows 工作組名稱,默認即可security = user # 使用用戶級安全驗證map to guest = Bad User # 將未知用戶映射為訪客(用于匿名訪問)
解釋如下:workgroup 默認為 “WORKGROUP”,需要與 Windows 網絡的工作組一致(通常都是這個值);security
= user 表示啟用賬號/密碼驗證模式;map to guest = Bad User 表示當登錄用戶非本地賬號時,將其當作訪客處理(為后面的匿名訪問做準備)。
接著,在文件末尾添加我們設計的共享定義,例如:
[group1]comment = Group1部門共享目錄path = /srv/share/group1browseable = yesread only = noguest ok = novalid users = @group1[group2]comment = Group2部門共享目錄path = /srv/share/group2browseable = yesread only = noguest ok = novalid users = @group2
每個共享段用方括號 […] 指定共享名,這將成為訪問時的路徑名。上述配置含義:
- comment 是對共享的描述,可自由填寫。
- path 指定共享目錄的實際路徑。
- browseable = yes 表示共享對網絡瀏覽是可見的,這樣用戶打開網絡鄰居或訪問 \192.168.0.11\ 能看到共享名。
- read only = no 允許寫入(即讀寫權限,默認為 yes 即只讀)。
- guest ok = no 表示不允許匿名訪客訪問。我們這里針對部門共享都要求登錄,因此設為 no(后面會講匿名共享的配置)。
- valid users = @group1 限制只有屬于 group1 組的用戶才能訪問該共享(@group1表示 Unix 用戶組)。對于 group2 類似道理。這確保了即使其他人知道共享名也無權訪問。
設置完成后保存文件并退出。
如果還希望有一個無需賬號即可訪問的公共共享,例如公共資料夾,可另外添加一段,例如:
[public]comment = 公共分享path = /srv/share/publicbrowseable = yesread only = noguest ok = yesguest only = yes
同時創建對應目錄 /srv/share/public
,并設權限為777或特定用戶控制。guest ok = yes 允許匿名訪問,guest only = yes 則強制所有訪問都視為訪客,無需密碼。這種共享適合放一些無敏感性的公共文件,方便全公司訪問。注意: 開啟匿名寫入共享有安全風險,只應在可信的內網使用[19]。對允許寫入的匿名共享,要做好備份并防范誤刪。
5.5 重啟 Samba 服務:
每次修改 smb.conf 后需要重啟服務才能使配置生效:
sudo systemctl restart smbd
sudo systemctl restart nmbd
(有時兩者是同一服務,通過 sudo systemctl restart samba
重啟)。
5.6 Windows 客戶端訪問:
在 Windows PC 上,打開“文件資源管理器”,在地址欄輸入 \192.168.0.11\ 回車。如果網絡通信正常,應該看到剛才配置的共享列表(group1、group2等)。
第一次訪問受控共享時,會彈出憑據輸入窗口。輸入剛才在 Samba 添加的用戶名和密碼(例如 user1,密碼)。建議勾選“記住我的憑據”,這樣下次訪問無需重復輸入。之后,點開對應共享文件夾,就如同訪問本地硬盤一樣了。同事也可以將該共享映射為網絡驅動器(在資源管理器“此電腦”上右鍵 -> 映射網絡驅動器,填寫路徑和憑據)以便日常使用。
若配置了匿名共享 [public],Windows 訪問 \\192.168.0.11\public
時應直接進去而不要求密碼。如無法匿名訪問,檢查 Samba 全局設置是否包含 map to guest = Bad User,且確保 guest account 映射的系統用戶(通常是 nobody)對該目錄有權限。
5.7 權限與測試: 可以在 Linux 上用 smbclient 工具測試訪問,例如:
smbclient //localhost/group1 -U user1 -W WORKGROUP
輸入密碼后應成功登入 Samba 共享并可列出文件。確保不同組的用戶無法訪問不屬于自己的共享(會提示無權限)。另外,建議在 Samba 配置中適當設置 create mask 和 directory mask,以控制通過Samba創建的文件權限,例如添加 create mask = 0660 和 directory mask = 2770,確保文件屬主和屬組有讀寫,新建文件屬組繼承目錄屬組。
Samba 配置完成后,Windows 用戶就可以方便地在網絡中訪問共享資料了。Samba 使得 “Windows 可以像訪問本地文件夾一樣訪問 Linux 共享”成為可能,提高了異構網絡下協作的效率。
安全提示: 盡量根據部門劃分權限,避免將整個硬盤共享給所有人。對于匿名共享,只提供只讀訪問或特定文件夾,重要資料仍應放在受限共享中。可以在 smb.conf 的 [global] 段通過 hosts allow 或 hosts deny 限制訪問的 IP 段,提高安全性。
6、系統遠程訪問與維護
完成以上配置后,我們還需要考慮系統的遠程管理和安全維護。以下是幾個重要的設置:
- SSH 遠程登錄: 方便管理員遠程連入維護系統。
- 基礎安全防護: 如啟用防火墻(UFW)限制不必要的端口、使用 Fail2Ban 防止暴力破解。
- 圖形化管理工具 (Webmin): 可選安裝一個基于網頁的管理界面,方便在瀏覽器中對服務器進行設置監控。
下面逐項說明:
6.1 啟用 SSH 及安全配置
SSH 安裝與啟動: SSH(安全外殼)服務允許通過網絡遠程登錄這臺 Linux 主機的命令行。許多發行版默認未啟用 SSH,需要自行安裝。執行:
sudo apt install openssh-server -y
安裝完成后,SSH 服務一般會自動啟動并設為開機啟動。確認方法:
sudo systemctl enable ssh
sudo systemctl start ssh
sudo systemctl status ssh # 確認服務Active
現在,可以在局域網內其他電腦通過 SSH 客戶端連接。例如,在另一Linux上:ssh 用戶名@192.168.0.11,首次連接會提示保存指紋,輸入密碼即可登錄遠程終端;在 Windows 上可使用 PuTTY 或 Windows 內置的 ssh 命令連接。
SSH 安全加固: 默認配置下,SSH 使用22端口,用戶名密碼登錄。為提高安全性,建議:
- 更改 SSH 默認端口(可選):
將/etc/ssh/sshd_config
中的 Port 22 改為其它非標準端口(1024以上),例如2222。這可以減少被掃描的可能。但更改端口后連接時需指定新端口,例如 ssh -p 2222 用戶@IP。 - 禁止 root 遠程登錄:
確保 sshd_config 中 PermitRootLogin no(默認Ubuntu就是不允許)。這樣即使知道 root 密碼也無法直接遠程登錄,必須先以普通用戶登錄再提權,增加了一道防線。
- 使用公鑰認證,禁用密碼登錄:
這是最安全的方案。可以為管理員賬戶配置 SSH 公私鑰登陸,將公鑰添加到服務器 ~/.ssh/authorized_keys
。然后在 sshd_config 將 PasswordAuthentication no
關閉密碼認證,只允許密鑰登陸。這會完全防止暴力猜密碼攻擊(設置前請確保公鑰能用,否則鎖定自己在外!)。
完成修改后重啟 SSH 服務 (sudo systemctl restart ssh
) 使配置生效。
6.2 Fail2Ban 防暴力破解
Fail2Ban 是一個入侵防護軟件,它通過監控日志,在檢測到多次失敗登錄嘗試后自動封禁攻擊者 IP。一旦配置,Fail2Ban會大幅降低暴力破解 SSH 等服務的風險。安裝步驟:
- 安裝 Fail2Ban:
sudo apt install fail2ban -y
Ubuntu自帶了針對SSH的默認規則,無需復雜配置即可生效。
- 配置(可選):
打開 /etc/fail2ban/jail.conf
可以看到默認設置,不建議直接修改此文件。若需要自定義,復制一份為 jail.local:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
在 [sshd] 部分確保 enabled = true,可以調整參數:例如 maxretry(最大重試次數,默認5次)、findtime(判定時間窗口,默認10分鐘)、bantime(封禁時長,默認10分鐘或可以設如1h/24h)。比如改為 maxretry = 4,bantime = 1h
等,然后保存。
- 啟動服務:
sudo systemctl enable fail2ban --now
啟動并設為開機自啟。Fail2Ban現在開始監視 /var/log/auth.log 等日志。根據默認配置,在3分鐘內若有超過5次 SSH 登錄失敗嘗試,Fail2Ban將自動禁止該IP 1小時(上述數字可根據配置變化)。
- 驗證:
使用 sudo fail2ban-client status sshd
查看 sshd 監獄狀態,fail2ban-client status
可查看所有監控規則及已封禁IP列表。如要測試,可嘗試多次用錯誤密碼SSH登錄,然后 fail2ban-client status sshd
會顯示對應IP已被禁。在封禁時,該IP將無法建立SSH連接(提示連接被拒絕)。解封某IP可用 sudo fail2ban-client set sshd unbanip <IP>
。
Fail2Ban 默認已覆蓋 SSH。也可以針對 Samba 等服務配置過濾規則(不過內網環境通常SSH是主要風險)。啟用Fail2Ban后,即使有人不斷嘗試密碼,達到一定次數就會被自動封鎖,有效保護服務器免受暴力破解。
6.3 UFW 防火墻設置
防火墻可以控制進出流量,建議配置防火墻只開放必要端口。Ubuntu 系有UFW(Uncomplicated Firewall)工具簡化管理:
- 安裝并啟用 UFW:
Mint可能已附帶 UFW,沒有則安裝:sudo apt install ufw -y
。然后默認先全部拒絕入站:
sudo ufw default deny incoming
sudo ufw default allow outgoing
這設置防火墻默認策略為拒絕外部進入、允許本機出去。
- 允許必要端口:
根據上述配置,需要開放SSH、Samba等端口:
- SSH (22或修改的端口):
sudo ufw allow 22/tcp
如果改了端口,替換22為新端口號。
- Samba 文件共享:
Samba主要用到 TCP 445 端口(另有139,UDP 137/138用于名字解析)。簡便起見,可以使用應用規則:
sudo ufw allow Samba
這會開放 CIFS 所需端口。如果想更嚴謹,只允許內網訪問,可限定來源:
sudo ufw allow from 192.168.0.0/24 to any port 445 proto tcp
sudo ufw allow from 192.168.0.0/24 to any port 139 proto tcp
sudo ufw allow from 192.168.0.0/24 to any port 137 proto udp
sudo ufw allow from 192.168.0.0/24 to any port 138 proto udp
這樣僅本網段能訪問 Samba 服務。
- Webmin (10000端口,若安裝了的話):
sudo ufw allow 10000/tcp
同樣可限定僅內網IP可訪問以增強安全。
根據實際需要,還可以開放HTTP(80)等其他服務端口。盡可能少開端口,未用的服務就不要開放。
- 啟動防火墻: 設置完規則后啟用:
sudo ufw enable
防火墻即刻生效并開機自啟(在輸入y確認前請確保SSH規則已添加,否則如果通過SSH配置會被自己鎖在外面)。用sudo ufw status可以查看當前規則列表,確認需要的端口是 ALLOW 狀態。
防火墻配置完成后,這臺機器將拒絕除允許清單之外的大部分入站連接。在實際部署中,這為服務器增加了一道保護墻。例如,互聯網上的掃描者即使知道IP,由于有防火墻,SSH 和 Samba 等端口也不會對陌生IP開放。
6.4 安裝 Webmin(可選)
Webmin 是一個流行的基于 Web 的系統管理工具,提供圖形化界面來配置和監控 Linux 服務器。通過 Webmin,可以在瀏覽器中執行諸如用戶管理、服務控制、查看日志、配置 Samba/SSH 等操作,非常直觀。對于不習慣命令行的用戶,Webmin 是很好的輔助。以下是安裝步驟:
1.添加 Webmin 官方倉庫: Webmin 不在默認APT源中,需要手動添加其倉庫和密鑰。打開終端,執行:
echo "deb https://download.webmin.com/download/repository sarge contrib" | sudo tee /etc/apt/sources.list.d/webmin.list
wget -qO- https://download.webmin.com/jcameron-key.asc | sudo gpg --dearmor -o /usr/share/keyrings/webmin.gpg
sudo apt update
第一行添加 Webmin 軟件源;第二行導入 Webmin 的簽名密鑰;第三行更新軟件列表。
2.安裝 Webmin:
sudo apt install -y webmin
軟件包大小約幾十MB,很快即可安裝完成。安裝完畢后,Webmin 會自動作為服務啟動(端口默認為10000)。可以運行 sudo systemctl status webmin 查看其狀態是否為 active。[26]
3.開放防火墻端口: 如果啟用了 UFW 防火墻且尚未允許10000端口,請執行:
sudo ufw allow 10000/tcp
這樣局域網內其它電腦才能訪問 Webmin 界面。
4.訪問 Webmin 界面: 在內網另一臺電腦的瀏覽器中,訪問: https://192.168.0.11:10000/
。注意使用 https 協議,第一次可能會提示證書不被信任,這是因為Webmin使用自簽名證書。可以安全地忽略警告并繼續訪問(選“高級 -> 接受風險繼續”
)。頁面加載后,會出現 Webmin 的登錄界面。默認用系統的root 用戶或具備sudo權限的用戶登錄(Mint 默認禁用了root帳號,可以用安裝時創建的管理用戶賬戶登錄)。輸入用戶名和密碼(就是平時用于 sudo 的憑據),成功的話即可看到 Webmin 的主頁。
5.使用 Webmin: Webmin 左側菜單羅列了各項系統功能模塊,比如“網絡”、“系統”、“服務器”、“硬件”等。可以通過這些模塊進行大部分日常管理。例如:在“Webmin -> Webmin配置 -> 更改語言和主題”中可以將界面語言切換為中文;在“系統 -> 用戶和組”中圖形化地添加用戶;在“服務器 -> Samba Windows 文件共享”中管理 Samba 用戶/共享等。Webmin 界面直觀,鼠標點選即可完成操作,非常方便。
6.安全加固 Webmin: Webmin本身通過HTTPS提供訪問,但為了安全考慮,可以:
7.修改默認端口: 默認10000端口眾所周知,可以在 Webmin 配置中更改端口號以降低被掃描風險。例如改為 10100,然后執行 sudo systemctl restart webmin
應用。記得同時修改防火墻允許的新端口。
8.設置雙因素認證: Webmin 支持基于 Google Authenticator 的二步驗證。可以在“Webmin -> Webmin配置 -> 雙重認證”中啟用,按照提示使用手機應用掃描二維碼綁定,提高登錄安全[29]。
9.限制訪問來源: 如果只有管理員個人需要用Webmin,可以在防火墻中將10000端口限制為某IP可訪問,或者在 Webmin設置中配置允許的主機IP。
此外,生產環境建議搭配 Fail2Ban 針對 Webmin 登陸進行保護,并定期更新 Webmin 至最新版本。
1.啟動與管理: Webmin 安裝后即隨系統自啟。如果需要,可以用命令控制:
sudo systemctl restart webmin
sudo systemctl enable webmin
sudo systemctl disable webmin
來啟動、開機啟用或停用 Webmin 服務。Webmin 的配置文件保存在 /etc/webmin,若進行備份遷移,可打包此目錄保存。
通過 Webmin,可以在圖形界面下完成許多以前需要命令行的管理工作。例如查看磁盤分區使用情況、安裝卸載軟件包、監控系統運行資源等,非常適合初學者管理服務器。不過請務必妥善保管好 Webmin 的訪問權限,不要對外網開放給未經授權的人。
戴爾電腦已經成功安裝了 Linux 系統,并配置了關鍵的服務和安全措施。從系統選擇、安裝,到 MySQL
數據恢復,再到網絡設置、文件共享以及遠程運維,本指南涵蓋了一個新服務器上線所需的主要步驟。現在擁有了一臺功能完善的 Linux
服務器:可以通過固定 IP 提供穩定服務,通過 Samba 讓內網用戶方便地共享文件,通過 SSH 和 Webmin
進行遠程管理;同時借助防火墻和 Fail2Ban 等確保了基本的安全性。
在日常使用中,別忘了定期更新系統(包括安全補丁)、備份重要數據,以及監控系統運行狀態。