Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
TetraSource

Bundle - allows to use multiple filesystems as a single one

Recommended Posts

2018-09-25_21_29_06.thumb.png.27c41df96c9871c9ffe1e0ac6cfaf080.png

I just finished the first version of bundle - a rc application which virtually merges multiple filesystems into a bigger one. You can use it whenever a RAID full of tier 3 HDD isn't enough for your needs. On the picture above, for example, you can see 10 RAIDs with 30 tier 3 HDDs which yield a virtual HDD that can store over 200MB of data. You can also use filesystems of different size and create files bigger than any of the used filesystems since bundle is capable of storing a file on multiple HDDs.

If you encounter any bug, please report it on my github repository. Also check out the wiki page.

How to use it

First of all you can download it from pastebin (id: TmeSNidd) or my github repository and install the file in the directory for rc script (/etc/rc.d/bundle.lua). Before using it you should configure the constants at the top of the script in accordance with their descriptions. Otherwise Bundle might work incorrectly. Then you need to add some filesystems by executing

rc bundle add [address]

in the shell. Please replace [address] by the address of the desired filesystem. Doing so wipes the added filesystem. However, Bundle never incorporates filesystems automatically. Next you should allow bundle to run in background by executing

rc bundle enable

Just reboot the computer and it should be listed by

df

2018-09-25_21_29_44.thumb.png.9bb42bcf97449b009b26deea5b8f5e2d.png

Note that the label of the first added filesystem and the filesystem provided by Bundle are always equal since that's the way how bundle stores it. You can also view the added filesystems by executing

rc bundle list

You can also remove added filesystems by

rc bundle remove [forcefully]

Currently, this just removes the last added filesystem, however. If the removal causes the lose of data this fails except you set [forcefully].

Usage notes

  • Don't install the OS on a Bundle filesystem since Bundle requires some functions of OpenOS.
  • Bundle uses a virtual copy of the file structure. On the one hand this makes "hardware" operations faster, on the other hand it might lead to errors when running out of memory.
  • Bundle works with Lua 5.2 as well as Lua 5.3.

Known bugs

  • Seek operations that set the current position to a value that is bigger than the size of the file cause the file the become bigger than its actual physical size. This is also the case on filesystem components of Open Computers but with bundle it might cause internal errors.

That is it for now, have fun using Bundle.

Link to post
Share on other sites

I'm sorry to hear that. However, I need some more pieces of infomation in order to help you. Could you send me your version of Lua and OpenOS on your Minecraft Computer and a step-by-step description how you set the system up, please? An error message or a screenshot would be helpful, too.

Link to post
Share on other sites

If I attempt to add a filesystem, it returns this error "/etc/rc.d/bundle.lua:93: attempt to index a nil value (global '32bit')"

I can show you the full error if you want.

EDIT: I looked at your GitHub Issues page, and found an error identical to mine. Identical Error

Edited by Parindraa
Found an identical error to mine.
Link to post
Share on other sites

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.   Paste as plain text instead

  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.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.