如何使用 systemd 在 arch linux 中的 raid0 上自動掛載 ntfs 分區

如何使用 systemd 在 arch linux 中的 raid0 上自動掛載 ntfs 分區

最近,我按照此 wiki 從 initscript 切換到 systemd,在啟動過程中出現以下錯誤:

Job dev-md126p5.device/start timed out

這是我的 fstab:

/dev/mapper/VGLinux-lvroot / ext4 rw,relatime,stripe=64,data=ordered 0 1
/dev/mapper/VGLinux-lvhome /home ext4 rw,relatime,stripe=64,data=ordered 0 2
/swapfile none swap defaults 0 0
/dev/md126p5 /media/data ntfs-3g uid=xiaoxing,gid=users 0 0

這是我的分區方案:我有兩個相同的硬碟,預設情況下,它是 raid0。三個分區如下:

  1. Windows 7、200GB、NTFS
  2. linux, 100GB, lvm / , 30GB, ext4 /home , 30GB, ext4 其餘的供日後使用。
  3. 數據、休息、ntfs

“超時”後,它讓我進入緊急模式,我可以手動掛載資料分區,並運行“systemctl default”,它將正常啟動系統。或者我可以註解掉fstab檔案中的「資料」部分,然後輕鬆進入系統並掛載它。

在我切換到systemd之前沒有問題。現在我已經嘗試了一切,包括編寫自己的 .service 檔案來安裝它,但它仍然無法在啟動過程中安裝分割區。有任何想法嗎?

編輯#1

上面的錯誤來自journalctl,啟動期間螢幕上列印的錯誤是:

[ TIME ] Timed out waiting for device dev-md126p5.device.

然後後面跟著很多[DEPEND],然後我就進入緊急模式了。

我只是好奇這是什麼原因?是因為它在raid上,還是因為它是ntfs分區?

答案1

看起來/dev/md126p5需要相對較長的時間來設定並變得可見systemd,從而導致超時錯誤。嘗試在 中設定較長的超時值/etc/fstab。例如:

/dev/md126p5 /media/data ntfs-3g x-systemd.device-timeout=60s,uid=xiaoxing,gid=users 0 0

x-systemd.device-timeout=60s選項告訴 systemd 在放棄設備之前等待最多 60 秒以等待設備顯示。調整超時值,直到每次啟動時都能可靠地安裝。

相關內容