|
|
1.1 ! root 1: .\" Copyright (c) 1988 Regents of the University of California. ! 2: .\" All rights reserved. The Berkeley software License Agreement ! 3: .\" specifies the terms and conditions for redistribution. ! 4: .\" ! 5: .\" @(#)vdformat.8 5.1 (Berkeley) 3/27/88 ! 6: .\" ! 7: .TH VDFORMAT 8 "March 27, 1988" ! 8: .UC 4 ! 9: .SH NAME ! 10: .I Vdformat ! 11: \- Format disk media and / or relocate bad sectors on drives attached ! 12: to VDDC disk controllers. ! 13: .SH DESCRIPTION ! 14: .PP ! 15: \fBVDFORMAT\fP can be used to format disk drives, relocate ! 16: known flawed sectors, verify disk surfaces, print seek profile graphs ! 17: for disk drives, exercise disk drives, and perform general disk drive ! 18: maintenance procedures. ! 19: .PP ! 20: VDFORMAT keeps track of all known flaws by placing their addresses in a ! 21: \fBbad sector map\fP on the last cylinder of each disk drive. This information ! 22: is used during subsequent formatter operations to keep all known ! 23: bad sectors correctly relocated. ! 24: .PP ! 25: Flaw addresses are loaded into the bad sector map in four ways. ! 26: The first is by ! 27: reading the manufacturer's flaw map directly from the disk surface. ! 28: The second is by automatically adding any new flaws found during verify ! 29: operations. The third is by direct operator entry. The fourth ! 30: is by reading the ! 31: entire disk surface once and taking note of any errors or relocations ! 32: found during the reads. ! 33: .PP ! 34: .SH Command overview ! 35: .PP ! 36: The following basic commands are \fIalways\fP ! 37: available, even when long formatting ! 38: operations are underway: ! 39: .PP ! 40: .nf ! 41: .in +3m ! 42: \fICommand\fP \fIAction\fP ! 43: ! 44: \fBHelp\fP Prints a list of available options. ! 45: \fBStatus\fP Display current state of formatter. ! 46: \fBKill\fP Aborts all operations. ! 47: .in -3m ! 48: .fi ! 49: .PP ! 50: There are two abbreviations available for the above commands. ! 51: These abbreviations are strictly for operator convenience. ! 52: They are: ! 53: .PP ! 54: .nf ! 55: .in +3m ! 56: \fIAbbreviation\fP \fICommand\fP ! 57: \fB?\fP Help ! 58: \fB!\fP Status ! 59: .in -3m ! 60: .fi ! 61: .PP ! 62: In addition, the following ! 63: commands are available from the \fIOperation\fP prompt level: ! 64: .PP ! 65: .nf ! 66: .in +3m ! 67: \fICommand\fP \fIAction\fP ! 68: ! 69: \fBList\fP List all operations specified so far. ! 70: \fBDelete\fP Delete specific operations. ! 71: \fBReset\fP Reinitialize \fBVDFORMAT\fP, and start all over again. ! 72: \fBStart\fP Start operations. ! 73: \fBInfo\fP Tell everything that is known about a disk. ! 74: \fBFormat\fP Format and verify disk surface. ! 75: \fBVerify\fP Non-destructively verify disk surface. ! 76: \fBRelocate\fP Add known flaws to bad sector map. ! 77: \fBCorrect\fP Correct erroneous relocations or drive identification. ! 78: \fBProfile\fP Print a graph of seek time vs seek length. ! 79: \fBExercise\fP Perform read / write / seek exercises on disk. ! 80: .in -3m ! 81: .fi ! 82: .PP ! 83: The starting banner prints the program name, version number, and enough ! 84: information for the operator to get started without ! 85: reading this manual page. ! 86: .nf ! 87: ! 88: \fIExample\fP ! 89: ! 90: \fBVDFORMAT\fP Version 3.0 ! 91: ! 92: Type "Help" for help, "Start" to start specified operations. ! 93: ! 94: Operation? ! 95: .fi ! 96: .PP ! 97: .SH Help ! 98: .PP ! 99: The operator has a help command available for use at \fIany\fP time. ! 100: The \fBHelp\fP command displays available options according to the ! 101: current context. ! 102: .PP ! 103: In addition to the examples below there are further examples of help ! 104: messages throughout the operation examples. ! 105: .nf ! 106: ! 107: \fIExample\fP ! 108: ! 109: Operation? \fBHelp\fP ! 110: The following operations are available: ! 111: Reset - Reinitialize \fBVDFORMAT\fP and start over. ! 112: List - List all operations specified so far. ! 113: Delete - Delete specific operations. ! 114: Format - Format and verify disk surface. ! 115: Verify - Non-destructively verify disk surface. ! 116: Relocate - Add known flaws to bad sector map. ! 117: Correct - Correct erroneous relocations or drive ID. ! 118: Info - Display known disk information. ! 119: Profile - Display seek profile graph of disk. ! 120: Exercise - Perform seek exercises on disk. ! 121: Start - Start operations. ! 122: ! 123: Operation? ! 124: .fi ! 125: .SH Status ! 126: .PP ! 127: The \fBStatus\fP command may be typed in at any time to determine the ! 128: status of the formatter. The status message will explain ! 129: what the formatter is waiting for, ! 130: the current operation, and a progress report ! 131: if the formatter is busy. ! 132: .nf ! 133: ! 134: \fIExample\fP ! 135: ! 136: Starting format on controller 0, drive 1, drive type is FSD. ! 137: ! 138: \fBHelp\fP ! 139: The following commands are available: ! 140: Status - Display current state of formatter. ! 141: ! 142: \fBStatus\fP ! 143: Formatting on controller 0, drive 1, drive type is FSD. ! 144: Inspecting disk to determine current state. ! 145: Currently inspecting cylinder 120, track 10, sector 15. ! 146: ! 147: Formatting completed successfully. ! 148: .fi ! 149: .SH Kill ! 150: .PP ! 151: The \fBKill\fP command may be used to stop operations that are in ! 152: progress already. \fBKill\fP will always have meaning, may ! 153: be issued at any time, and will always leave disks in a consistent state. ! 154: .SH Specifying operations ! 155: .PP ! 156: Formatter operations are broken into two phases: entry ! 157: and execution. ! 158: .PP ! 159: During the entry phase the operator enters all the ! 160: disk operations that he / she wants to execute during the execution ! 161: phase. After the operation list is entered correctly the operator ! 162: issues the start command and execution begins. ! 163: .PP ! 164: The execution phase executes all commands specified during the entry phase ! 165: on the specified disks. These commands are accumulated and executed ! 166: later because each operation may require up to several hours to complete. ! 167: By deferring operations, \fBVDFORMAT\fP frees the operator to do other ! 168: work during this time period. ! 169: .PP ! 170: The commands that are detailed in this section ! 171: are grouped according to the immediacy of their ! 172: actions. Commands such as \fBDelete\fP and \fBReset\fP, ! 173: which will execute the moment they are ! 174: keyed into the system, are termed immediate commands. ! 175: Commands which ! 176: effect after the \fBStart\fP command is issued ! 177: are termed deferred commands. ! 178: .SH Immediate commands ! 179: .PP ! 180: Instead of forcing the operator to specify one operation on one drive ! 181: at a time, ! 182: comma separated lists and dash separated ranges can ! 183: be entered for operations, controller ! 184: numbers, and drive numbers. ! 185: Please refer to examples. ! 186: .SH List operation ! 187: .PP ! 188: The \fBList\fP operation displays all commands that ! 189: were keyed in by the operator and are ready to ! 190: be executed when the \fBStart\fP command is issued. ! 191: .nf ! 192: ! 193: \fIExample\fP ! 194: ! 195: Operation? \fBList\fP ! 196: The following operations will occur when Start is issued: ! 197: ! 198: Format on Controller 0, drive 1, type FSD. ! 199: Format on Controller 0, drive 2, type XFD. ! 200: Format on Controller 0, drive 3, type XFD. ! 201: Relocate on Controller 0, drive 0, type FSD. ! 202: .fi ! 203: .SH Delete operation ! 204: .PP ! 205: Delete is intended to provide a simple editing facility for command ! 206: lists. Between the \fBDelete\fP operation and the ability to add more ! 207: operations to the operation list, Any error in the operation list ! 208: can be corrected. ! 209: .PP ! 210: When the delete operation is specified, a numbered list of operations ! 211: is printed on the console and \fBVDFORMAT\fP will repeatedly ! 212: ask for line numbers to delete. ! 213: .PP ! 214: Line numbering for the \fBDelete\fP operation will remain the same ! 215: even after a line is deleted. This is done to avoid confusion, but ! 216: it implies that the same line can be deleted multiple times. This ! 217: presents no problems for the formatter and no error will be returned ! 218: if this is done. ! 219: .PP ! 220: The \fBDelete\fP prompt level is terminated by entering 'Quit' ! 221: (or the \fBKill\fP command) as shown in the following example: ! 222: .nf ! 223: ! 224: \fIExample\fP ! 225: ! 226: Operation? \fBDelete\fP ! 227: 1) Format on Controller 0, drive 1, type FSD. ! 228: 2) Format on Controller 0, drive 2, type XFD. ! 229: 3) Format on Controller 0, drive 3, type XFD. ! 230: 4) Format on Controller 1, drive 0, type XSD. ! 231: 5) Format on Controller 1, drive 1, type XSD. ! 232: 6) Format on Controller 1, drive 2, type XSD. ! 233: 7) Format on Controller 1, drive 3, type XSD. ! 234: 8) Relocate on Controller 0, drive 0, type FSD. ! 235: ! 236: Delete line? \fB2\fP ! 237: 2) Format using Controller 0, drive 2, type FSD has been deleted. ! 238: Delete line? \fB8\fP ! 239: 8) Relocate using Controller 0, drive 0, type FSD has been deleted. ! 240: Delete line? \fBQuit\fP ! 241: ! 242: Operation? ! 243: ! 244: .fi ! 245: .SH Reset operation ! 246: .PP ! 247: The \fBReset\fP operation clears all commands keyed in so far ! 248: and executes internal consistency checks for the ! 249: formatter. The main use is to quickly delete all operations, ! 250: and reset internal state. ! 251: The operator who really messed up the command sequence can start ! 252: again from the top. ! 253: .nf ! 254: ! 255: \fIExample\fP ! 256: ! 257: Operation? \fBReset\fP ! 258: Reset the world. Are you sure? \fBYes\fP ! 259: ! 260: All operations specified have been deleted. ! 261: ! 262: Operation? ! 263: .fi ! 264: .SH Start operations ! 265: .PP ! 266: The \fBStart\fP command starts processing the command list ! 267: that was typed in by the operator. The operator should be sure ! 268: that all commands are correct before proceeding. ! 269: .nf ! 270: ! 271: \fIExample\fP ! 272: ! 273: Operation? \fBStart\fP ! 274: ! 275: Starting format on controller 0, drive 1, drive type is FSD. ! 276: .fi ! 277: .SH All the following commands are deferred commands. ! 278: .sp 1 ! 279: .SH Info operation ! 280: .PP ! 281: \fBInfo\fP gives a full report of everything that is known about a drive. ! 282: This includes which ! 283: sectors were bad, to what sector they were relocated, ! 284: how were the errors detected, and ! 285: the current format state. ! 286: .PP ! 287: .nf ! 288: ! 289: \fIExample\fP ! 290: ! 291: Operation? \fBInfo\fP ! 292: Gather information on which controller? \fB0\fP ! 293: Drives on controller 0? \fB1\fP ! 294: Drive type for controller 0 drive 1? \fBfsd\fP ! 295: ! 296: Operation? \fBStart\fP ! 297: ! 298: Gathering information for controller 0, drive 1. ! 299: ! 300: Module number is 123456789. ! 301: Drive type is FSD. ! 302: Drive contains a bad sector map. ! 303: The following sectors are known to be bad: ! 304: cyl 181, head 2, pos 4470, len 1 (Sector #57991) -> sector 261760. ! 305: cyl 210, head 6, pos 8880, len 1 (Sector #67406) -> sector 261764. ! 306: cyl 292, head 3, pos 19590, len 1 (Sector #93567) -> sector 261761. ! 307: cyl 293, head 3, pos 19590, len 1 (Sector #93887) -> sector 261762. ! 308: Information display completed successfully. ! 309: .fi ! 310: .SH Format operation ! 311: .PP ! 312: The \fBformat\fP operation will read ! 313: the flaw map information directly from the drives and use that information to ! 314: map out all flaws after formatting the drive's surface. ! 315: .PP ! 316: After formatting the drive's surface the drive surface is verified using ! 317: the number of patterns requested by the operator. The number of patterns ! 318: may range from 0 to 16. It is suggested that at least one pattern be used ! 319: so potential drive problems are more likely to be found before real information ! 320: is written on the drives. ! 321: .PP ! 322: .nf ! 323: ! 324: \fIExample\fP ! 325: ! 326: Operation? \fBFormat\fP ! 327: Format on which controller? \fBHelp\fP ! 328: The following controllers are attached to the system ! 329: Controller 0, which is a VDDC controller. ! 330: Controller 1, which is an SMD-E controller. ! 331: Controller 2, which is an SMD-E controller. ! 332: ! 333: Format on which controller? \fB0\fP ! 334: Number of patterns to use when verifying? \fB1\fP ! 335: Drives on controller 0? \fBHelp\fP ! 336: Drives 0 through 3 are acceptable on VDDC controllers. ! 337: ! 338: Drives on controller 0? \fB1\fP ! 339: Drive type for controller 0 drive 1? \fBHelp\fP ! 340: The following drive types are available to VDDC controllers: ! 341: FSD - 160 Mb Control Data winchester drive. ! 342: SMD - 300 Mb Control Data Removable media drive. ! 343: XFD - 340 Mb Control Data winchester drive. ! 344: ! 345: Drive type for controller 0 drive 1? \fBfsd\fP ! 346: Module serial number for controller 0 drive 1? \fB1234\fP ! 347: ! 348: Operation? \fBStart\fP ! 349: ! 350: Starting format on controller 0, drive 1, drive type is FSD. ! 351: ! 352: ** Warning - Unable to relocate sector 12347, ! 353: to map out using BADSECT use the following values: ! 354: On the 'a' partition use block 6000 ! 355: On the 'c' partition use block 25 ! 356: ! 357: Formatting completed successfully. ! 358: .fi ! 359: .SH Verify operation ! 360: .PP ! 361: The verify operation can be used to check for new flaws on a disk ! 362: that currently has data ! 363: on it. This is accomplished by ! 364: writing the necessary patterns on the drive's surface, reading the information ! 365: back, and comparing the results to the original pattern. ! 366: If a flaw is found ! 367: the sector is relocated immediately. ! 368: Each new flaw will be relocated and permanently ! 369: added to the bad sector map. ! 370: .PP ! 371: .nf ! 372: ! 373: \fIExample\fP ! 374: ! 375: Operation? \fBVerify\fP ! 376: Verify on which controller? \fB0\fP ! 377: Drives on controller 0? \fB1\fP ! 378: Drive type for controller 0 drive 1? \fBfsd\fP ! 379: ! 380: Operation? \fBStart\fP ! 381: ! 382: Starting verify on controller 0, drive 1, drive type is FSD. ! 383: ! 384: Verification completed successfully. ! 385: .fi ! 386: .SH Relocate operation ! 387: .PP ! 388: The operator has the ability to manually type in known flaws ! 389: using the CDC flaw map format, UNIX file-system / block numbers, ! 390: absolute sector numbers, and absolute track numbers. ! 391: .PP ! 392: \fBVDFORMAT\fP will automatically switch back and forth between ! 393: the various forms of inputing flaw addresses ! 394: by looking at the first character on any ! 395: line. If the first character is between 'a' and 'h' then ! 396: it is assumed that the character is a file system name and the ! 397: next input will be the actual UNIX block number, if the first character is ! 398: an 's' then sector numbers are entered, if the first character is an 't' ! 399: then track numbers are entered, otherwise ! 400: flaw map format is assumed. ! 401: .nf ! 402: ! 403: \fIExample\fP ! 404: ! 405: Operation? \fBRelocate\fP ! 406: Relocate on controller? \fB0\fP ! 407: Drives on controller 0? \fB0\fP ! 408: Drive type for controller 0 drive 0? \fBfsd\fP ! 409: ! 410: Operation? \fBStart\fP ! 411: ! 412: Adding flaws to bad sector map on Controller 0, drive 1, type FSD. ! 413: Location? \fBa 20\fP ! 414: Confirm block 20 on file-system 'a' ? \fBYes\fP ! 415: Location? \fB10 5 12594 10\fP ! 416: Confirm Cyl 10, head 5, offset 12594, len 10 (Sector 12345)? \fBYes\fP ! 417: Location? \fBSector 1000\fP ! 418: Confirm sector 1000? \fBYes\fP ! 419: Location? \fBTrack 25\fP ! 420: Confirm track 25? \fBYes\fP ! 421: Location? \fBa 200\fP ! 422: Confirm relocation of block 200 on file-system 'a' ? \fBYes\fP ! 423: Location? \fBStart\fP ! 424: Relocation complete. ! 425: ! 426: Operation? ! 427: .fi ! 428: .SH Correct operation ! 429: .PP ! 430: The correct operation is used to correct any information that ! 431: was incorrectly written to disk. ! 432: This information includes sectors that were wrongly specified by ! 433: the operator and the operator entered pack identification. ! 434: .PP ! 435: .nf ! 436: ! 437: \fIExample\fP ! 438: ! 439: Operation? \fBCorrect\fP ! 440: Correct on controller? \fB0\fP ! 441: Drives on controller 0? \fB0\fP ! 442: Drive type for controller 0 drive 0? \fBfsd\fP ! 443: ! 444: Operation? \fBStart\fP ! 445: ! 446: Making corrections to bad sector map on Controller 0, drive 0, type FSD ! 447: Location? \fBID\fP ! 448: Pack ID is 123456789. Change to? \fB1234567890\fP ! 449: Pack ID changed to 1234567890. ! 450: Location? \fBse 20\fP ! 451: Confirm relocation removal of sector 20? \fBYes\fP ! 452: Sector 20 removed. ! 453: Location? \fBt 21\fP ! 454: Confirm relocation removal of track 21? \fBYes\fP ! 455: Track 21 removed. ! 456: Location? \fB10 5 125\fP ! 457: Confirm relocation removal of Cylinder 10, head 5, offset 125? \fBYes\fP ! 458: Cylinder 10, head 5, offset 125 removed. ! 459: Location? \fBStart\fP ! 460: Relocation complete. ! 461: ! 462: Operation? ! 463: .fi ! 464: .SH Profile operation ! 465: .PP ! 466: The profile operation is used to print a graph of seek time verses seek ! 467: distance for the specified drive. Each point on the graph prints as either ! 468: a star ('*') or a plus ('+') to indicate which direction the point ! 469: was rounded. The star shows that the point was rounded up, and the plus ! 470: shows rounding down has taken place. ! 471: .nf ! 472: ! 473: \fIExample\fP ! 474: ! 475: Operation? \fBProfile\fP ! 476: Profile on controller? \fB0\fP ! 477: Drives on controller 0? \fB0\fP ! 478: Drive type for controller 0 drive 0? \fBxsd\fP ! 479: Operation? \fBStart\fP ! 480: ! 481: Disk seek profile for controller 0, drive 0, type XSD. ! 482: ! 483: Seek | Seek time (ms) ! 484: Length |0 5 10 15 20 25 30 35 40 45 50 ! 485: -------|-----+----+----+----+----+----+----+----+----+----+ ! 486: 1 | * ! 487: 13 | + ! 488: 25 | + ! 489: 37 | * ! 490: 49 | * ! 491: 61 | + ! 492: 73 | + ! 493: 85 | + ! 494: 97 | * ! 495: 109 | + ! 496: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! 497: ! 498: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! 499: 577 | * ! 500: 589 | + ! 501: 601 | * ! 502: 613 | * ! 503: 625 | + ! 504: 637 | * ! 505: 697 | + ! 506: 709 | * ! 507: -------|-----+----+----+----+----+----+----+----+----+----+ ! 508: |0 5 10 15 20 25 30 35 40 45 50 ! 509: ! 510: Profile completed successfully. ! 511: .fi ! 512: .SH Exercise operation ! 513: .PP ! 514: The exercise operation does an exhaustive test of the drive read / write / seek ! 515: logic on a drive. The test is destructive and calculations show that it ! 516: should take about 22 weeks to complete the entire test. It is suggested that ! 517: the test be run for as long as the operator can take it before killing the test. ! 518: (24 hours is about right.) ! 519: .nf ! 520: ! 521: \fIExample\fP ! 522: ! 523: Operation? \fBExercise\fP ! 524: Profile on controller? \fB0\fP ! 525: Drives on controller 0? \fB0\fP ! 526: Drive type for controller 0 drive 0? \fBxsd\fP ! 527: Operation? \fBStart\fP ! 528: ! 529: Starting disk exercise on controller 0, drive 0, type XSD. ! 530: Pass 1... ! 531: Pass 2... ! 532: Pass 3... ! 533: . ! 534: . ! 535: . ! 536: Pass 710... ! 537: Exercise completed successfully. ! 538: .fi ! 539: ! 540: .SH DIAGNOSTICS ! 541: .PP ! 542: The controller status will be printed out after any unrecoverable error ! 543: is found. The exact meaning of the error words can be found in \fBvddc(4)\fP. ! 544: .SH SEE ALSO ! 545: .PP ! 546: vddc(4)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.