sg_reassign man page on Scientific

Man page or keyword search:  
man Server   26626 pages
apropos Keyword Search (all sections)
Output format
Scientific logo
[printable version]

SG_REASSIGN(8)			   SG3_UTILS			SG_REASSIGN(8)

NAME
       sg_reassign - sends a SCSI REASSIGN BLOCKS command

SYNOPSIS
       sg_reassign   [--address=A,A...]	  [--dummy]   [--eight=0|1]  [--grown]
       [--help] [--longlist=0|1] [--primary] [--verbose] [--version] DEVICE

DESCRIPTION
       Send a SCSI REASSIGN BLOCKS command to DEVICE. Alternatively this util‐
       ity  can	 find  the  number of element in a "grown" or "primary" defect
       list with a SCSI READ DEFECT DATA (10) command. These SCSI commands are
       defined	in  SBC-2  for	direct	access devices (e.g. a disk). Reassign
       blocks is designed to change the physical location of a	logical	 block
       that  is	 known	or  suspected  to  be defective to another area on the
       media. Disks are typically formatted with blocks held  in  reserve  for
       this situation.

       If  neither  the	 --grown  nor --primary option is supplied then one or
       more addresses need to  be  given.  If  the  address  (or  all  of  the
       addresses)  fit	into  4	 bytes	and  '--eight=1' is not given then the
       parameter block passed to DEVICE is made up of  4  byte	logical	 block
       addresses.  If any of the addresses need more than 4 bytes to represent
       (i.e. >= 2**32) or '--eight=1' is given then the parameter block passed
       to DEVICE is made up of 8 byte logical block addresses.

OPTIONS
       Arguments to long options are mandatory for short options as well.

       -a, --address=A,A...
	      where A,A... is a string of comma separated numbers. Each number
	      is interpreted as decimal unless prefixed by '0x' or '0X' (or it
	      has  a trailing 'h' or 'H'). If multiple logical block addresses
	      are given they must be separated by a comma or a (single) space.
	      A	 string that contains any space separators needs to be quoted.
	      At least one address must be given.

       -a, --address=-
	      reads one or more logical block addresses from stdin. These  may
	      be  comma, space, tab or linefeed (newline) separated. If a line
	      contains "#" then the remaining  characters  on  that  line  are
	      ignored.	Otherwise  each	 non  separator sequence of characters
	      should resolve to a decimal number unless prefixed  by  '0x'  or
	      '0X'  (or	 has  a	 trailing  'h').  At least one address must be
	      given.

       -d, --dummy
	      prepare for but do not execute the SCSI REASSIGN BLOCKS command.
	      Since  the  REASSIGN BLOCKS command is essentially irreversible,
	      paranoid users may wish to check the invocation of this  utility
	      before reassigning defective blocks on a disk. Useful with '-vv'
	      for those who wish to view the parameter block that will	accom‐
	      pany the command.

       -e, --eight=0 | 1
	      when  value  is 1 then it sets the 'LONGLBA' flag in the command
	      indicating that the addresses in the associated parameter	 block
	      are  8  byte  quantities.	  When	value  is 0 then it clears the
	      'LONGLBA' flag in the command indicating that the	 addresses  in
	      the  associated  parameter block are 4 byte quantities.  If this
	      option is not given then 4 byte quantities  are  assumed	unless
	      one of the address is too large.

       -g, --grown
	      use the SCSI READ DEFECT DATA (10) command to determine the num‐
	      ber of elements in the "grown defect list". When this option  is
	      given  there  is no reassignment of blocks (i.e. this utility is
	      passive). When this option is given then the  --address=	option
	      is  not permitted. See the discussion below concerning the rela‐
	      tionship between reassigned blocks and the  grown	 defect	 list.
	      This list is sometimes referred to as the GLIST.

       -h, --help
	      output the usage message then exit.

       -l, --longlist=0 | 1
	      sets the REASSIGN BLOCKS cdb field of the same name to the given
	      value.  Only 1000 addresses are permitted so there should be  no
	      need  to	specify a value of 1. The short list variant restricts
	      the parameter block length to 2 ** 16 bytes (i.e. about 16000  4
	      byte  addresses  or  8000 8 byte addresses). Added for complete‐
	      ness.

       -p, --primary
	      use the SCSI READ DEFECT DATA (10) command to determine the num‐
	      ber  of  elements	 in  the "primary defect list" which is estab‐
	      lished during the manufacturing process.	When  this  option  is
	      given  there  is no reassignment of blocks (i.e. this utility is
	      passive). When this option is given then the  --address=	option
	      is  not  permitted.  This	 list  is sometimes referred to as the
	      PLIST.

       -v, --verbose
	      increase the level of verbosity, (i.e. debug output).

       -V, --version
	      print the version string and then exit.

NOTES
       Note that if the ARRE field (for reads)	and/or	the  AWRE  field  (for
       writes)	are  set  in  the  "Read  Write Error Recovery" mode page then
       recoverable read and/or write errors cause  automatic  reassignment  of
       the defective block. The PER bit in the same mode page controls whether
       a RECOVERED ERROR sense key  is	reported  on  not  (PER=1  implies  do
       report).	 Irrespective  of  the	ARRE,  AWRE or PER field settings, the
       error counter log pages reflect any errors  (recovered  or  otherwise).
       Whenever	 a  block  is  reassigned, a new entry is added in the "grown"
       defect list. Apart from doing selftests (see sg_senddiag	 or  smartmon‐
       tools)  regularly, monitoring the grown defect list of a disk is a rea‐
       sonable metric of its health. If the grown list starts growing  quickly
       that  is	 an  ominous sign. The best grown defect lists are empty ones.
       The number of elements in the grown defect list can be viewed with  the
       --grown	option.	 The  contents	of the grown defect list can be viewed
       with the 'sginfo -G' utility.

       If an unrecoverable error is detected at a logical block	 address  then
       REASSIGN	 BLOCKS	 is  needed  to	 reassign  the block. Also if the ARRE
       and/or AWRE fields are clear and a recoverable error is	detected  then
       the logical block in question may be reassigned with this utility (oth‐
       erwise the error counter log pages will continually be incremented  for
       each recovered access).

       The  number  of	blocks	held  in  reserve for the purposes of REASSIGN
       BLOCKS is vendor specific and may well be limited to  the  zone	within
       the media where the original (defective) block lay. When this number is
       exhausted subsequent invocations of this utility may result in a	 sense
       key of hardware error and an additional sense of 'No defect spare loca‐
       tion available'. The next step would be to reformat the disk (or get  a
       replacement).

       The  SBC-2  draft  standard  (revision  16)  notes  that	 when multiple
       addresses are given to the SCSI REASSIGN BLOCKS command	and  there  is
       some  failure at one of the later addresses then all addresses prior to
       that have already be reassigned. Care should be taken in such  a	 case.
       Re-executing the command with the same addresses will cause the earlier
       addresses to be reassigned again. At some stage the disk will  run  out
       of  reserved  locations.	  So  unless  a	 large number of addresses are
       involved it may be safer to reassign them one address at a time.

EXIT STATUS
       The exit status of sg_reassign is 0 when it  is	successful.  Otherwise
       see the sg3_utils(8) man page.

AUTHORS
       Written by Douglas Gilbert.

REPORTING BUGS
       Report bugs to <dgilbert at interlog dot com>.

COPYRIGHT
       Copyright © 2005-2009 Douglas Gilbert
       This  software is distributed under a FreeBSD license. There is NO war‐
       ranty; not even for MERCHANTABILITY or FITNESS FOR  A  PARTICULAR  PUR‐
       POSE.

SEE ALSO
       sg_format,sginfo,sg_senddiag(all	 in sg3_utils), sdparm(sdparm), smart‐
       montools(internet, sourceforge)

sg3_utils-1.27			  April 2009			SG_REASSIGN(8)
[top]

List of man pages available for Scientific

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net