Tiny Core Linux

Tiny Core Base => TCB Bugs => Topic started by: Guy on April 12, 2011, 12:26:08 PM

Title: Limited loops
Post by: Guy on April 12, 2011, 12:26:08 PM
When I update Tinycore, I download the iso file. This is so I can burn it to a cd if I want.

I then use the terminal and type:
sudo su
cd directory
mount -o loop tinycore_3.6.iso tmp

I then copy the files from tmp, and use them to update Tinycore.


Recently I have come across a situation where there are no loops available.

I have most apps in OnDemand, so I don't use many loops.

This happened when I had a little over 40 extensions mounted in /tmp/tcloop.

I resolved it by removing a few extensions from OnBoot, and rebooting.

I think Tinycore can mount up to 256 extensions in /tmp/tcloop.

It seems that when it gets to somewhere around 40, loops can no longer be mounted from the terminal.

I booted this with a few of the recent versions, and the result was the same.


It would be interesting to see if this can be reproduced.

There is a possibility that something else caused it which I don't understand.
Title: Re: Limited loops
Post by: curaga on April 12, 2011, 12:54:35 PM
Since 3.x there should be no artificial limit, only your RAM. I have run with several hundred (~400), and I recall Jason also testing with similar numbers.

What was the exact error message (both in the shell, and in dmesg)? How was your RAM at that point?

edit: Oh, just to make sure, did you have util-linux loaded? Util-linux mount doesn't support dynamic loops, so using it will appear that you have run out; but in reality, busybox mount works just fine, and so does util-linux mount if you mknod the new loop first.
Title: Re: Limited loops
Post by: Guy on April 12, 2011, 07:10:04 PM
Yes, this happened after installing util-linux, and was resolved by removing it from OnBoot. I was experimenting with UNetbootin, and it is needed to run it.

I am not familiar with mknod.

How would you modify the following to include it?

sudo su
cd directory
mount -o loop tinycore_3.6.iso tmp
Title: Re: Limited loops
Post by: maro on April 12, 2011, 07:28:19 PM
What curaga suggested is to either run a command sequence like sudo mknod /dev/loopX b 7 X ; mount -o loop tinycore_3.6.iso tmp (if mount is the one from the 'util-linux.tcz' extension and for a carefully selected value for X) or use sudo busybox mount -o loop tinycore_3.6.iso tmp instead.

Note: I have not actually tried out the first option as I would always pick the "lazy" second option myself.
Title: Re: Limited loops
Post by: tinypoodle on April 12, 2011, 10:17:44 PM
The really lazy option would omit '-o loop' entirely, as it is redundant with bb mount   ;)

Instead of specifying 'busybox mount' I think '/bin/mount' could be used as well.
Title: Re: Limited loops
Post by: Guy on April 19, 2011, 10:08:13 AM
Thanks for the help

The following work

sudo su
cd directory
/bin/mount tinycore_3.6.iso tmp

sudo su
cd directory
busybox mount tinycore_3.6.iso tmp