Назад | Перейти на главную страницу

Могу ли я использовать blockdev --setra на отформатированном устройстве или в существующем массиве RAID?

У меня есть массив RAID, и я хочу увеличить параметр чтения. Но устройство уже отформатировано и содержит данные, потерять которые я не могу. Я не знаком с командой blockdev. Безопасно ли запускать blockdev --setra = xxxxx на уже отформатированных устройствах? Будет ли выполнение следующей команды уничтожать (удалять) данные на моем устройстве? Есть ли риск этого?

$ blockdev --setra 65536 /dev/md0

Не уверен, что это важно, но вот подробности об устройствах:

$ xfs_info /data/d1

meta-data=/dev/md0               isize=256    agcount=16, agsize=8191936 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=131070976, imaxpct=25
         =                       sunit=64     swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=64000, version=2
         =                       sectsz=512   sunit=64 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

$ sudo mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Thu May  5 17:23:35 2011
     Raid Level : raid0
     Array Size : 524283904 (500.00 GiB 536.87 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

    Update Time : Thu May  5 17:23:35 2011
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 256K

           Name : d1:0
           UUID : 16d7fee4:a8903d2f:28c65d2f:161006b5
         Events : 0

    Number   Major   Minor   RaidDevice State
       0     202      241        0      active sync   /dev/sdp1
       1     202      242        1      active sync   /dev/sdp2
       2     202      243        2      active sync   /dev/sdp3
       3     202      244        3      active sync   /dev/sdp4

Я бегал blockdev --setra XX во многих существующих файловых системах с данными без потери данных. Фактически, это параметр времени выполнения, поэтому, если вы хотите, чтобы параметр упреждающего чтения не по умолчанию был постоянным, вам нужно использовать --setra на блочном устройстве при каждой загрузке.

«blockdev --setra» совершенно безопасен. В наших сценариях инициализации есть возможность запускаться при каждой загрузке на нескольких серверах. Вы, вероятно, захотите сделать то же самое после того, как протестировали несколько значений и решили, что лучше всего подходит для вашей рабочей нагрузки.