LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Ubuntu
User Name
Password
Ubuntu This forum is for the discussion of Ubuntu Linux.

Notices


Reply
  Search this Thread
Old 01-03-2007, 09:34 AM   #1
randysparks
LQ Newbie
 
Registered: Aug 2006
Posts: 2

Rep: Reputation: 0
Angry isolinux.bin changes


I've made my own DVD using the Ubuntu Edgy 6.10 ISO image as a base.

I've not modified *any* files contained within the original ISO, apart from the isolinux.cfg file -- the boot menu. I commented-out one of the entries.

I also added a new directory containing some files.

To make the DVD, I mounted the Edgy ISO image and copied the files to a new directory. Then I added my additional directory, and created a new ISO for the DVD using the following command:

mkisofs -r -V "Custom Ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /tmp/DVD.iso .

Once the ISO is burned to DVD disc, it works fine. Edgy boots and installs. All files are accessible.

But... for some reason, one byte of the isolinux.bin file is different. In addition, its time/date stamp of the file is updated. In other words, mkisofs has modified it. Why? When I did exactly the same thing with the Dapper ISO, the isolinux.bin file wasn't touched.

Like I say, this isn't a problem. But I'm curious as to what's happening. Why is mkisofs modifying the isolinux.bin file? What's it doing?

Last edited by randysparks; 01-03-2007 at 09:36 AM.
 
Old 01-03-2007, 12:08 PM   #2
win32sux
LQ Guru
 
Registered: Jul 2003
Location: Los Angeles
Distribution: Ubuntu
Posts: 9,870

Rep: Reputation: 380Reputation: 380Reputation: 380Reputation: 380
Quote:
Originally Posted by randysparks
I've made my own DVD using the Ubuntu Edgy 6.10 ISO image as a base.

I've not modified *any* files contained within the original ISO, apart from the isolinux.cfg file -- the boot menu. I commented-out one of the entries.

I also added a new directory containing some files.

To make the DVD, I mounted the Edgy ISO image and copied the files to a new directory. Then I added my additional directory, and created a new ISO for the DVD using the following command:

mkisofs -r -V "Custom Ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /tmp/DVD.iso .

Once the ISO is burned to DVD disc, it works fine. Edgy boots and installs. All files are accessible.

But... for some reason, one byte of the isolinux.bin file is different. In addition, its time/date stamp of the file is updated. In other words, mkisofs has modified it. Why? When I did exactly the same thing with the Dapper ISO, the isolinux.bin file wasn't touched.

Like I say, this isn't a problem. But I'm curious as to what's happening. Why is mkisofs modifying the isolinux.bin file? What's it doing?
my guess is it's your "-r" option... try a _test_ using "-R" instead and see if that leaves your isolinux.bin untouched...

Code:
-r     This is like the -R option, but file ownership and modes are set
              to more useful values.  The uid and gid are set to zero, because
              they  are  usually  only  useful on the author’s system, and not
              useful to the client.  All the file read bits are set  true,  so
              that  files and directories are globally readable on the client.
              If any execute bit is set for a file, set  all  of  the  execute
              bits, so that executables are globally executable on the client.
              If any search bit is set for a directory, set all of the  search
              bits, so that directories are globally searchable on the client.
              All write bits are cleared, because the CD-Rom will  be  mounted
              read-only in any case.  If any of the special mode bits are set,
              clear them, because file locks are not  useful  on  a  read-only
              file  system, and set-id bits are not desirable for uid 0 or gid
              0.  When used on Win32, the execute bit is  set  on  all  files.
              This  is  a  result of the lack of file permissions on Win32 and
              the  Cygwin  POSIX  emulation  layer.   See  also   -uid   -gid,
              -dir-mode, -file-mode and -new-dir-mode.
 
Old 06-06-2021, 12:10 PM   #3
andygoth
Member
 
Registered: Sep 2017
Distribution: Slackware
Posts: 132

Rep: Reputation: 66
Quote:
Originally Posted by randysparks View Post
I've made my own DVD using the Ubuntu Edgy 6.10 ISO image as a base. [...] But... for some reason, one byte of the isolinux.bin file is different. [...] In other words, mkisofs has modified it. Why? When I did exactly the same thing with the Dapper ISO, the isolinux.bin file wasn't touched.
Pardon the thread necromancy, but even though it's been fourteen years, I do have a real answer to share, and I want to link it here in case anyone else comes along searching. I mean, I was one such person, and since no answers were readily available, I had to dive into source code and work it out for myself.

mkisofs/xorriso indeed does (and must) modify isolinux.bin, or whichever El Torito bootloader is used, to patch in its LBA. That's Logical Block Address, or the raw location of the file on the disc divided by 2048. This is done because during early boot, the first 2048 bytes of isolinux.bin get loaded into memory at a known location before being executed, and it then has to find the rest of itself. Rather than require each bootloader to implement a full ISO9660 driver inside that 2K, El Torito tries to make things easy by just putting the location in a known spot.

Your experience with Dapper suggests that your changes did not result in isolinux.bin actually moving to a new location on the disc. Perhaps you added files that got sorted after it, perhaps you modified files without changing their size (measured in LBAs), etc.

Read my analysis here.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
mkisofs: Error - boot image './isolinux/isolinux.bin' has not an allowable size. ogross74 Red Hat 3 05-05-2016 02:22 AM
oh uh,i can't find the boot image 'isolinux.bin' shams Linux - Software 7 07-17-2007 02:34 PM
How do u make a isolinux.bin? jackiezaza Linux - Software 3 12-13-2004 06:13 PM
trouble in making isolinux.bin stephan Mandriva 0 05-05-2004 03:24 AM
ISOLINUX 1.75 2002-06-14 isolinux failed to get sector size tihe Linux - General 13 12-16-2002 04:55 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Ubuntu

All times are GMT -5. The time now is 04:38 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration