Server for Information Technologies Сервер поддерживается
Центром Информационных Технологий
(095) 932-9212, 932-9213, 939-0783
E-mail: info@citforum.ru
Сервер содержит море(!) аналитической информации CIT Forum CD-ROM

ALTTRACK(4)

НАЗВАНИЕ
alttrack - альтернативные дорожки для дефектных дорожек диска

ОПИСАНИЕ
Блок 0 на дисковом томе содержит информацию о наличии и размещении дефектных дорожек, в виде следующей структуры.

#define ALTMAGIC 0XDBDF  /* магическое число блока
        дефектных дорожек*/
#define ALTSIZE 512  /* размер области инфор- 
        мации о дефектных до- 
        рожках */
#define NICALT ALTSIZE/2-4 /* максимальное число
        альтернативных дорожек */

struct alttrack {
  unsigned short a_magic; /* магическое число */
  unsigned short a_count; /* текущее количество
         дефектных дорожек */
  unsigned short a_nicbad; /* максимальное число
         дефектных дорожек */
  unsigned short a_base; /* начало карты */
  unsigned short at_map [NICALT]; /* текущее ко- 
      личество альтернативных дорожек */
};

Утилита alttrack(1M) позволяет отображать и задавать эту информацию в символьном виде.

Типичный результат работы alttrack(1M) -a, -r (или входная информация для -w) выглядит так:

  #bad tracks from /dev/rdsk/sm3s7
  #magic count max base
  56287 3  3 4245
  #tracks(cyl:head):
  2:1 444:0 2123:0

Дорожка на цилиндре 2, головке 1 отображается на первую альтернативную дорожку 4245, дорожка на цилиндре 444, головке 0 - на следующую дорожку 4246. Эта дорожка, находящаяся на цилиндре 2123, головке 0, сама дефектна и отображается на следующую дорожку 4247.

Нулевая дорожка находится на цилиндре 0, головке 0. Номера дорожек сначала пробегают головки одного цилиндра, затем переходят на следующий цилиндр. Строки, начинающиеся с #, являются комментариями.

Информация изготовителя об аппаратных дефектах, обрабатываемая командой 'alttrack -a', должна иметь вид:

для приводов с интерфейсом smd - 1 запись на дорожку:

  long bid;  /* идентификатор дорожки;
       < 0 для дефектной дорожки */
  long bpos [4]; /* позиции ошибок (до 4-х) */
  unsigned short bend; /* контрольный код
        0xF000 */
для приводов с интерфейсом st506 - по 1 записи на каждой дорожке цилиндра 0:
  long date;
  short zero [2];
  {char cyl [2]; /* цилиндры, имеющие аппаратные
       дефекты */
   char xxx [3];} [50] /* до 50 на поверхность */

Oбработка дефектных дорожек.
После выполнения 'mknod' для raw-устройства следует:

  • собрать информацию о дефектных дорожках диска
    #alttrack -a /dev/rdsk/smls7 >/etc/badtrack/file ;
  • форматировать диск
    #format /dev/rdsk/smls7 ;
  • записать информацию о дефектных дорожках на диск
    #alttrack -w /dev/rdsk/smls7 </etc/badtrack/file .
Для добавления дефектной дорожки следует:
  • скорректировать блок 0:
    увеличить счетчик count, при необходимости увеличить max и base, описать новую дефектную дорожку, занести информацию на диск утилитой alttrack.
    Внимание! Запись информации о дефектных дорожках на диск приводит к потере всей информации на диске!;
  • создать новую файловую систему утилитой mkfs.

ФАЙЛЫ

/usr/include/sys/disk.h
/etc/badtrack/*

СМ. ТАКЖЕ
alttrack(1M), format(1M).

Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT
Обновлено: 13.03.2015