Jump to content

Re: preclear_disk.sh - a new utility to burn-in and pre-clear disks for quick add


Recommended Posts

Thanks, I never knew about Screen. Just to confirm my reading of the Screen documentation: if I install Screen and run preclear via Screen, I CAN quit the Screen telnet session and the preclear will still be running. I can also then shut down the PC and re-attach to Screen (and the still running preclear session) after I restart the PC. Is my understanding correct?

 

You can't "quit" screen, but can "detach" from the screen session by pressing [Crtl]A followed by the "d" key.  You can then resume screen with the "screen -r" command.

Link to comment

Thanks for the clarification. My concern is around what happens in between detach and resume. Can I shut down the PC in between without affecting the preclear?

 

Yes - you can resume the screen session from any telnet session (from another machine, from the unRAID servers, etc.)

 

Link to comment

From inside screen, press [ctrl]a followed by "c". This will create another telnet session within screen, where you can run another preclear. Press [ctrl]a followed by space key to cycle through all sessions within the screen process.

Link to comment

2 quick questions:)

 

Are the only Advance format drives WD? I have two 2TB Hitachi drives and I'm assuming they are NOT Advance format drives, is this correct?  

true, BUT any drive can be addressed with a partition that starts at a 4096 byte boundary.  Forget the words "advanced format" as it is mostly marketing as far as the real usefullness to us.   Internally on the disk it means that EVENTUALLY they can provide more data, or better data reliability.  So far, as I said, it is mostly marketing for the 2TB disk size. The 2TB Advanced format drives are exactly the same size, and basically the same reliability as non-advanced-format.

 

Older drives can only be accessed on 512 byte boundaries... but guess what, every 4096 byte boundary as ALSO a 512 byte boundary.

 

unRAID (and all window's OS) historically started their partitions on sector 63. This was 63 * 512 bytes on the disk, as disk sectors are (historically) 512 bytes on all disks manufactured to date, even the WD Advanced-Sector disks.

 

Now, unRAID can start a disk partition on sector 64, and 64 * 512 is also a multiple of 4096.   Any disk will work at its optimum speed.

 

Lastly, unless you are in a laboratory, it really does not make much difference if you are using your unRAID server for music, of movies, or pictures.    If you are watching a movie, for the most part it is stored sequentially on the disk, and if the disk platter has to make one additional rotation to get the very first bit of a movie, then it will take 1/5400th of a minute more to return the result since the disk platter must make one more revolution.  Somehow, unless you are in a lab running tests, you would not know the difference.

Also how can I preclear 2 disks at once?

To preclear 2 disks at one, use two telnet sessions, two system consoles (there are 6), or install and use "screen"

 

Joe L.

Link to comment

I do not believe any of the Hitachi drives are AF, but it should not matter. Treat all drives the same. Use the -A option to preclear them.

 

Thanks for the replies Joe and bjp999, always wonderful information!

 

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

Link to comment

I do not believe any of the Hitachi drives are AF, but it should not matter. Treat all drives the same. Use the -A option to preclear them.

 

Thanks for the replies Joe and bjp999, always wonderful information!

 

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

good, because if you had, they would not have been recognized as pre-cleared in any release of unRAID prior to 4.7.  No harm would occur, but unRAID would write zeros to them for you again if you added them to an array with established parity.

 

Joe L.

Link to comment

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

 

Saw the reference to 4.6 but didn't register.

 

I'd recommend you move to 4.7, and set the option for aligned partitions.  Takes all the guess work out of it.  Preclear is even smart enough to know to preclear the disks based on that setting.

Link to comment

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

 

Saw the reference to 4.6 but didn't register.

 

I'd recommend you move to 4.7, and set the option for aligned partitions.  Takes all the guess work out of it.  Preclear is even smart enough to know to preclear the disks based on that setting.

 

As far as two drives at the same time, is it possible to do it directly from console? I don't have a network connection to the machine I am using to preclear.

Link to comment

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

 

Saw the reference to 4.6 but didn't register.

 

I'd recommend you move to 4.7, and set the option for aligned partitions.  Takes all the guess work out of it.  Preclear is even smart enough to know to preclear the disks based on that setting.

 

As far as two drives at the same time, is it possible to do it directly from console? I don't have a network connection to the machine I am using to preclear.

Yes, and I already described that  There are 6 virtual consoles.  (Alt-F1 through Alt-F6)  In Linux, the user switches between them with the key combination Alt plus a function key – for example Alt+F1 to access the virtual console number 1. Alt+Left arrow changes to the previous virtual console and Alt+Right arrow to the next virtual console.

 

When you first boot unRAID, you are in virtual console 1.  Use Alt-F2 to get to a second virtual console, Alt-arrows, or Alt-F1 to get back to the first.  You can get 6 disks pre-clearing at the same time from the console.

 

Or, as I also said, install "screen" and invoke it on a single virtual console, with virtual "screens" and have as many as you like.

 

Joe L.

Link to comment

To the above quote, since I'm running 4.6 and have not used the -A command on any of my drives, will this be an issue?

 

If on version 4.7 of unRAID and you are clearing an ADVANCED FORMAT drive that works best with a 4k alignment of its data, use the "-A" option as in

preclear_disk.sh -A /dev/sda

This will result in a starting sector of 64 for the resulting partition that will be used for unRAID's file system.  This is NOT backwards compatible with any version of unRAID prior to 4.7.

 

Saw the reference to 4.6 but didn't register.

 

I'd recommend you move to 4.7, and set the option for aligned partitions.  Takes all the guess work out of it.  Preclear is even smart enough to know to preclear the disks based on that setting.

 

As far as two drives at the same time, is it possible to do it directly from console? I don't have a network connection to the machine I am using to preclear.

Yes, and I already described that   There are 6 virtual consoles.  (Alt-F1 through Alt-F6)  In Linux, the user switches between them with the key combination Alt plus a function key – for example Alt+F1 to access the virtual console number 1. Alt+Left arrow changes to the previous virtual console and Alt+Right arrow to the next virtual console.

 

When you first boot unRAID, you are in virtual console 1.  Use Alt-F2 to get to a second virtual console, Alt-arrows, or Alt-F1 to get back to the first.   You can get 6 disks pre-clearing at the same time from the console.

 

Or, as I also said, install "screen" and invoke it on a single virtual console, with virtual "screens" and have as many as you like.

 

Joe L.

 

Totally missed that sorry! Pre-clearing now!

 

Thanks again for all of the help.

Link to comment
  • 2 weeks later...

So pre-cleard drive has been added, but in the normal unraid it shows there is an unformated disk present and asks if I want to format it. In MyMain (Unmenu) it shows that it's good to go.

 

Shouldn't it already be formatted?

No, clearing it writes zeros to the entire drive and partially partitions it.  It does not format it.
And am I ok to format it?

Yes, that is what you need to do. (as long as it is the only disk showing as un-formatted)

myMain is confusing you.  If the disk is not formatted, it cannot be mounted or used.  Ignore it for now. 

 

Press the "Format" button.

Link to comment

Hi

 

I precleared 6 drives (sda, sdc-sdg).  Then I installed latest unmenu/screen to do the rest (another 16 drives).

 

In MyMenu, sda didn't show as a precleared drive (it's icon = "+") and it's number of writes showed quite a different value to the other 5 precleared drives.

 

I then used screen to kick off preclearing sda again as well as the remaining 16 drives (sdh-sdw).  I refreshed the MyMenu page and it showed every drive EXCEPT SDA as a precleared drive, and the usage column showed the progress of the preclear.

 

I then noticed the last line of the syslog saying ...

Tower unmenu[18653]: Precleared disk sda not found in drivedb[] (Drive related)

 

1) how do I fix this problem?  is there a way to manually add sda to the drivedb?

2) since sda has started the preclear again (pre-read, step 1), is it safe to cancel the preclear and will it retain the precleared signature ready for when I add it to the unraid array?

 

Thx!

 

Cheers

 

Toby

Link to comment

Hi

 

I precleared 6 drives (sda, sdc-sdg).  Then I installed latest unmenu/screen to do the rest (another 16 drives).

 

In MyMenu, sda didn't show as a precleared drive (it's icon = "+") and it's number of writes showed quite a different value to the other 5 precleared drives.

 

I then used screen to kick off preclearing sda again as well as the remaining 16 drives (sdh-sdw).  I refreshed the MyMenu page and it showed every drive EXCEPT SDA as a precleared drive, and the usage column showed the progress of the preclear.

 

I then noticed the last line of the syslog saying ...

Tower unmenu[18653]: Precleared disk sda not found in drivedb[] (Drive related)

 

1) how do I fix this problem?  is there a way to manually add sda to the drivedb?

2) since sda has started the preclear again (pre-read, step 1), is it safe to cancel the preclear and will it retain the precleared signature ready for when I add it to the unraid array?

 

Thx!

 

Cheers

 

Toby

you are reporting  a bug with myMain, not with the preclear pocess.

 

Connect back with your screen sessions and look at the status there, cycling through each session in turn to learn what is happening.  Report the drivedb[] issue to bjp999.  It sounds as if his counter for referencing the drivedb array created and used by myMain is off by 1.

 

You can test the pre-clear status of any drive by typing:

preclear_disk.sh -t /dev/sdX

(where sdX = the three letter device designation assigned by linux)

 

Yes, you can interrupt the process in the pre-read phase and it should be set to pre-cleared if previously pre-cleared and not subsequently written to.

 

Oh yes, make sure you use the most recent preclear_disk.sh program.  (especially if you have a 3TB drive, as older programs will not write a valid pre-signature to those disks.  A 3TB drive cannot be properly set to pre-clear status with any version of the pre-clear script  < 1.12)

 

Joe L.

Link to comment

@Joe L.

I was running 1.11 :-(  Have downloaded 1.12beta now and will see how I go.

 

I ran pre... -t /dev/sdc (another drive already precleared by 1.11) and it didn't find a valid signature (see attached image) - I'll obviously have to redo every drive, no problem.  As the 6 drives all reported absolutely no problems (1 pass), I might use the -n switch to skip the pre/post reads on those drives.

 

I'll contact BJP999 re: the drivedb issue, thanks.  Many things are in flux at the moment with the new versions of unraid, support for 3TB drives etc.

---

On another note ... I know the suggested method for running multiple preclears simultaneously is via screen, but I was just wondering if it wouldn't be easier to have that capability included in UnMenu?  Or would it be too dangerous if the interface was too easy?  Hmmm.

1.jpg.fdf7b8ef17fc1202f49d9f44e90a907b.jpg

Link to comment

This is the output I got recently on my suspect drive while preclearing:

 

= Post-Read in progress: 3% complete.

(  of  2,000,398,934,016  bytes read )

Elapsed Time:  29:55:11

./preclear_disk.sh: line 1080: 0+()%(243201) : syntax error: operand expected (error token is ")%(243201) ")

========================================================================1.11

==  ST32000542AS    5XW1CTY2

== Disk /dev/sdi has NOT been precleared successfully

== skip=3800 count=200 bs=8225280 returned instead of 00000 skip=6000 count=200 bs=8225280 returned instead of 00000

============================================================================

 

 

Any ideas what is broken here?

 

I am running this:

 

preclear_disk.sh -A  -c 3 /dev/sdi

 

 

Thanks!

 

Neil

 

Link to comment

This is the output I got recently on my suspect drive while preclearing:

 

= Post-Read in progress: 3% complete.

(  of  2,000,398,934,016  bytes read )

Elapsed Time:  29:55:11

./preclear_disk.sh: line 1080: 0+()%(243201) : syntax error: operand expected (error token is ")%(243201) ")

========================================================================1.11

==  ST32000542AS    5XW1CTY2

== Disk /dev/sdi has NOT been precleared successfully

== skip=3800 count=200 bs=8225280 returned instead of 00000 skip=6000 count=200 bs=8225280 returned instead of 00000

============================================================================

 

 

Any ideas what is broken here?

 

I am running this:

 

preclear_disk.sh -A  -c 3 /dev/sdi

 

 

Thanks!

 

Neil

 

your disk stopped responding?  It apparently did not return anything when read in the post-read.

 

does it return anything for

fdisk -l /dev/sdi

 

or more specifically for:

dd if=/dev/sdi  count=200 bs=8225280 skip=3800 | sum

and

dd if=/dev/sdi  count=200 bs=8225280 skip=6000 | sum

 

The expected "sum" is zero.

Link to comment
  • 1 month later...

joe have a disc was preclearing when a storm hit - comp running telnet restarted - unraid server not affected still running script - am monitoring via a laptop - my main showing that it is in the last post read of 3 cycles. can I reconnect the telnet session - not showing any issues to this point . is the last set of preclear data kept somewhere - as the sever seems to have finally recogised that telnet has died.

Link to comment

joe have a disc was preclearing when a storm hit - comp running telnet restarted - unraid server not affected still running script - am monitoring via a laptop - my main showing that it is in the last post read of 3 cycles. can I reconnect the telnet session - not showing any issues to this point . is the last set of preclear data kept somewhere - as the sever seems to have finally recogised that telnet has died.

if running under screen, you cwn reattach. It not,it is in /tmp if you have not rebooted.
Link to comment

Joe,

 

I can't remember...  in your script between cycles..  Do you run another SMART test?

 

I'm running two cycles on my new 3TB drive and I'd be interested to see if there were SMART differences after the first cycle.

The first cycle took 45hours!!

 

I'd hate to wait another 45 hours only to find there were errors on the first run! :D

 

========================================================================1.12
==
== Disk /dev/sdd has successfully finished a preclear cycle
==
== Finished Cycle 1 of 2 cycles
==
== Using read block size =  8,225,280  Bytes
== Last Cycle's Pre Read Time  : 9:39:14 (86 MB/s)
== Last Cycle's Zeroing time   : 8:59:39 (92 MB/s)
== Last Cycle's Post Read Time : 26:30:13 (31 MB/s)
== Last Cycle's Total Time     : 45:10:16
==
== Total Elapsed Time 45:10:16
==
== Disk Start Temperature: 30C
==
== Current Disk Temperature: 37C,
==
== Starting next cycle
==
========================================================================1.12

 

I suppose I can do manual diff if it's in the /tmp area...

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...