allocating disk space the fast way

hello list.
i want to allocate some space for a harddisk image file.
for now, i do it like
$ dd if=/dev/zero of=blub.img bs=1M count 00
which takes some time. is there a faster way to create a huge file? it
don't have to be zeroed.
i've seen that e.g. azureus allocates filesize in no time. how does this
work?

thanks in advance,
josef gosch

-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo [at] vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
Mensch [ Sa, 05 August 2006 19:43 ] [ ID #1418608 ]

Re: allocating disk space the fast way

it's me again.
i'm sorry, but i found a way myself.

written in c:

/*** START OF filesize_alloc.c ***/

#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <linux/unistd.h>
#include <errno.h>

int main(int argc, char **argv) {
FILE *newfile;
char *filename = "blub.img";
int size_in_bytes = 2000*(1024*1024); /* 2000 MB */

/* create a new file char *filename or overwrite it */
newfile = fopen(filename, "w");
/* now jump to byte int size_in_bytes from start... */
fseek(newfile, size_in_bytes, SEEK_SET);
/* ... and write a final zero at this position */
fwrite("\0", 1, 1, newfile);
fclose(newfile);
}

/*** END OF filesize_alloc.c ***/

Am Samstag, den 05.08.2006, 17:43 +0000 schrieb Mensch:
> hello list.
> i want to allocate some space for a harddisk image file.
> for now, i do it like
> $ dd if=/dev/zero of=blub.img bs=1M count 00
> which takes some time. is there a faster way to create a huge file? it
> don't have to be zeroed.
> i've seen that e.g. azureus allocates filesize in no time. how does this
> work?
>
> thanks in advance,
> josef gosch

-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo [at] vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
Mensch [ Sa, 05 August 2006 20:06 ] [ ID #1418609 ]

Re: allocating disk space the fast way

On Saturday 05 August 2006 12:43, Mensch wrote:
> hello list.
> i want to allocate some space for a harddisk image file.
> for now, i do it like
> $ dd if=/dev/zero of=blub.img bs=1M count 00
> which takes some time. is there a faster way to create a huge file? it
> don't have to be zeroed.
> i've seen that e.g. azureus allocates filesize in no time. how does this
> work?
>
> thanks in advance,
> josef gosch
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
> the body of a message to majordomo [at] vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.linux-learn.org/faqs

I know you already found an answer....but....

Make it sparse.

dd if=/dev/zero of=./my.image bs=1M seek 48 count=1

--
Thanks,

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo [at] vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
Eric Bambach [ Sa, 14 Oktober 2006 19:35 ] [ ID #1499876 ]
Linux » gmane.linux.newbie » allocating disk space the fast way

Vorheriges Thema: Powernow-k8 (ACPI?) trouble
Nächstes Thema: Joe Failing