[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apt-get still won't work with local cdrom



Anthony Campbell wrote:
> I thought I'd got apt-get to read my local cdrom but it seems I was wrong. It
> will update the packages but won't install anything. I have a Cheapbytes
> cdrom.
> 
> The entry in my sources.list is as follows:
> 
> 	
> 	deb file:/cdrom/debian  main/binary-i386/
> 
> The Packages file is read correctly. However, when I try to install a file I
> get an error message:
> 
> 	Unable to stat /cdrom/debian/debian/binary-i386/...
> 
> In other words, an unwanted extra /debian/ gets into the path when apt-get
> tries to install a file.
> 
> Can anyone suggest a way round this?
> 
> Anthony

I might be totally wrong, flame me if I am, but...

I upgraded my kernel to 2.0.34 and somehow I was able to 'look' at joilet type
cd's.  Before the upgrade the links did not show.  This presented me with
similar problems.
So, perhaps you could upgrade to a newer kernel and it might resolve itself.

If not....   alternate solution:

1- take a look with zless at /cdrom/debian/main/binary-i386/Packages.gz
   Each package is listed with a "Filename: " entry.
   This is partly the path apt will be looking for.
   deb file:/cdrom/debian  main/binary-i386/     <- from your sources.list
            ^^^^^^^^^^^^
          This ^  will be added to the front of that filename.
   I suspect that the entry in filename is: debian/binary-i386/text/.... (eg)
   from what you indicated.
2- Create a symbolic link: ln -s /cdrom/debian/main /usr/local/debian
   (first making sure you don't overwrite anything in /usr/local)
3- Change your entry in sources.lists to:
   deb file:/usr/local debian/binary-i386/
4- make sure you have the cdrom mounted before using apt.

That's the best I can do from here.  You will have to fill in the gaps. You
can also try to make your own Packages files.  That gives you control over
where you have it all located. The command is dpkg-scanpackages from
dpkg-dev.deb

John


Reply to: