硬件

硬件

硬件

  • 华硕 K8N4-E 豪华主板
  • Sil 3114 假袭击,船上
  • 2 Seagate 250 GB 硬盘,托管我的 /home
  • 在 /home 的单独硬盘上进行备份

我目前拥有的

我使用 Sil 3114 固件创建了 raid。我使用的是 raid 级别 1。我有一个 bash 脚本,只要收到提示,我就会以 root 身份运行它:

dmraid -ay
mount /dev/mapper/sil*1 /home

问题

每次启动时我都必须以 root 身份登录并使用那个愚蠢的 bash 脚本。Ubuntu 不会自动理解 raid 卷。我没有放入 raid 卷,fstab因为它在启动时不存在。如何让 fakeraid 中的 /home 在启动时自动挂载?

答案1

以下是设置 fakeraid 和自动安装相关分区所需的步骤:

  1. 安装 dmraid 包:

    sudo apt-get install dmraid
    
  2. 重新启动(这是因为 dmraid 将自身添加到 initramfs 中)

  3. fakeraid 设备应该出现如下界面:

    $ ls /dev/mapper/*
    brw-rw---- 1 root disk 252,   0 Dec  6 16:21 /dev/mapper/isw_dhdhchcbaf_Dima
    brw------- 1 root root 252,   1 Dec  6 16:21 /dev/mapper/isw_dhdhchcbaf_Dima1
    crw------- 1 root root  10, 236 Dec  6 16:22 /dev/mapper/control
    

    上面*Dima是 fakeraid 设备,而*Dima1是分区。如果您没有 *N,则需要创建分区表、创建分区、使用文件系统格式化 ot 并再次重启。

  4. 在Ubuntu中,所有分区默认都是按UUID挂载的,我们来看一下UUID:

    $ sudo blkid
    [sudo] password for xnox: 
    /dev/sda: TYPE="isw_raid_member" 
    /dev/sdb: TYPE="isw_raid_member" 
    /dev/mapper/isw_dhdhchcbaf_Dima1: UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae" TYPE="ext4" 
    /dev/sdc1: UUID="A904-D2E7" TYPE="vfat" 
    /dev/sdc2: UUID="6669d411-80c3-41cc-a629-ad84e1ee6854" TYPE="ext4" 
    /dev/sdc3: UUID="2bf263f1-753f-4b2e-92a6-b00381515e0c" TYPE="swap" 
    /dev/sdd1: UUID="C499-1A68" TYPE="vfat" 
    

    看到通缉犯是UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae"

  5. 因此/etc/fstab条目将是:

    UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae" /srv/dima ext4 defaults 0 0
    

答案2

这应该只是工作因为 dmraid 包会将钩子安装到 ramdisk 中以探测假 raid 设备。如果这不起作用,则说明您遇到了真正的错误。要恢复正常基线,请执行:

sudo -s
apt-get install --reinstall dmraid
update-initramfs -u -k all
reboot

如果该设备仍然没有出现在 /dev/mapper 中,请提交错误报告。

答案3

我相信 @ppetraki 的说法是正确的,这是 ubuntu 版本中的一个错误。一个好的解决方法是:

  1. dmraid -ay编写一个在系统启动时运行的 upstart 服务。
  2. 在 fstab 中,通过 UUID 挂载设备

答案4

在 fstab 中尝试这个:

/dev/mapper/sil*1  /home  reiserfs  user,nosuid,exec,nodev  0  0 

然后执行sudo mount -a或重启

相关内容