2004-10-27 18:29:00

by Lei Yang

[permalink] [raw]
Subject: loopback on block device

Hello,

Here is a question for loopback device. As far as I understand, the
loopback device is used to mount files as if they were block devices.

Then Why I could do "losetup -e XOR /dev/loop0 /dev/ram0" ? Notice that
ram0 is not mounted anywhere and does not have a filesystem on it. I've
tried that command and there seems to be no error. I got confused and
looked into loop.c, it seems to me that a loopback device should be
associated with a "backing file", why would it work on a block device
anyway?

I'd appreciate your comments greatly!

TIA,
Lei


2004-10-27 19:32:13

by Richard B. Johnson

[permalink] [raw]
Subject: Re: loopback on block device

On Wed, 27 Oct 2004, Lei Yang wrote:

> Hello,
>
> Here is a question for loopback device. As far as I understand, the loopback
> device is used to mount files as if they were block devices.
>
> Then Why I could do "losetup -e XOR /dev/loop0 /dev/ram0" ? Notice that ram0
> is not mounted anywhere and does not have a filesystem on it. I've tried that
> command and there seems to be no error. I got confused and looked into
> loop.c, it seems to me that a loopback device should be associated with a
> "backing file", why would it work on a block device anyway?
>
> I'd appreciate your comments greatly!
>
> TIA,
> Lei
>

`man losetup`
You just set up the loop device to enable encryption on
/dev/ram0. /dev/ram0 is a "file". It's a special-file,
but a file nevertheless. It can contain a file-system,
therefore act as a RAM disk, but it doesn't have to.

In principle, you could make an encrypted file-system
in which you couldn't even know what kind of file-
system it was, without an encryption key.


Cheers,
Dick Johnson
Penguin : Linux version 2.6.9 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached and reviewed by John Ashcroft.
98.36% of all statistics are fiction.

2004-10-27 19:50:03

by Lei Yang

[permalink] [raw]
Subject: Re: loopback on block device

Why /dev/ram0 is a file? Can you get into more details? For example, if
I want to do some system level programming and write to a /dev/ram0, how
do I do it?

Thanks very much for your reply!

Lei

linux-os wrote:

> On Wed, 27 Oct 2004, Lei Yang wrote:
>
>> Hello,
>>
>> Here is a question for loopback device. As far as I understand, the
>> loopback device is used to mount files as if they were block devices.
>>
>> Then Why I could do "losetup -e XOR /dev/loop0 /dev/ram0" ? Notice
>> that ram0 is not mounted anywhere and does not have a filesystem on
>> it. I've tried that command and there seems to be no error. I got
>> confused and looked into loop.c, it seems to me that a loopback
>> device should be associated with a "backing file", why would it work
>> on a block device anyway?
>>
>> I'd appreciate your comments greatly!
>>
>> TIA,
>> Lei
>>
>
> `man losetup`
> You just set up the loop device to enable encryption on
> /dev/ram0. /dev/ram0 is a "file". It's a special-file,
> but a file nevertheless. It can contain a file-system,
> therefore act as a RAM disk, but it doesn't have to.
>
> In principle, you could make an encrypted file-system
> in which you couldn't even know what kind of file-
> system it was, without an encryption key.
>
>
> Cheers,
> Dick Johnson
> Penguin : Linux version 2.6.9 on an i686 machine (5537.79 BogoMips).
> Notice : All mail here is now cached and reviewed by John Ashcroft.
> 98.36% of all statistics are fiction.
>
>


2004-10-27 18:38:01

by Lei Yang

[permalink] [raw]
Subject: Re: loopback on block device

Please cc me if you have answers to this, I am not on the list. Thanks a
lot!

Lei Yang wrote:

> Hello,
>
> Here is a question for loopback device. As far as I understand, the
> loopback device is used to mount files as if they were block devices.
>
> Then Why I could do "losetup -e XOR /dev/loop0 /dev/ram0" ? Notice
> that ram0 is not mounted anywhere and does not have a filesystem on
> it. I've tried that command and there seems to be no error. I got
> confused and looked into loop.c, it seems to me that a loopback device
> should be associated with a "backing file", why would it work on a
> block device anyway?
>
> I'd appreciate your comments greatly!
>
> TIA,
> Lei
>


2004-10-28 00:34:39

by Al Viro

[permalink] [raw]
Subject: Re: loopback on block device

On Wed, Oct 27, 2004 at 01:29:54PM -0500, Lei Yang wrote:
> >Here is a question for loopback device. As far as I understand, the
> >loopback device is used to mount files as if they were block devices.
> >
> >Then Why I could do "losetup -e XOR /dev/loop0 /dev/ram0" ? Notice
> >that ram0 is not mounted anywhere and does not have a filesystem on
> >it. I've tried that command and there seems to be no error. I got
> >confused and looked into loop.c, it seems to me that a loopback device
> >should be associated with a "backing file", why would it work on a
> >block device anyway?

Because block device is a file.

2004-10-28 09:43:20

by Helge Hafting

[permalink] [raw]
Subject: Re: loopback on block device

On Wed, Oct 27, 2004 at 02:42:48PM -0500, Lei Yang wrote:
> Why /dev/ram0 is a file? Can you get into more details? For example, if
> I want to do some system level programming and write to a /dev/ram0, how
> do I do it?
>

I don't think you need an example. You can open it in exactly
the same way as you open regular files like /etc/resolv.conf.

ie.
FILE *f = fopen("/dev/ram0", "rw");
Then use fseek, fwrite and fread as usual.

Helge Hafting