文章目錄
- 安裝ubuntu
- 安裝必要軟件
- 設置用戶
- 遠程連接
- 安全問題
- ClamAV安裝教程
- 步驟 1:更新系統軟件源
- 步驟 2:升級系統(可選但推薦)
- 步驟 3:安裝 ClamAV
- 步驟 4:更新病毒庫
- 步驟 5:驗證安裝
- ClamAV 常用命令
- 1. 基礎掃描命令
- 2. 圖形界面(ClamTk)
- 步驟 6:配置自動更新與掃描(可選)
- 1. 定期更新病毒庫
- 2. 定期掃描系統
- 常見問題
- 1、更新病毒庫報錯:ERROR: Failed to lock the log file /var/log/clamav/freshclam.log: Resource temporarily unavailable ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log). ERROR: initialize: libfreshclam init failed. ERROR: Initialization error!
- **1. 檢查并停止沖突的進程**
- **步驟 1.1:停止 `freshclam` 服務**
- **步驟 1.2:終止所有 `freshclam` 進程**
- **2. 檢查日志文件權限**
- **步驟 2.1:檢查日志文件權限**
- **步驟 2.2:修復權限(如果需要)**
- **步驟 2.3:確保日志目錄存在且權限正確**
- **3. 刪除現有日志文件并重新運行**
- **步驟 3.1:刪除日志文件**
- **步驟 3.2:手動運行 `freshclam`**
最近在學校內配置了一臺服務器,經過多番嘗試和重裝,踩了不少坑,也積累了不少經驗,現記錄在此作為參考,也希望能幫助到同樣有相同需求的伙伴。
本次配置的服務器是華碩主板,配有2張4090顯卡、189GB內存和2T固態外存,安裝的系統為ubuntu20.04,在此我想對剛接觸服務器配置的小伙伴說: 不要安Windows!不要安Windows!!不要安Windows!!! Windows操作起來固然更加直觀方便,但是后續帶來的麻煩是無窮無盡的。
好了,進入正題。
安裝ubuntu
我安裝ubuntu系統的方式全部來自于B站的這位up主的視頻:https://www.bilibili.com/video/BV1Cc41127B9?spm_id_from=333.788.videopod.episodes&vd_source=59276a77a9319f21b7dec25b3f709fdb&p=13
大家可以直接跟著他的操作一步步做,基本不會遇到什么問題。
但是作為服務器,我的建議是:雙系統的安裝是不必要的。如果你和我一樣,在這方面有一點強迫癥,想要把磁盤中的Windows也刪除的話,只要在安裝過程中到下圖這一步時,選擇“清除整個磁盤并安裝ubuntu”即可(在此之前,記得備份必要數據)。
安裝必要軟件
ubuntu安裝完成后,想要作為一臺深度學習服務器使用,需要安裝一些必要軟件包,在上一步中,大家應該已經完成了軟件源的更新,在此不作贅述。
ubuntu安裝軟件一般是在終端進行安裝,打開的快捷鍵是:Ctrl+Alt+T,打開后就像下圖一樣:
一般在安裝任何新軟件包之前,建議先更新軟件包列表:
sudo apt update
安裝編譯程序所需的軟件包:
sudo apt install build-essential
然后可以安一些文本編輯器,比較常用的就是vim和nano:
sudo apt install vim
sudo apt install nano
一般情況下,代碼的版本管理和團隊開發都要依托于云平臺,如Github和Gitee等,這就需要安裝版本控制工具git:
sudo apt install git
服務器的使用一般情況下是遠程使用,也就是通過局域網內的另一臺電腦遠程連接,所用協議為SSH,安裝命令為:
sudo apt install openssh-server
當然前提是要配置網絡的:
sudo apt install net-tools
安裝好ssh后,需要啟動SSH服務,并查看一下服務運行狀態:
sudo service ssh start
sudo service ssh status
如果顯示下面的內容,說明SSH已經啟動,應該已經可以進行遠程連接了:
接下來可以安裝一些編譯器、編譯工具等:
sudo apt install gcc
sudo apt install g++
sudo apt install make
sudo apt install cmake
可以再安裝一個用于查看COP、內存等資源使用情況的軟件包htop:
sudo apt install htop
運行方式直接在終端輸入htop,回車即可,運行界面如下:
可以看到CPU和內存的使用情況,也可以看到各個終端的終端號和資源使用情況。
設置用戶
一般在科研中,一臺服務器需要多個人一起使用,為了避免文件系統的沖突,建議給服務器設定多個用戶,大家分別在自己的用戶下操作,更加方便。
創建新用戶的命令為:
sudo adduser newusername
此處newusername為用戶名,需要按照自己的要求進行修改,執行上述命令后,系統會提示你為這個用戶設定密碼,填寫用戶信息,不想填按回車就行,提示信息類似于:
[sudo] password for 當前用戶:
正在添加用戶 "新用戶名"
正在添加新組 "新用戶名" (1001)
正在添加新用戶 "新用戶名" (1001) 到組 "新用戶名"
創建主目錄 "/home/新用戶名"
正在從 "/etc/skel" 復制文件
輸入新的 UNIX 密碼:
重新輸入新的 UNIX 密碼:
passwd:已成功更新密碼
在這里,強烈建議把密碼設的復雜一點,不然容易被人黑進來挖礦,計算資源被占用是小事,造成數據泄露或者文件系統損壞就很麻煩。
根據需要,也可以為用戶添加或刪除sudo權限:
# 為用戶username添加sudo權限
sudo usermod -a -G sudo username# 去除用戶username的sudo權限
sudo usermod -G usergroup username
遠程連接
設置好用戶后,用戶們就可以嘗試一下能不能遠程連接服務器了,以Windows為例,首先按win+R打開運行界面:
在框中輸入cmd,回車后打開終端:
輸入以下內容:
# xx.xxx.xxx.xxx是服務器的ip地址
ping xx.xxx.xxx.xxx
如果出現下圖中的信息,證明自己的電腦和服務器都正常連接在局域網內。
那么xx.xxx.xxx.xxx怎么查看呢,打開服務器的終端,輸入:
ifconfig
輸入如下,一般情況下ip地址就是下圖紅框內的數字:
然后,測試下SSH能不能用,依然是在Windows的終端里,輸入:
ssh username@xx.xxx.xxx.xxx
第一次連接時,可能會有如下警告信息:
The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established.
ECDSA key fingerprint is SHA256:xxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
確認下ip地址和用戶名信息,確認無誤后輸入yes,輸入對應用戶的密碼后,一般出現類似以下提示信息,說明SSH連接成功了,接下來就可以利用服務器的算力搞科研了:
當然,也有可能連接失敗,此時要考慮是不是防火墻把ssh的端口攔截了,那么需要在服務器上輸入命令將ssh的端口權限打開,命令為:
sudo ufw allow 22
其中22是ssh服務的默認端口。
安全問題
截止到本文落成,服務器已經被不明ip黑了兩次了,結合關稅戰形式,我。。。(我超牢美怎么這么壞啊.jpg)。
開個玩笑,不管是什么原因,我們在配置服務器時都要有安全意識,因為數據無價,所以有以下幾點要注意:
(1)服務器中所有用戶的密碼要盡可能復雜,包括符號、大小寫字母、隨機數字等。
(2)SSH的端口號盡量不要用默認的22,可以改成其他的,方法是修改SSH的配置文件:
sudo vi /etc/ssh/sshd_config
打開后,在下圖中紅框內修改:
修改端口號可以自擬,不要超過65535就行。
接著重啟SSH就可以了:
systemctl restart sshd.service
下一次登陸的時候,需要在命令后加上新的端口號(假設為xxxx):
ssh username@xx.xxx.xxx.xxx -p xxxx
(3)可以考慮安裝殺毒軟件,如ClamAV。
ClamAV安裝教程
本文使用 apt
在 Ubuntu/Debian 系統上安裝 ClamAV。
步驟 1:更新系統軟件源
安裝前先更新系統軟件包列表,確保依賴項可用:
sudo apt update
步驟 2:升級系統(可選但推薦)
建議先升級系統已安裝的軟件包,避免依賴沖突:
sudo apt upgrade -y
步驟 3:安裝 ClamAV
使用 apt
安裝 ClamAV 及其相關組件:
sudo apt install clamav clamav-daemon clamtk -y
clamav
:核心病毒掃描工具。clamav-daemon
:后臺守護進程(用于實時監控或服務模式)。clamtk
:圖形化界面(可選,適合不熟悉命令行的用戶)。
步驟 4:更新病毒庫
安裝完成后,必須更新病毒數據庫才能生效:
sudo freshclam
freshclam 會從 ClamAV 官方服務器下載最新的病毒定義(.cvd 文件)。
如果遇到超時或連接問題,可能是網絡或軟件源問題,可參考下方常見問題。
步驟 5:驗證安裝
確認 ClamAV 安裝成功:
clamscan --version
預期輸出示例:
ClamAV 0.103.2/25705/Sat Apr 19 03:00:00 2025
ClamAV 常用命令
1. 基礎掃描命令
- 全盤掃描(謹慎使用,耗時較長):
sudo clamscan -r /
- 指定目錄掃描:
clamscan -r /path/to/directory
- 僅顯示感染文件:
clamscan -i -r /path/to/directory
- 刪除檢測到的惡意文件:
sudo clamscan --remove -r /path/to/directory
2. 圖形界面(ClamTk)
啟動圖形化界面:
clamtk
步驟 6:配置自動更新與掃描(可選)
1. 定期更新病毒庫
編輯 cron
任務,每天自動更新病毒庫:
sudo crontab -e
添加以下行:
0 2 * * * /usr/bin/freshclam
2. 定期掃描系統
設置每天凌晨 1 點掃描主目錄并記錄日志:
0 1 * * * /usr/bin/clamscan -r /home >> /var/log/clamav/scan.log
常見問題
1、更新病毒庫報錯:ERROR: Failed to lock the log file /var/log/clamav/freshclam.log: Resource temporarily unavailable ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log). ERROR: initialize: libfreshclam init failed. ERROR: Initialization error!
您遇到的錯誤 Failed to lock the log file /var/log/clamav/freshclam.log: Resource temporarily unavailable
是由于 日志文件被其他進程占用或鎖定 導致的。以下是詳細的解決步驟:
1. 檢查并停止沖突的進程
ClamAV 的 freshclam
服務和手動運行的 freshclam
命令可能會同時嘗試訪問日志文件,導致沖突。請按以下步驟操作:
步驟 1.1:停止 freshclam
服務
sudo systemctl stop clamav-freshclam
步驟 1.2:終止所有 freshclam
進程
sudo pkill -f freshclam
2. 檢查日志文件權限
確保日志文件和目錄的權限正確,允許 clamav
用戶寫入:
步驟 2.1:檢查日志文件權限
ls -l /var/log/clamav/freshclam.log
預期輸出應類似:
-rw-r----- 1 clamav clamav ... /var/log/clamav/freshclam.log
步驟 2.2:修復權限(如果需要)
sudo chown clamav:clamav /var/log/clamav/freshclam.log
sudo chmod 640 /var/log/clamav/freshclam.log
步驟 2.3:確保日志目錄存在且權限正確
sudo mkdir -p /var/log/clamav
sudo chown clamav:clamav /var/log/clamav
sudo chmod 750 /var/log/clamav
3. 刪除現有日志文件并重新運行
如果日志文件損壞或被鎖定,可以刪除后重新生成:
步驟 3.1:刪除日志文件
sudo rm -f /var/log/clamav/freshclam.log
步驟 3.2:手動運行 freshclam
sudo freshclam