Split level top two: What happens if Disk is full?


Recommended Posts

I have multiple movies and they are located in dirs with their starting letter. Example:

Movies/A/Alien/Alien.mkv

 

I like to have all "A" movies on the same Disk so I should choose the split level "Automatically split only the top directory level".

 

Lets say all movies with "A", "B" and "C" fit on Disk 1. What happens if I add more "A" movies and they do not fit on Disk 1 anymore? Does it move all existing "A" movies to a different Disk that has enough space left or does it ignore the split level rule in this situation and create an additional "A" dir on a different Disk?

 

 

Link to comment

Unraid will not move existing files except in accordance with the Use cache setting (between cache and array).

 

And Split Level has precedence over Allocation Method or Minimum Free.

 

Also, Unraid has no way of knowing how large a file will become when it chooses a disk to write it to.

 

So, it will choose the disk that Split Level says it should choose. 

 

Long story short, Split Level CAN make you run out of space on a disk. 

Link to comment
4 hours ago, mgutt said:

This means if I add a new A movie and the Disk becomes full I receive a full disk error. Ok.

 

What are my options in such a situation, am I able to move the B and C movies manually to an other Disk?

One option would be to manually create the A folder on another drive, and Unraid would then apply the allocation method in deciding which disk with an A folder to use so in this case would start using the second one as the first one is full.   I personally use a similar naming scheme but use a Split Level of 0 so I always need to manually create the letter level to control what disks each letter is allowed to use, but as a result I always know exactly which disks any particular letter can occur on.
 

You can also manually move the B, C folders to another drive.     There a wide variety of tools for doing this depending on what your comfort level is.    When moving files make sure you move disk to disk and NOT disk to User share as the latter can potentially lead to data loss.

Link to comment
6 hours ago, mgutt said:

What do you mean by that? Starting the CLI or something else?

If you have disk shares enabled (under Settings >> Global Share Settings) then you can see each drive across the network just like any other share.    You can then use whatever tool you like on the PC/Mac to move the files (e.g. Windows Explorer/Finder).   This tends to be slower than doing it locally on the Unraid server but many people are more comfortable doing it that way.

 

One important rule to follow however you decide to do it is to do the copy/move diskX to diskY, and not diskX to User Share.    Mixing disk shares and User shares in the same copy/move command can lead to data loss.

 

  • Upvote 1
Link to comment

Finally I created the folders manually by CLI.

 

Steps I did (maybe helpful for someone else)

 

1.) I set the share to "Manual: do not automatically split directories" (correct?)

 

2.) Then opened the terminal through Unraid Webclient:

13272186_2020-04-2116_53_34.png.14806952192982653373b6be941835c9.png

 

3.) Created the Share Folder "Movies" and the subdirectory "KL":

1220840814_2020-04-2117_00_11.png.5f2034c37a3a0711705f9116b9b5e301.png

 

4.) Opened the Unraid Main Tab and viewed the content of Disk3. Everything looked good:

2078626122_2020-04-2117_01_39.png.e67670b11362b7c20ed5b060d4492909.png

 

1345489993_2020-04-2117_02_49.png.f48b50fae83e430a32d79a42f631ccd2.png

 

5.) Installed the CA user scripts plugin. Added a new script with the following content (direct execution by terminal would be possible, too) to fetch the files from the source NAS through FTP (this script is helpful to backup websites as well):

wget --background --quiet --recursive --level 0 --no-host-directories --cut-dirs=2 --no-verbose --timestamping --backups=0 --user=<ftp_username> --password=<ftp_password> "ftp://10.1.2.3/video/Filme/GH/" --directory-prefix=/mnt/user/Movies

6.) Added this script multiple times for multiple copy processes on different disks and different folder names (in my case the letters). Then I clicked on "Run in Background" and now I need to wait...

181490627_2020-04-2117_14_28.png.3a50eafbdec022116157552bacd98dab.png

 

In the main tab the "Writes" column rises on the corresponding disks, so everything looks good:

664434655_2020-04-2117_10_30.png.893226a065f23933d3cbd9a44843c3a3.png

 

7.) Finally I opened the terminal again and typed in "top" to check if there are still active wget process:

1800044723_2020-04-2117_15_10.png.0df6e27674dc2c0acb736e1093563653.png

 

So it works now, but I hoped it would copy faster. The maximum is 970 Mbps altough 10G network is used and a parity disk is not set up:

1333535222_2020-04-2117_30_12.png.18d0cda0940ee7b9c3545ebe7936b73b.png

10G source:

1456381396_2020-04-2117_30_44.png.db87e7ef58cde90a8af7c34cc9d5deaa.png

 

 The load looks good as well:

984344718_2020-04-2117_09_10.png.a80191cb47cd0d325a42ee979d860b21.png

Source:

1302972632_2020-04-2117_34_22.png.d6265ba9335cd466e2e68854391aa1d7.png

 

EDIT: Started a fourth wget process (now copying to four disks at the same time) and now I reach 1.2 Gbps:

7331250_2020-04-2117_43_19.thumb.png.6941caead39eb04888555f8de500a666.png

 

This means around 30 MB/s per disk. Much lower than the disks maximum write speed?!

Edited by mgutt
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.