0

Before i go off ranting i'm just gonna ask the question. Is it possible to edit a windows udf iso.

I've tried isomaster, Acetoneiso. The furthest I've gotten is engrampa but that only opens the image in read only mode.

I have downloded udftools and I've tried ark but none of them bar engrampa support udf.

i even tried downloading and installing poweriso for linux but the poweriso.sh file just tells me

"./poweriso.sh: line 3: 76952 Segmentation fault (core dumped) ./poweriso "

and poweriso returns this error

"Segmentation fault (core dumped)"

I'd like some help guys.

I had a look at he poseriso.sh file

" poweriso.sh
export LD_LIBRARY_PATH=. export QT_QPA_PLATFORM_PLUGIN_PATH=. ./poweriso unset LD_LIBRARY_PATH "

I tried modding the path line but no joy.

HI JayCravens... again!! Thanks for getting back to be so fast. I did everything you suggested and it finally packed the iso for me. but for some reason when i try to boot using the iso file in VirtualBox i have a problem. Firstly the boot menus shows *Windows, then when i press enter it just says "Grub" on screen and that's as far as i can get.. I tested the file by running isoinfo -d -i win82.iso. I got the following: " root@yikes-a320ms2h:/home/yikes/Downloads/win64# isoinfo -d -i win82.iso CD-ROM is in ISO 9660 format System id: Volume id: ISOIMAGE Volume set id: Publisher id: Data preparer id: XORRISO-1.5.6 2023.06.07.180001, LIBISOBURN-1.5.6, LIBISOFS-1.5.6, LIBBURN-1.5.6 Application id: Copyright File id: Abstract File id: Bibliographic File id: Volume set size is: 1 Volume set sequence number is: 1 Logical block size is: 2048 Volume size is: 2155895 El Torito VD version 1 found, boot catalog is in sector 3225 NO Joliet present Rock Ridge signatures version 1 found Eltorito validation header: Hid 1 Arch 0 (x86) ID '' Key 55 AA Eltorito defaultboot header: Bootid 88 (bootable) Boot media 0 (No Emulation Boot) Load segment 0 Sys type 0 Nsect 4 Bootoff 323A 12858 .i also ran file win82.iso and i got this: "win82.iso: ISO 9660 CD-ROM filesystem data (DOS/MBR boot sector) 'ISOIMAGE' (bootable) " I'm no expert but correct me if I'm wrong but they both indicate that the iso is bootable.

Hi Jay apologies for the late reply i was in hospital for a few days. Well I'm back at the keyboard now. I've tried everything you suggested but i'm still not having any luck booting from a virtual machine. i found the following code "yikes@yikes-a320ms2h:~/Desktop/iso_contents$ sudo su [sudo] password for yikes: root@yikes-a320ms2h:/home/yikes/Desktop/iso_contents# mkisofs -o new_bootable.iso
-b boot.img
-c boot.catalog
-no-emul-boot
-boot-load-size 4
-boot-info-table
-V "ISO_LABEL"
-J -R
home/yikes/Desktop/iso_contents/ I: -input-charset not specified, using utf-8 (detected in locale settings) genisoimage: No such file or directory. Invalid node - 'home/yikes/Desktop/iso_contents/'. root@yikes-a320ms2h:/home/yikes/Desktop/iso_contents# mkisofs -o new_bootable.iso -b boot.img -c boot.catalog -no-emul-boot -boot-load-size 4 -boot-info-table -V "ISO_LABEL" -J -R /home/yikes/Desktop/iso_contents/ I: -input-charset not specified, using utf-8 (detected in locale settings) File /home/yikes/Desktop/iso_contents/sources/install.wim is larger than 4GiB-1. -allow-limited-size was not specified. There is no way do represent this file size. Aborting. root@yikes-a320ms2h:/home/yikes/Desktop/iso_contents#

"should i just give up?

1 Answers1

1

Make directories & mount the ISO:

mkdir ~/win-iso-mnt ~/win-iso
sudo mount -o loop windows.iso ~/win-iso-mnt

Copy ISO contents:

 cp -r ~/win-iso-mnt ~/win-iso/

Perform task.
Re-create the .iso:

cd ~/win-iso
mkisofs -o ../modified-windows.iso -b boot/boot.img -boot-load-size 4 -boot-info-table ~/windows-iso

You should be able to extract the boot/boot.img from the original ISO.


Using grub instead, in case you don't have the boot.img file. This is how to use GRUB to boot.

Make sure you have grub-pc-bin installed:

sudo apt-get install grub-pc-bin

Set up a directory for the ISO:

mkdir -p ~/grub-iso/boot/grub

Create a grub.cfg file in the boot/grub directory:

nano ~/grub-iso/boot/grub/grub.cfg
set timeout=5
set default=0

menuentry "Windows" { insmod part_msdos insmod ntfs set root=(cd) chainloader +1 }

Copy your Windows files into ~/grub-iso:

cp -r ~/windows-iso/* ~/grub-iso/

Use grub-mkrescue to create the ISO:

grub-mkrescue -o windows.iso ~/grub-iso

If you cannot use the boot/boot.img, this should achieve the same goal.


PLAN C:
Create a Bootable ISO with Syslinux.

sudo apt-get install syslinux

Create the directory structure:

mkdir -p ~/syslinux-iso/boot/syslinux

Copy Windows Files:

cp -r ~/windows-iso/* ~/syslinux-iso/

Create Syslinux Configuration File:

nano ~/syslinux-iso/boot/syslinux/syslinux.cfg
DEFAULT windows
LABEL windows
    MENU LABEL Windows
    COM32 /isolinux/isolinux.bin
    APPEND /bootmgr

Install Syslinux Bootloader:

syslinux -i ~/syslinux-iso/boot/syslinux

Use mkisofs to create the ISO:

mkisofs -o windows-syslinux.iso -b boot/syslinux/isolinux.bin -c boot/syslinux/boot.cat -boot-load-size 4 -boot-info-table ~/syslinux-iso

File size issue:

The ISO 9660 filesystem has a limitation of 4gb. You can split the install.wim file into smaller parts using wimlib.

sudo apt-get install wimlib-tools

Use wimlib-imagex to split the install.wim file into smaller files. This command splits in 3.8gb chunks.

wimlib-imagex split ~/syslinux-iso/sources/install.wim ~/syslinux-iso/sources/install.swm 3800

Now, with the new .swm files in the sources folder of your ISO directory, re-create using mkisofs:

mkisofs -o windows-syslinux.iso -b boot/syslinux/isolinux.bin -c boot/syslinux/boot.cat -boot-load-size 4 -boot-info-table ~/syslinux-iso

This is the only way to keep it ISO 9660 compliant. — Never give up, my friend!