Jump to content











Photo
- - - - -

Experimental NTFS support for Syslinux: Please test


  • Please log in to reply
73 replies to this topic

#1 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 28 July 2011 - 08:56 PM

Experimental NTFS support for Syslinux.

Please test.

Be warned, it may blow up your hard disk or USB stick.
Install on drives that you have safely backed up somewhere.

Get it from:
http://ubcdcreator.s...nux-ntfs.tar.gz

How to install if your partition has drive letter X:
syslinux.exe --install -directory /boot/syslinux X:

The Linux installers are recommended at the moment.
The Windows installer can give an error message, but Syslinux will be installed nonetheless.

Edit: Syslinux 4.06-pre1 and newer have NTFS support. Installation from Windows/Linux.

#2 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 29 July 2011 - 03:16 PM

New test version:
http://ubcdcreator.s...fs-test2.tar.gz

#3 allanf

allanf

    Gold Member

  • .script developer
  • 1,256 posts

Posted 29 July 2011 - 03:53 PM

.

#4 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 29 July 2011 - 04:25 PM

I tested it on my external HDD and no filesystem corruption occurred. No critical files are stored on that partition. Only the installer writes to the disk, the booted Syslinux doesn't. So even if Syslinux locks up, a reboot solves your problems. So your data should be safe, but you never know for sure :( .

#5 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 10,848 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 29 July 2011 - 04:26 PM

Is there any possibility of resuscitating a "blown up" HDD/UFD? If so, how?

Like what, a head/platter massage? :) :magic:
Spoiler


Naah ;), no real chance of a hardware problem (with flames and blowing up), at the most you will lose the data on the disk. :(

:magic:
Wonko

#6 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 01 August 2011 - 08:15 PM

Not so long ago, i told myself NTFS support would be nice, since i need to store 4GB+ files on my flashdisc. And here it is ! Good job :whistling:

#7 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 01 August 2011 - 08:19 PM

Not so long ago, i told myself NTFS support would be nice, since i need to store 4GB+ files on my flashdisc. And here it is ! Good job :whistling:

@ Henkye
Can you please test it in the near future?

last version will always be at (also in first post):
http://ubcdcreator.s...nux-ntfs.tar.gz

#8 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 04 August 2011 - 02:31 PM

Tried it in KVM QEMU running clean XPSP2.
On FAT32 partition - all ok.
On NTFS partition got "Send/Dont send" windows error during installation. ldlinux.sys was created, however partition didnt boot.
My command was syslinux -fim e: Also tried other combinations (-s included) - same result as above.

In Ubuntu 10.10 liveCD tried:
root@ubuntu:~/Desktop/syslinux-ntfs/linux# ./syslinux

bash: ./syslinux: cannot execute binary file
Howto run it in linux ?

all version 4.05 2011

#9 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1,676 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 04 August 2011 - 02:39 PM

Tried it in KVM QEMU running clean XPSP2.
On FAT32 partition - all ok.
On NTFS partition got "Send/Dont send" windows error during installation. ldlinux.sys was created, however partition didnt boot.
My command was syslinux -fim e: Also tried other combinations (-s included) - same result as above.

Thank you for testing, Henkye!

The "Send/Don't send" Windows error message is a known issue that Icecube mentioned.

What do you see on-screen when you attempt to boot that HDD? Is the partition marked as the active partition and does the MBR contain boot code?

In Ubuntu 10.10 liveCD tried:

root@ubuntu:~/Desktop/syslinux-ntfs/linux# ./syslinux

bash: ./syslinux: cannot execute binary file
Howto run it in linux ?

all version 4.05 2011

I wonder if this is related to 32-bit versus 64-bit. Dunno exactly...

#10 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 04 August 2011 - 03:54 PM

What do you see on-screen when you attempt to boot that HDD? Is the partition marked as the active partition and does the MBR contain boot code?

When marked active, it said: "NTLDR missing". When non-active, just jumped to next boot device without any message.
Howto check MBR boot code ?

I wonder if this is related to 32-bit versus 64-bit. Dunno exactly...

Was running 32-bit Ubuntu.

#11 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1,676 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 04 August 2011 - 05:23 PM

When marked active, it said: "NTLDR missing".

That seems like progress! :whistling: So copy NTLDR, NTDETECT.COM, BOOT.INI, and it ought to boot!

When non-active, just jumped to next boot device without any message.
Howto check MBR boot code ?

With a hex-editor. But don't worry about it; it looks like it's working for you (see above).

Was running 32-bit Ubuntu.

Yeah the syslinux binary is 64-bit. Icecube is thinking about compiling a 32-bit version for testing, if I'm not mistaken.

#12 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 04 August 2011 - 06:48 PM

That seems like progress! ;) So copy NTLDR, NTDETECT.COM, BOOT.INI, and it ought to boot!

Yes, it start to booting windows, hangs cause there are no other win files on hdd .-)
Now i need to edit boot.ini to boot syslinux ?
But thats weird, will i now need those closed source files to boot linux for example ? As price for using NTFS ?

Yeah the syslinux binary is 64-bit. Icecube is thinking about compiling a 32-bit version for testing, if I'm not mistaken.

Thats too bad, i was soooo happy, when decided for 32-bit linux back days. Especially, when learnt about PAE. Everything seemed more compatible with 32-bit :whistling:

#13 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1,676 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 04 August 2011 - 08:15 PM

Yes, it start to booting windows, hangs cause there are no other win files on hdd .-)
Now i need to edit boot.ini to boot syslinux ?
But thats weird, will i now need those closed source files to boot linux for example ? As price for using NTFS ?

No. I made a mistake. We're expecting some SYSLINUX output. I guess it didn't actually get installed into the NTFS partition's boot sector if you got the NTLDR missing or corrupt message.

Thats too bad, i was soooo happy, when decided for 32-bit linux back days. Especially, when learnt about PAE. Everything seemed more compatible with 32-bit :whistling:

Hopefully an experimental 32-bit version becomes available.
Attached are 32-bit versions of the Linux installers. The NTFS support is the fine work of Paulo Alcantara.

Attached Files



#14 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 05 August 2011 - 11:42 AM

Tested 32-bit linux installer in QEMU KVM.
Tried both -i and -is, with same result.

Posted Image

Looks like progress, but still don't show menu like on FAT32.

What is extlinux executable ?

#15 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 05 August 2011 - 05:23 PM

Tested 32-bit linux installer in QEMU KVM.
Tried both -i and -is, with same result.

Posted Image

Looks like progress, but still don't show menu like on FAT32.

What is extlinux executable ?


Is the volume formatted from Linux (mkntfs) or Windows ?

Can you post the output of (replace /dev/sdXn with the right device for the NTFS partition):
sudo ntfsinfo -m /dev/sdXn


#16 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 05 August 2011 - 07:16 PM

Is the volume formatted from Linux (mkntfs) or Windows ?

All partitioning & formating done in Windows XP SP2. Each try, new rapartitioning.

Can you post the output of (replace /dev/sdXn with the right device for the NTFS partition):

Volume Information 

	Name of device: /dev/sdb1

	Device state: 11

	Volume Name: aaa

	Volume State: 1

	Volume Version: 3.1

	Sector Size: 512

	Cluster Size: 2048

	Volume Size in Clusters: 1046288

MFT Information 

	MFT Record Size: 1024

	MFT Zone Multiplier: 1

	MFT Data Position: 24

	MFT Zone Start: 348762

	MFT Zone End: 479548

	MFT Zone Position: 348762

	Current Position in First Data Zone: 479548

	Current Position in Second Data Zone: 0

	LCN of Data Attribute for FILE_MFT: 348762

	FILE_MFTMirr Size: 4

	LCN of Data Attribute for File_MFTMirr: 523144

	Size of Attribute Definition Table: 2560

FILE_Bitmap Information 

	FILE_Bitmap MFT Record Number: 6

	State of FILE_Bitmap Inode: 0

	Length of Attribute List: 0

	Attribute List: (null)

	Number of Attached Extent Inodes: 0

FILE_Bitmap Data Attribute Information

	Decompressed Runlist: not done yet

	Base Inode: 6

	Attribute Types: not done yet

	Attribute Name Length: 0

	Attribute State: 3

	Attribute Allocated Size: 131072

	Attribute Data Size: 130792

	Attribute Initialized Size: 130792

	Attribute Compressed Size: 0

	Compression Block Size: 0

	Compression Block Size Bits: 0

	Compression Block Clusters: 0


#17 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 05 August 2011 - 08:05 PM

All partitioning & formating done in Windows XP SP2. Each try, new rapartitioning.


Volume Information 

	Name of device: /dev/sdb1

	Device state: 11

	Volume Name: aaa

	Volume State: 1

	Volume Version: 3.1

	Sector Size: 512

	Cluster Size: 2048

	Volume Size in Clusters: 1046288

MFT Information 

	MFT Record Size: 1024

	MFT Zone Multiplier: 1

	MFT Data Position: 24

	MFT Zone Start: 348762

	MFT Zone End: 479548

	MFT Zone Position: 348762

	Current Position in First Data Zone: 479548

	Current Position in Second Data Zone: 0

	LCN of Data Attribute for FILE_MFT: 348762

	FILE_MFTMirr Size: 4

	LCN of Data Attribute for File_MFTMirr: 523144

	Size of Attribute Definition Table: 2560

FILE_Bitmap Information 

	FILE_Bitmap MFT Record Number: 6

	State of FILE_Bitmap Inode: 0

	Length of Attribute List: 0

	Attribute List: (null)

	Number of Attached Extent Inodes: 0

FILE_Bitmap Data Attribute Information

	Decompressed Runlist: not done yet

	Base Inode: 6

	Attribute Types: not done yet

	Attribute Name Length: 0

	Attribute State: 3

	Attribute Allocated Size: 131072

	Attribute Data Size: 130792

	Attribute Initialized Size: 130792

	Attribute Compressed Size: 0

	Compression Block Size: 0

	Compression Block Size Bits: 0

	Compression Block Clusters: 0


Thanks. It's a great information. I've a few commits that fix some wrong behaviors
with this implementation. Later when I get home I'll try to reproduce this same
bug, fix it, and then I'll commit the changes out and give you a newer version of it.

Again, thanks for this dump. I really appreciated it.


Regards,

Paulo

#18 Henkye

Henkye

    Newbie

  • Members
  • 11 posts
  •  
    Czech_ Republic

Posted 05 August 2011 - 08:51 PM

Glad i could help.
Looking forward new version.

#19 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 08 August 2011 - 12:10 PM

Hi all,

I'm almost finishing those bugfixes. Once I got them fixed, I'll post the new release here.
(it's taking some time because both work and university are dragging me off too much.)


Paulo

#20 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1,676 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 08 August 2011 - 12:20 PM

I'm almost finishing those bugfixes. Once I got them fixed, I'll post the new release here.
(it's taking some time because both work and university are dragging me off too much.)

Real Life Happens! :confused1:

#21 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 08 August 2011 - 12:47 PM

Real Life Happens! :confused1:


Hi Sha0,

Indeed. :-)


Paulo

#22 Nuno Brito

Nuno Brito

    Platinum Member

  • Team Reboot
  • 10,200 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 08 August 2011 - 01:18 PM

I'm almost finishing those bugfixes. Once I got them fixed, I'll post the new release here.

Obrigado Paulo, bem vindo à nossa comunidade! :confused1:



[english]Thank you Paulo, welcome to our community![/english]

#23 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 08 August 2011 - 02:11 PM

Obrigado Paulo, bem vindo à nossa comunidade! ;)

[english]Thank you Paulo, welcome to our community![/english]


Ola Brito,

Valeu! ;-)

[english]
Hi Brito,

Thanks! ;-)

[/english]



Paulo

#24 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 09 August 2011 - 05:34 PM

Hi All,

After the my latest commit I pushed onto my tree
(git://github.com/pcacjr/syslinux.git), this is what I've gotten to so far:

I've tested it with my 100 MiB NTFS partition (512-byte cluster size) and
it worked pretty well. Also an 1 GiB NTFS partition (4096-byte cluster size)
and it did work as well. But I got another 1 GiB NTFS partition (2048-byte
cluster size) and it didn't work (partially, so many files were properly
retrieved).

Note also that ntfs_readdir() function doesn't work anymore (those
changes affected its behavior of some way) and it needs to be fixed
after all. Which means that the COMBOOT32 module 'ls' won't work either.


I hope to get it working at all up to this weekend. Somehow I'll let you
guys know any further change.


Regards,

Paulo

#25 Paulo Alcantara

Paulo Alcantara

    Newbie

  • Members
  • 20 posts
  •  
    Brazil

Posted 11 August 2011 - 04:25 AM

Hi All,

These were the cluster sizes I tested with: 512, 1024, 2048 and 4096
bytes.
All NTFS partitions with each cluster size of those worked properly.

Now, you might to test it and maybe report any bug related to the
implementation.

This link contains the latest tarball automatically generated by
github: https://github.com/p...ux/tarball/ntfs



Regards,

Paulo

Edited by Paulo Alcantara, 11 August 2011 - 04:28 AM.