ive得到了md0(raid 1)arrays,并希望在系统启动(ubuntu 12.04服务器)期间写入caching。
md0:/ dev / sda / dev / sdc
BLKID:
/dev/sda: UUID="3e502de5-696d-f4b4-470e-XXX" TYPE="linux_raid_member" /dev/sdb1: UUID="4ba40aae-65e2-416b-8f17-XXX" TYPE="ext2" /dev/sdb5: UUID="LNt5uO-ZFik-eQ0g-BEhP-FDLi-XXX" TYPE="LVM2_member" /dev/md0: UUID="a7eb2443-c3be-45e6-a3eb-XXX" TYPE="ext4" /dev/mapper/mydev-root: UUID="b560f808-db97-4a56-bbf1-XXX" TYPE="ext4" /dev/sdc: UUID="3e502de5-696d-f4b4-470e-XXX" TYPE="linux_raid_member" /dev/mapper/mydev-swap_1: UUID="49b806fe-95a6-4ddf-9c47-XXX" TYPE="swap"
hdparm -W 0 / dev / sda(或者/ dev / sdc)可以正常工作,但是这些字母可以在启动时更改。 我想通过disk-uuid来使用它。
** stat / dev / disk / by-uuid / *
File: `/dev/disk/by-uuid/4ba40aae-65e2-416b-8f17-XXX' -> `../../sdb1' File: `/dev/disk/by-uuid/a7eb2443-c3be-45e6-a3eb-XXX' -> `../../md0' File: `/dev/disk/by-uuid/49b806fe-95a6-4ddf-9c47-XXX' -> `../../dm-1' File: `/dev/disk/by-uuid/b560f808-db97-4a56-bbf1-XXX' -> `../../dm-0'
如果我使用hdparm -W 0 / dev / disk / by-uuid / a7eb2443-c3be-45e6-a3eb-XXX – 则失败。
/sdb1 -- system hdd /dm-0 -- /boot on sdb1 /dm-1 -- /root on sdb1
我正在尝试使用本机/etc/hdparm.conf来禁用disk-by-uuid上的write_cache。
我不想写一些脚本来检查什么/ dev / sdX我应该用hdparm,所以即时通讯要求做什么。 请帮忙。
您已经尝试在与您的RAIDarrays(md0)对应的旁路设备文件上使用hdparm 。 请尝试在与物理磁盘相对应的磁盘上运行它。
像这样的一个class轮将在所有用于MD RAID的设备上运行“hdparm -W 0”。
blkid | awk -F: '/linux_raid_member/ {print $1}' | xargs -r -n 1 hdparm -W 0
如果你使用分区而不是整个磁盘进行RAID,那么你需要从设备名称中删除分区号(并且对它们进行独特的sorting,所以你不需要为sda1,sda2,sda3获得sda三次):
blkid | awk -F: '/linux_raid_member/ {print $1}' | sed -e 's/[0-9]\+$//' | sort -u | xargs -r -n 1 hdparm -W 0
像往常一样,首先在hdparm之前插入一个回声来testing单线队员将要做的事情。 如果输出看起来很正常,那么再次运行它,而不需要回显。