我應該如何在 Arch/Manjaro 中為 LUKS 啟用丟棄和無工作隊列
所以我已經閱讀了 wiki和這個答案,但我還是有點不知所措。在 wiki 中,感覺其中很多都是可選的。
這就是我所做的。我使用 Manjaro 安裝到單個分區中,我可能會後悔,我啟用了全盤加密。我在引導到 Windows 或 Linux 時觀察到的是系統提示我輸入密碼,然後我看到了實際的 grub 菜單。
我不確定哪些選項會起作用。我認為啟用了 LVM,但不是 100%,我確定我選擇了 ext4。我查看了修改 grub.conf 生成腳本,但我不確定在哪裡,也不確定那是否是正確的地方。
在 Manjaro 上添加
discard
、no_read_workqueue
和的正確答案是什麼?no_write_workqueue
更新:
這是我目前的最新配置,但我不斷陷入救援外殼。我正在嘗試使用 systemd cryptsetup 來做所有的事情,這似乎表明我使用
luks.*
參數。*注意:*這個名字
root
來自我在救援外殼中的手動安裝。NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS MOUNTPOINT UUID loop0 7:0 0 450.2M 1 loop /var/lib/snapd/snap/wickrme/543 /var/lib/snapd/snap/wickrme/543 loop1 7:1 0 55.4M 1 loop /var/lib/snapd/snap/core18/2074 /var/lib/snapd/snap/core18/2074 loop2 7:2 0 65.1M 1 loop /var/lib/snapd/snap/gtk-common-themes/1515 /var/lib/snapd/snap/gtk-common-themes/1515 loop3 7:3 0 32.3M 1 loop /var/lib/snapd/snap/snapd/12398 /var/lib/snapd/snap/snapd/12398 zram0 253:0 0 1.5G 0 disk [SWAP] [SWAP] nvme0n1 259:0 0 953.9G 0 disk ├─nvme0n1p1 259:1 0 100M 0 part /boot/efi /boot/efi 6CEB-F417 ├─nvme0n1p2 259:2 0 16M 0 part ├─nvme0n1p3 259:3 0 780.6G 0 part ├─nvme0n1p4 259:4 0 508M 0 part CA343C30343C223D ├─nvme0n1p5 259:5 0 146.5G 0 part 74c51543-eb14-4f61-afeb-b5de6c10a32a │ └─root 254:0 0 146.5G 0 crypt / / e0a93c98-88a8-4fc9-9948-acdb423d05fd └─nvme0n1p6 259:6 0 18.6G 0 part [SWAP] [SWAP] 72db96da-87e4-4b17-a622-6a4d56b314c6
4 ❯ cryptsetup luksDump /dev/nvme0n1p5 # ~ LUKS header information for /dev/nvme0n1p5 Version: 1 Cipher name: aes Cipher mode: xts-plain64 Hash spec: sha256 Payload offset: 4096 MK bits: 512 UUID: 74c51543-eb14-4f61-afeb-b5de6c10a32a
❯ cat /etc/default/grub | grep -v -e '^[[:space:]]*$' -e '^#' # ~ GRUB_DEFAULT=saved GRUB_TIMEOUT=5 GRUB_TIMEOUT_STYLE=hidden GRUB_DISTRIBUTOR="Manjaro" GRUB_CMDLINE_LINUX_DEFAULT="quiet luks.uuid=74c51543-eb14-4f61-afeb-b5de6c10a32a luks.options=discard,no_read_workqueue,no_write_workqueue root=/dev/mapper/luks-e0a93c98-88a8-4fc9-9948-acdb423d05fd splash apparmor=1 security=apparmor udev.log_priority=3" GRUB_CMDLINE_LINUX="" GRUB_SAVEDEFAULT=true GRUB_PRELOAD_MODULES="part_gpt part_msdos" GRUB_TERMINAL_INPUT=console GRUB_GFXMODE=1280x768x32,auto GRUB_DISABLE_RECOVERY=false GRUB_DISABLE_OS_PROBER=false GRUB_COLOR_NORMAL="light-gray/black" GRUB_COLOR_HIGHLIGHT="green/black" GRUB_THEME="/usr/share/grub/themes/manjaro/theme.txt" GRUB_ROOT_FS_RO=true GRUB_ENABLE_CRYPTODISK=y
據我了解
systemd-cryptsetup-generator
,不需要更多選擇,我確實有一個,/etc/crypttab
但所有內容都被註釋掉了。我相當有信心這
GRUB_CMDLINE_LINUX_DEFAULT
是我唯一的問題,但我不確定它應該是什麼。Google沒有找到我很多(沒有閱讀)關於如何使用blkid
or的輸出執行此操作的範例lsblk
。
我終於想通了,為了修復我的靴子,並獲得我想要的功能,我必須這樣做。
GRUB_CMDLINE_LINUX_DEFAULT="cryptdevice=UUID=74c51543-eb14-4f61-afeb-b5de6c10a32a:root:allow-discards,no-read-workqueue,no-write-workqueue quiet udev.log_priority=3"
TLDR - 如果可能,不要加密整個磁碟,如果可能,最後給它一些完全未分區的喘息空間,並在 fstab 中保留大部分預設值。
這是我不確定的使用者選擇權衡之一,因此我寧願謹慎行事並與維護者一起去。
話雖如此,TRIM 命令有可能延長 SSD 的壽命,但它們也有可能增加該 LUKS 分區的脆弱性。
安裝它們實際上會減少多少驅動器的壽命?你覺得舒服到什麼程度?
實際上必須加密多少驅動器?使用 TRIM 加密的數據有多脆弱?
它也可以手動、在 cron 上或作為服務完成
我在多台機器上堅持使用預設設置,我總是加密根目錄,但通常只有 100GB LUKS 分區,其中至少有根目錄和首頁,在我的桌面上,我通常也安裝了一些沒有加密的驅動器任何分區。總的來說,與沒有加密分區的驅動器相比,我認為我沒有看到任何個人驅動器因此而過早死亡。除了筆記型電腦過熱的一個行為不端的 msata 之外,我不記得曾經擁有過一個壞的 SSD(當機器變熱時,它會在某些時候沒有數據)。但是我聽說某些 RAID 5 硬體控制器由於某些類似情況而殺死了 SSD。編輯:我收回沒有任何死 SSD 的東西,我有一盒 SSD 驅動器一開始就不好,一些零碎的東西是壞的,
並且有可能,就 SSD 磨損而言,noatime更為重要,尤其是在讀取密集型驅動器/分區上:
為了緩解其中的一些問題,我通常什至不會對驅動器的最後 10% 進行分區,即使我填滿了磁碟(這是文件系統的典型保留塊的補充),也會給磨損旋轉器大量啃食。十多年來,我沒有在個人機器上使用過交換分區。而且我不加密整個磁碟,我在 LUKS 上的 LVM 內加密 root、home usr 和 var,然後在我嘗試放置無關緊要的東西的地方創建其他數據分區,例如 /mnt/steam SteamLibrary 的分區,因為它可以輕鬆地被吹走並重新下載。100GB LUKS 分區對於arch root usr var home 分區來說通常綽綽有餘,而且大多數現代機器我都有大量的RAM,所以我將tmpfs 用於/tmp。我安裝了大量的軟體,所以 /usr 是:
du -sh /usr 26G /usr
要查看您是否有 lvm,請使用命令 pvscan lvscan vgscan 範例:
[root@examplenode1 ~]# lvscan ACTIVE '/dev/examplemachineVG/examplemachineRoot' [40.00 GiB] inherit ACTIVE '/dev/examplemachineVG/examplemachineHome' [70.98 GiB] inherit [root@examplenode1 ~]# vgscan Found volume group "examplemachineVG" using metadata type lvm2 [root@examplenode1 ~]# pvscan PV /dev/mapper/examplemachinecrypt VG examplemachineVG lvm2 [110.98 GiB / 0 free] Total: 1 [110.98 GiB] / in use: 1 [110.98 GiB] / in no VG: 0 [0 ]
還要檢查內容
/dev/mapper/
和
/etc/fstab /etc/mtab