Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
etersoft-admin-essentials
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
etersoft-admin-essentials
Commits
f303136c
Commit
f303136c
authored
Nov 04, 2017
by
Vitaly Lipatov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix_disk.sh: improve for the latest kernel
parent
87e27540
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
16 deletions
+11
-16
fix_disk.sh
hdd/fix_disk.sh
+11
-16
No files found.
hdd/fix_disk.sh
View file @
f303136c
...
@@ -58,33 +58,28 @@ fix_block()
...
@@ -58,33 +58,28 @@ fix_block()
# FIXME: which device??
# FIXME: which device??
#BLOCKLIST=
#BLOCKLIST=
#Buffer I/O error on device sda, logical block 32607659
#Buffer I/O error on device sda, logical block 32607659
#dmesg | grep "logical block " | sed -e "s|.*Buffer I/O error on device \(sd[a-z]
\), logical block \([0-9]*\)|\1 \2|g" | sort -u | \
dmesg |
grep
"logical block "
|
sed
-e
"s|.*Buffer I/O error on dev.*
\(
sd[a-z][0-9]*
\)
, logical block
\(
[0-9]*
\)
|
\1
\2
|g"
|
sort
-u
|
\
echo
|
#
echo |
while
read
devname block
;
do
while
read
devname block
;
do
#for i in $BLOCKLIST ; do
#for i in $BLOCKLIST ; do
echo
echo
#FIXME: logical block - 8 sectors (on 64 bit) or 4 sectors (on 32 bit?)
#FIXME: logical block - 8 sectors (on 64 bit) or 4 sectors (on 32 bit?)
echo
"L
ist
$block
bad
block on /dev/
$devname
..."
echo
"L
ogical bad block
$
block
on /dev/
$devname
..."
#echo "Fixing $block block on /dev/$devname ..."
#echo "Fixing $block block on /dev/$devname ..."
#fix_block /dev/$devname $block
#fix_block /dev/$devname $block
done
done
[
-n
"
$LIST
"
]
&&
exit
# [23743.306922] blk_update_request: critical medium error, dev sdc, sector 510634067
# [23743.306922] blk_update_request: critical medium error, dev sdc, sector 510634067
dmesg |
grep
"blk_update_request: critical medium error"
|
sed
-e
"s|.*blk_update_request: critical medium error, dev
\(
sd[a-z]
\)
, sector
\(
[0-9]*
\)
|
\1
\2
|g"
|
sort
-u
|
\
# [ 6.934350] blk_update_request: I/O error, dev sda, sector 16780432
dmesg |
grep
-E
"(blk_update_request|end_request): (critical medium error|I/O error)"
|
sed
-e
"s|.*, dev
\(
sd[a-z]
\)
, sector
\(
[0-9]*
\)
|
\1
\2
|g"
|
sort
-u
|
\
while
read
devname block
;
do
while
read
devname block
;
do
#for i in $BLOCKLIST ; do
#for i in $BLOCKLIST ; do
echo
echo
echo
"Fixing
$block
block on /dev/
$devname
..."
if
[
-n
"
$LIST
"
]
;
then
fix_block /dev/
$devname
$block
echo
"Error with sector
$block
on /dev/
$devname
..."
done
else
echo
"Fixing
$block
block on /dev/
$devname
..."
fix_block /dev/
$devname
$block
dmesg |
grep
"end_request: I/O error"
|
sed
-e
"s|.*end_request: I/O error, dev
\(
sd[a-z]
\)
, sector
\(
[0-9]*
\)
|
\1
\2
|g"
|
sort
-u
|
\
fi
while
read
devname block
;
do
#for i in $BLOCKLIST ; do
echo
echo
"Fixing
$block
block on /dev/
$devname
..."
fix_block /dev/
$devname
$block
done
done
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment