ps做網(wǎng)站需要幾個(gè)畫布lol今日賽事直播
嘮嘮閑話
最近服務(wù)器硬盤故障多,在修復(fù)過程中,學(xué)習(xí)了一些操作,這里做個(gè)記錄。本期主要介紹 U盤啟動(dòng)盤的制作,以及持久化存儲(chǔ)。
U 盤啟動(dòng)盤
鏡像選擇
Ubuntu 的版本命名遵循 “Adjective Animal” 的模式,即 “形容詞+動(dòng)物” 名稱,每個(gè)版本都有一個(gè)官方代號(hào)。此外,版本還分為 LTS 和普通版,LTS 是“Long Term Support”的縮寫,意味著這個(gè)版本將獲得長期的支持,通常是五年。普通版本通常每六個(gè)月發(fā)布一次,支持期限為九個(gè)月。
寫這篇博客的時(shí)候是 2024 年,建議下載至少 20.04 LTS 版本的 Ubuntu 鏡像,這是一個(gè)長期支持版本,支持到 2025 年。
-
20.04 LTS “Focal Fossa”
- 發(fā)布時(shí)間:2020年4月
- “Focal”意味著“中心的”或“焦點(diǎn)”,“Fossa”是馬達(dá)加斯加的一種貓科動(dòng)物,暗示該版本穩(wěn)定且聚焦于長期支持特性
- 下載地址:https://releases.ubuntu.com/focal/
-
22.04 LTS “Jammy Jellyfish”
- 發(fā)布時(shí)間:2022年4月
- “Jammy”在英國俚語中意思是“非常幸運(yùn)的”,“Jellyfish”即水母,可能是指新的長期支持版本在穩(wěn)定性與新特性引入方面的“幸運(yùn)平衡”
- 下載地址:https://releases.ubuntu.com/jammy/
下載 Ubuntu 22 鏡像:
wget -c https://releases.ubuntu.com/jammy/ubuntu-22.04.4-desktop-amd64.iso
制作啟動(dòng)盤
從 Rufus 官網(wǎng)下載 Rufus 工具,該工具僅支持 Windows 系統(tǒng):
wget -c https://github.com/pbatard/rufus/releases/download/v4.4/rufus-4.4.exe
打開后,選擇鏡像,和 U 盤,然后開始制作啟動(dòng)盤。
設(shè)置持久化分區(qū)存儲(chǔ),這樣在 U 盤上安裝軟件和保存文件都會(huì)被保留。如果該 U 盤僅用于系統(tǒng)盤,可將持久分區(qū)拉滿。
下圖保留了部分空間用于日常存儲(chǔ)。
注1:如果不設(shè)置持久存儲(chǔ),U 盤時(shí)將以只讀模式加載,同時(shí)使用 RAM(隨機(jī)訪問存儲(chǔ)器)作為臨時(shí)的寫入空間。這意味著使用過程中產(chǎn)生的數(shù)據(jù)(如臨時(shí)文件、系統(tǒng)日志等)都存儲(chǔ)在內(nèi)存中,而不是 U 盤或硬盤上。
注2:Rufus 的持久性功能被明確標(biāo)記為 EXPERIMENTAL,如果希望更穩(wěn)定的持久性功能,可以嘗試其他工具,如 UNetbootin。
啟動(dòng) U 盤
進(jìn) BIOS 的方式和主板相關(guān)。通常,開機(jī)按 F2 或 Delete 進(jìn)入 BIOS 設(shè)置,找到啟動(dòng)項(xiàng),將 U 盤啟動(dòng)項(xiàng)調(diào)整到第一位。
開機(jī)后,選擇語言,選擇 “試用 Ubuntu” 進(jìn)入系統(tǒng)。
輸入 ctrl + alt + t
打開終端,輸入 df -h
查看硬盤信息,可以看到系統(tǒng)目錄 /
由持久化存儲(chǔ)分區(qū) /cow
掛載。
軟件配置
可將 U 盤當(dāng)作移動(dòng)的系統(tǒng)盤,隨時(shí)隨地使用。
根據(jù)需要給 U 盤安裝軟件,參考 Ubuntu 教程(一) | 必備軟件的安裝和配置。
默認(rèn)的 APT 源不完整,搜索不到 testdisk
等應(yīng)用,需要修改。以下為 22 版本的 apt 源:
# cd /etc/apt
# cp sources.list sources.list.bak
# nano sources.list
deb http://archive.ubuntu.com/ubuntu jammy main restricted
deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted
deb http://archive.ubuntu.com/ubuntu jammy universe
deb http://archive.ubuntu.com/ubuntu jammy-updates universe
deb http://archive.ubuntu.com/ubuntu jammy multiverse
deb http://archive.ubuntu.com/ubuntu jammy-updates multiverse
deb http://archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu jammy-security main restricted
deb http://archive.ubuntu.com/ubuntu jammy-security universe
deb http://archive.ubuntu.com/ubuntu jammy-security multiverse
更改 apt 源后,開始安裝軟件:
sudo apt update
sudo apt install net-tools vim testdisk curl git network-manager gddrescue lvm2 -y
# 可選,用于 ssh 連接和網(wǎng)絡(luò)掛載
sudo apt install openssh-server sshfs -y
sudo apt install python3 python3-pip -y
實(shí)測用 Rufus 安裝的 U 盤啟動(dòng)盤,在啟動(dòng)時(shí),有可能會(huì)重置主機(jī)名和默認(rèn)登錄用戶。因此建議創(chuàng)建新用戶,并在新用戶上配置環(huán)境。
網(wǎng)絡(luò)設(shè)置
Netplan
會(huì)讀取 /etc/netplan/
目錄下的所有以 .yaml
結(jié)尾的文件來構(gòu)建整個(gè)系統(tǒng)的網(wǎng)絡(luò)配置。如果目錄中有多個(gè)配置文件,Netplan
會(huì)按字母順序合并這些文件。
查看默認(rèn) netplan
配置文件:
# cat /etc/netplan/01-network-manager-all.yaml
network:version: 2renderer: NetworkManager
網(wǎng)絡(luò)配置由 NetworkManager 服務(wù)管理,NetworkManager 是一個(gè)動(dòng)態(tài)網(wǎng)絡(luò)管理工具,它可以自動(dòng)檢測和配置網(wǎng)絡(luò)連接,使得用戶在大多數(shù)情況下無需手動(dòng)配置網(wǎng)絡(luò)。
部分情況需手動(dòng)修改,可通過以下方法之一來查看系統(tǒng)中所有網(wǎng)絡(luò)接口的名稱:
- 執(zhí)行
ip link
或ip a
命令在終端中查看。 - 使用
ifconfig
命令(如果已安裝net-tools
包)。
舉個(gè)例子:
network:ethernets:enp195s0: # 接口名稱,通過 ip link 查看addresses: [192.168.98.26/24]eno2:addresses: # 靜態(tài) IP 地址- 172.23.148.35/24# 網(wǎng)絡(luò)配置gateway4: 172.23.148.1nameservers:addresses:- 114.114.114.114search: []version: 2
接口名稱的含義:
en
表示以太網(wǎng)(Ethernet)。o
表示 onboard(板載設(shè)備)。s
表示 hotplug slot(熱插槽)。x
表示 MAC地址(通常用于無法通過其他方式分類的情況)。- 數(shù)字表示物理位置或者是內(nèi)部編號(hào),如
eno1
通常指的是第一個(gè)板載以太網(wǎng)接口。
修改配置后,執(zhí)行 sudo netplan apply
使配置生效。
修改日志規(guī)則
默認(rèn)情況下,Ubuntu 系統(tǒng)日志使用 rsyslog
服務(wù)來記錄系統(tǒng)事件,按時(shí)間輪轉(zhuǎn)。
cd /etc/logrotate.d
cat rsyslog
內(nèi)容形如:
/var/log/syslog
/var/log/kern.log
...
/var/log/debug
/var/log/messages
{rotate 4weeklymissingoknotifemptycompressdelaycompresssharedscriptspostrotate/usr/lib/rsyslog/rsyslog-rotateendscript
}
前邊是指定的日志文件,大括號(hào) {}
內(nèi)的是對(duì)這些文件應(yīng)用的具體規(guī)則:
rotate 4
:保留最新的4個(gè)輪替文件。超過這個(gè)數(shù)量的舊文件會(huì)被刪除。weekly
:日志文件將每周輪替一次。missingok
:如果日志文件不存在,不會(huì)報(bào)錯(cuò)。notifempty
:如果日志文件為空,不進(jìn)行輪替。compress
:輪替的日志文件將被壓縮(默認(rèn)使用gzip)。delaycompress
:壓縮操作將延遲到下一次輪替周期。sharedscripts
:這個(gè)選項(xiàng)意味著postrotate
腳本將只執(zhí)行一次,而不是對(duì)每個(gè)日志文件執(zhí)行一次。postrotate
/endscript
:這是一對(duì)指令,定義了在日志文件輪替后需要執(zhí)行的腳本。
比如將 weekly
改為 size 100M
選項(xiàng),指定日志文件達(dá)到一定大小時(shí)進(jìn)行輪替,避免異常占用。
執(zhí)行 sudo logrotate -f /etc/logrotate.conf
使配置生效。
異常處理
U 盤運(yùn)行 ddrescue
時(shí),沒限制日志大小,把電腦卡死了,導(dǎo)致重啟一直卡在光標(biāo)處進(jìn)不了系統(tǒng)。
在論壇翻到了一個(gè)進(jìn)入命令行系統(tǒng)的方案:Ubuntu boots to a black screen with blinking a underscore character after release upgrade。
開機(jī)選擇安全模式,卡在光標(biāo)處的時(shí)候,按 Ctrl + Alt + F1
或 Ctrl + Alt + F3
切換到命令行模式。
最后通過命令行發(fā)現(xiàn)了該問題: U 盤的 /var/log/syslog
和 /var/log/kern.log
把持久化內(nèi)存撐爆了,導(dǎo)致系統(tǒng)無法正常啟動(dòng)。
清理并刷新系統(tǒng)日志:
cd /var/log
sudo echo > syslog
sudo echo > kern.log
sudo systemctl restart rsyslog
重新輸入 df -h
查看硬盤占用信息。
工作區(qū)備份
Rufus 重裝后有兩個(gè)分區(qū),一個(gè)是只讀的 squashfs,另一個(gè)是持久化的 ext4。如果將 U盤用于日常工作,可以用 dd 命令備份硬盤,避免 U 盤損壞丟失工作區(qū)。命令如下:
sudo dd if=/dev/sda of=/path/to/backup.img bs=4M status=progress
以上。實(shí)踐過程中遇到了其他問題或有新的發(fā)現(xiàn),歡迎討論~