On 2001-04-06 18:21:21, Johan Vromans wrote:
> In the recent discussion on directory loops the background of what
> caused the problem got lost a litlle. So I'll try again.
> 
> Basically, I have a list of files (and directories) that I want to put
> on a CD. So I want to feed this list of files to mkisofs.
> 
> However, mkisofs does not take files (as arguments, and from
> -path-list), but pathspecs. The difference? Consider the following
> situation:

I am using mkisofs and cdrecord under Cygwin on NT to back up my stuff and I
create a "graft list" (you have to supply the "graft" option) using a
combination of DOS "dir" (because I like to use the "archive" bit, and I
haven't figured out how to find "to-be-archived" files using Cygwin tools) and
"gawk" to create a "filelist.txt" that goes something like this:

        /mcb/subdir1/subdir2/file1.txt=f:/mcb/subdir/subdir2/file1.txt
        /mcb/subdir1/subdir2/file2.txt=f:/mcb/subdir/subdir2/file2.txt
        ...

I then use "mkisofs -r -J -l ... -graft-points -o target.iso @filelist.txt" (i.e. not 
the "path-list" option).

Some other notes:

1. I have had to keep updating my backup script, after getting the latest
"mkisofs" version, because the developers have a tendency to alter the command
line options somewhat, e.g., somewhere along the line it was compulsory to
supply a directory on the command line, even when using a graft list. To get it
to work, I had my script create an empty directory and supply it on the command
line, before the "@filelist.txt".

2. Probably you ain't using Cygwin and maybe can't do "@filelist.txt"? The
"path-list" thing ought to do it, but I think I tried this and couldn't get it
to work with my "filelist.txt". Maybe "mkisofs" has a way to read command line
options from stdin (which is what I think the "@filelist.txt" under Cygwin
"bash" is doing for me). I've just looked at my script and can't see any point
at which I was using the "path-list" option, so I guess this works differently
than how I think it should.

Hope this helps.

> 
>    foo/
>        file.dat
>    bar -> foo
> 
> As a file, 'bar' would be placed on the CD (assuming rr). But as a
> pathspec, it is interpreted as the directory it points to, which gets
> traversed. 
> 
> So if I feed 'foo bar' to mkisofs, it will process foo (and put
> foo/file.dat on the CD). When encountering bar, it will --again--
> process foo, and (currently) die with a directory loop error.
> Eliminating this error does not change the fact that the directory gets
> stored twice.
> 
> What I need is a way to prevent it from being considered a pathspec.
> 
> -- Johan
> 
> 
> 
> --  
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]


--  
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to