badblocks command in Linux with examples - GeeksforGeeks

26 Feb, 2019
badblock command in Linux is used to search for bad blocks (block of memory which has been corrupted and can no longer be used reliably) in a device. It is by default set to run in non-destructive read-only mode.
Syntax:
badblocks [-b block_size] [-i input_file] [-o output_file] [-svwnf]
          [-c blocks_at_once] [-d delay_factor_between_reads] [-e max_bad_blocks]
          [-p num_passes] [-t test_pattern [-t test_pattern [...]]]
          device [last_block [first_block]]

Options:
badblocks -s : It is used to display current progress of the test by showing the percentage of blocks scanned.Example:sudo badblocks -s /dev/sdb1
Example:
sudo badblocks -s /dev/sdb1
badblocks -b: It allows to specify the block size(usually a multiple of 512) in bytes (default is 1024 bytes).Example:sudo badblocks -sb 2048 /dev/sdb1
Example:
sudo badblocks -sb 2048 /dev/sdb1
badblocks -c : It is used to specify the number of blocks to be tested at a time (default is 64 blocks).Example :sudo badblocks -sc 5000 /dev/sdb1
Example :
sudo badblocks -sc 5000 /dev/sdb1
badblocks -f: (not recommended) badblocks does not run its test on a device if it is mounted.The -f option will force it to run test even if the device is mounted which may damage the file system.Example :sudo badblocks -sf /dev/sdb1
Example :
sudo badblocks -sf /dev/sdb1
badblocks -o: It is used to write the list of badblocks to a file rather than on standard output.Example:sudo badblocks -o out.txt /dev/sdb1
Example:
sudo badblocks -o out.txt /dev/sdb1
badblocks -i : It is used to provide an input file which contains a list of known bad blocks in device. This would skip the known bad blocks at the time of test.Example:sudo badblocks -i ./out.txt /dev/sdb1
Example:
sudo badblocks -i ./out.txt /dev/sdb1
badblocks -n : It is used to perform a non-destructive read-write test on device. It would not erase data on device.Example:sudo badblocks -sn /dev/sdb1
Example:
sudo badblocks -sn /dev/sdb1
badblocks -w : It perform the read write test on device by writing some patterns on every block and comparing them. It would erase data on device and do test processing at a faster rate as compared to -n option.Example:sudo badblocks -sw /dev/sdb1
Example:
sudo badblocks -sw /dev/sdb1
Specify blocks to test:
last block: It can be specified by passing the last block as an option after device name. It would test blocks from the first block to the specified last block.Example:sudo badblocks -s /dev/sdb1 1000first block: It can be specified by passing the starting block number to test as an option after last block.Example:sudo badblocks -s /dev/sdb1 5000 100My Personal Notes
arrow_drop_upSave
last block: It can be specified by passing the last block as an option after device name. It would test blocks from the first block to the specified last block.Example:sudo badblocks -s /dev/sdb1 1000
Example:
sudo badblocks -s /dev/sdb1 1000
first block: It can be specified by passing the starting block number to test as an option after last block.Example:sudo badblocks -s /dev/sdb1 5000 100My Personal Notes
arrow_drop_upSave
Example:
sudo badblocks -s /dev/sdb1 5000 100
linux-command
Picked
Linux-Unix
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
nohup Command in Linux with Examples
scp command in Linux with Examples
Thread functions in C/C++
mv command in Linux with examples
chown command in Linux with Examples
SED command in Linux | Set 2
Docker - COPY Instruction
Array Basics in Shell Scripting | Set 1
Basic Operators in Shell Scripting
nslookup command in Linux with Examples