Debian Linux 升級 udev 時, mdadm 被移除 解法(testing)

每次想到就會隨手做做 apt-get dist-upgrade, 但是這次做完時才看到下述文字~

下列套件將會被【移除】:
  mdadm
下列套件將會被升級:
  udev
升級 1 個,新安裝 0 個,移除 1 個,有 1 個未被升級。
.... (略)
正在移除 mdadm ...
Stopping MD monitoring service: mdadm --monitor.
W: mdadm: I'll update the initramfs, but if you need MD to boot
W: mdadm: with initramfs, you'll be screwed!
update-initramfs: deferring update (trigger activated)
正在進行 man-db 的觸發程式 ...
正在進行 initramfs-tools 的觸發程式 ...
update-initramfs: Generating /boot/initrd.img-2.6.30-2-amd64
W: Possible missing firmware /lib/firmware/e100/d102e_ucode.bin for module e100
W: Possible missing firmware /lib/firmware/e100/d101s_ucode.bin for module e100
W: Possible missing firmware /lib/firmware/e100/d101m_ucode.bin for module e100
正準備替換 udev 0.141-2(使用 .../archives/udev_146-5_amd64.deb)...
正在解開替換的套件檔 udev ...
正在設定 udev (146-5) ...
正在安裝新版的設定檔 /etc/init.d/udev ...
update-initramfs: deferring update (trigger activated)

問題

MDADM 是拿來做 軟體RAID 在, 詳可見: Debian Linux Software RAID 1 實作.

上述看起來 MDADM 被移掉了, 於是趕快再裝回去.(不裝 軟體RAID 會掛掉吧. XD)

安裝 MDADM - 衝突

  • apt-get install mdadm

以下套件是被自動安裝進來的,且已不再會被用到了:
  libklibc klibc-utils
使用 'apt-get autoremove' 來將其移除。
下列套件將會被【移除】:
  initramfs-tools linux-image-2.6-amd64 linux-image-2.6.26-2-amd64 linux-image-2.6.30-1-amd64
  linux-image-2.6.30-2-amd64 udev
下列【新】套件將會被安裝:
  mdadm
升級 0 個,新安裝 1 個,移除 6 個,有 1 個未被升級。
需要下載 0B/433kB 的套件檔。
此操作完成之後,會空出 258MB 的磁碟空間。

.... 看到這個就不敢裝回去了. (裝完後 kernel 也被移光了. XD)

安裝 MDADM + udev + Kernel - 錯誤

再試試含 Kernel 一起安裝看看.

  • apt-get install mdadm initramfs-tools linux-image-2.6-amd64 linux-image-2.6.26-2-amd64 linux-image-2.6.30-1-amd64 udev

出現下述錯誤

下列的套件有未滿足的相依關係:
  udev: 毀損: mdadm (< 3.0-3) 但 3.0-2 卻將被安裝

看起來是 udev 和 mdadm 有衝突, 猜想 mdadm 應該 3.0-3 版以上就可以安裝了, 到  Debian bug tracking system 找跟 mdadm 相關的 Bug 看看, 找到下述:

看起來直接安裝新版就可以解決.

解法

  1. vim /etc/apt/sources.list # 加入下述此行

    deb http://ftp.us.debian.org/debian/ sid main non-free

  2. apt-get update
  3. apt-get install mdadm # 會安裝 mdadm 3.0-3.1 版, udev, kernel 也都正常留著.
  4. vim /etc/apt/sources.list # 將剛剛上述那行移除即可.
  5. 完成.
  6. cat /proc/mdstat # 看起來都正常囉~

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

在〈Debian Linux 升級 udev 時, mdadm 被移除 解法(testing)〉中有 7 則留言

  1. mdadm算是kernel裡面RAID模組的管理工具。
    所以要新增或是發trap還是要靠mdadm。
    但是短暫的移掉mdadm應該是可以work的。
    就算重新開機沒有mdadm,還是可以透過kernel的autodetect找到/dev/md*。
    只是沒辦法新增或是管理而已。
    就是因為這樣,我才會常常忘了裝.....XD

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料