Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Some Windows Apps Make GRUB 2 Unbootable

timothy posted about 4 years ago | from the windows-is-to-boot-out-not-up dept.

Bug 429

KwahAG writes "Colin Watson, one of the Ubuntu developers, published in his blog information about Windows applications making GRUB 2 unbootable. Users of dual-boot Windows/Linux installations may face the problem, which boils down to particular Windows applications (Colin does not name them, but users point at least to HP ProtectTools, PC Angel, Adobe Flexnet) blindly overwriting hard disk content between the MBR and the first partition destroying information already stored there, in this particular case — the 'core image' of GRUB 2 (GRand Unified Bootloader) making the system unbootable."

cancel ×

429 comments

Sorry! There are no comments related to the filter you selected.

Solution: (0)

The MAZZTer (911996) | about 4 years ago | (#33405346)

Don't run those apps as administrator. Administrator privileges are needed for raw disk access.

Re:Solution: (1)

The MAZZTer (911996) | about 4 years ago | (#33405354)

On reflection, the names of some of those apps sound like they would need admin privileges to be useful. Sigh. Though it might help if they don't.

Re:Solution: (0)

Anonymous Coward | about 4 years ago | (#33405366)

Or switch to LILO

Re:Solution: (5, Interesting)

mysidia (191772) | about 4 years ago | (#33405436)

This is not a problem for the most important Linux systems which are not dual boot.

Most systems that are dual boot are workstations, not servers. Meaning the person who uses the system every day is most likely using Linux.

I think the solution is for the Linux installer to create Windows icons and a Start menu item group with two things.... A "boot Linux" icon (for launching loadlin)

And a "fix grub" icon, for fixing grub, no matter what some dastardly windows program has done to it.

Re:Solution: (1, Insightful)

jvillain (546827) | about 4 years ago | (#33405556)

Rather than dual boot just run windows out of a VM if you must run windows.

Re:Solution: (2, Insightful)

Rakishi (759894) | about 4 years ago | (#33405574)

Yeah, because games sure do great in a VM.

Re:Solution: (1)

KDR_11k (778916) | about 4 years ago | (#33405692)

If you want games then do it the other way around, Windows as the main OS, Linux in the VM.

Re:Solution: (0)

Anonymous Coward | about 4 years ago | (#33405588)

Are there VMs that offer the same (graphics) performance as native Windows? That's the only reason I still boot Windows.

Re:Solution: (0)

Anonymous Coward | about 4 years ago | (#33405590)

Most people dual-boot Windows for the native hardware acceleration, so you have that backwards: Linux should be inside the VM in that case.

Re:Solution: (-1, Flamebait)

calzakk (1455889) | about 4 years ago | (#33405624)

Rather than dual boot just run linux out of a VM if you must run linux.

There, I fixed it for you.

"built his house upon the sand" (5, Insightful)

alizard (107678) | about 4 years ago | (#33405754)

The whole point behind VMs is to make the host as reliable and stable as possible and put the flakier OS and software in a VM so when it crashes and burns, all one has to do is start the VM, not try to rebuild file structures and apps from scratch. Your post suggests you're not quite clear on the concept.

Unless you honestly believe that "Son of Vista" is more reliable and stable than Linux. In which case, I recommend you get help from a competent mental health professional.

Re:"built his house upon the sand" (-1, Troll)

Anonymous Coward | about 4 years ago | (#33405856)

You must be one of those "Year of the Linux Desktop" guys. What year was that again?

Re:Solution: (2, Insightful)

Anonymous Coward | about 4 years ago | (#33405578)

Yea, article is somewhat trollish, all three apps listed are server apps, and who the fuck would dual boot a server?

Re:who the fuck would dual boot a server? (2, Funny)

maximander (806231) | about 4 years ago | (#33405702)

Developers, Developers, Developers, Developers.

Re:Solution: (-1, Troll)

Anonymous Coward | about 4 years ago | (#33405370)

Better yet. Don't run Linux. Linux is for cock smoking queers.

Re:Solution: (-1, Offtopic)

Anonymous Coward | about 4 years ago | (#33405416)

Take that back! That's very rude to lump us cock-smoking queers with the sexless, basement-dwelling virgins who use Linux.

Re:Solution: (0)

Anonymous Coward | about 4 years ago | (#33405384)

There are programs that can run without administrator access?

Re:Solution: (3, Insightful)

EvanED (569694) | about 4 years ago | (#33405428)

A few years ago this would have been a much more fair question... now it's just troll/flamebait. I run as a limited user at both work and home, and for the most part it's installers and a couple other apps you'd expect which need admin rights.

(Even when Vista was new I kept a log of all the elevations I gave in a month or so, and with a couple exceptions (one of which has been since fixed and one of which was a stupid utility I didn't really need) they were basically on-par with what you'd need to 'sudo' to do in Linux.)

Re:Solution: (2, Informative)

mattventura (1408229) | about 4 years ago | (#33405392)

At least one of the apps mentioned in TFS (Flexnet) runs a service in the background, so running as a non-admin user would make no difference since the service is still privileged.

Re:Solution: (1)

Ephemeriis (315124) | about 4 years ago | (#33405518)

Don't run those apps as administrator. Administrator privileges are needed for raw disk access.

There are two problems with this.

The first one is that installing software generally requires elevation. And these apps could be doing their damage during install.

The second one is that if these apps need to be able to write to that section of the disk, they're going to ask for elevation. You'll either give them admin access, or you won't run them at all.

Re:Solution: (4, Insightful)

tinkerghost (944862) | about 4 years ago | (#33405690)

The second one is that if these apps need to be able to write to that section of the disk, they're going to ask for elevation.

OK, I can see AV software requiring raw disk access. I can't see why it would need to be able write to that section of the disk if there is no virus there.

Of the 3 programs listed, none are anti-virus. HP's software is for heavy duty keycard/usb dongle access to the computer - it might be trying to secure the bootstrap - however if that's what it's doing it should be replacing grub not just writing to the disk.

PC Angel is backup/recovery software ... WTF does it need raw disk access? It's not like your computer is accidentally going to be writing files outside the partition.

Adobe's netflex is their DRM. It's obvious why they want to write their information outside the partition - to make it harder to discover & alter - but I'll tell you that if I found a program doing that - I'd yank it off of any network I was running. You want to run on my networks, you color within the lines. I'm not wasting my time hunting down why a chunk of software is writing where it's going to be hard for my AV software to check it, I'm yanking it & tossing it in the trash.

Yeah, just a great idea to toss your proprietary code chunks into random places on the hard drive that 'nobody uses anyway'. It's a file system for a reason.

Unfortunately, the only company that's going to get any flak over this is Adobe. People are going to get work stations with the HP software installed & installing the netflex software will break it. Once that happens, Adobe will get called by "big important companies" and bitched at. HP & PC angel will merrily go on their way with only a few 'fringe crackpots' having an issue with their software.

I thought nothing was supposed to be there (3, Interesting)

guruevi (827432) | about 4 years ago | (#33405372)

... and that's the reason why BIOS 'virus protection' blocks access to that portion of the hard drive. Too bad that DRM breaks everything once again and too bad the mainstream of users isn't affected by it.

Re:I thought nothing was supposed to be there (5, Informative)

mysidia (191772) | about 4 years ago | (#33405400)

Nothing is supposed to be there except the user-installed system boot code, boot data, and hard drive parameters.

Third party software certainly has no business messing with Sector 0 or the boot blocks unless it gets explicit permission, advises users of the risks in messing with the boot block, prompts the user to back anything up that's there right now, and writes its bits only to the portion of the boot block that is provided for its required purpose.

It may detect bootloaders, and update their configuration, if the user accepts that, but bootloader configuration is generally stored on the boot volume not the boot block

Re:I thought nothing was supposed to be there (3, Informative)

FuckingNickName (1362625) | about 4 years ago | (#33405560)

The "boot block" is precisely one sector right at the start of the fixed disk, with some space being taken up by the primary partition table, signature, etc. The problem is not Grub (and certain Windows software) writing to this area, but writing to unpartitioned space elsewhere on the drive.

This is as wrong as looking at some filesystem, discovering that certain free blocks are unlikely to be allocated, and then using that space for storage.

Name and Shame (-1, Offtopic)

Anonymous Coward | about 4 years ago | (#33405376)

bitch!

HP ProtectTools (5, Funny)

Nemyst (1383049) | about 4 years ago | (#33405378)

Protecting your laptop from open source commies. And maybe viruses.

HP ProtectTools, PC Angel, Adobe Flexnet (0)

Anonymous Coward | about 4 years ago | (#33405386)

Anyone smart enough to run GRUB wouldn't usually be running HP ProtectTools or PC Angel. Adobe Flexnet DRM is another issue entirely.

Re:HP ProtectTools, PC Angel, Adobe Flexnet (1)

0123456 (636235) | about 4 years ago | (#33405810)

Adobe Flexnet DRM is another issue entirely.

Anyone smart enough to run Grub probably knows better than to run Adobe software of any kind. Except, perhaps, for Flash with appropriate Apparmor or SELinux protections for the inevitable security exploits as it's so hard to avoid.

WTF is the "embedding area"?! (4, Interesting)

Anonymous Coward | about 4 years ago | (#33405402)

WTF is this "embedding area?" It sound like GRUB is misusing the disk geometry to find unused space and then getting upset that other programs do that too.

Googling for "embedding area" find that it's a term that GRUB 2 made up and that it's not really a part of anything. In fact, apparently this space doesn't even exist under EFI systems, and that this "embedding area" is an artifact from DOS.

So, basically, GRUB is misusing the disk to store information in a place it has no right to be touching, and then getting upset that other people make the same mistake. Genius.

Re:WTF is the "embedding area"?! (5, Insightful)

Spazmania (174582) | about 4 years ago | (#33405458)

It makes sense for a bootloader to place data and code outside of partitioned space. It makes more sense to place the code inside a partition, even if it's a one-track partition dedicated to the bootloader. If they collided with components of Windows' bootloader or FreeBSD's bootloader, or some pre-boot hard disk encryption software I'd have little sympathy for them.

On the other hand, user-level apps storing data on the hard disk outside of partitioned space is very bad mojo. They should not be doing that. Ever. Period.

Re:WTF is the "embedding area"?! (2, Interesting)

Sir_Sri (199544) | about 4 years ago | (#33405584)

which goes to the question of whether or not some of these programs really count as user level. Is anti virus user level? Well it can be, but what about one that blocks rootkits? What about one that is trying do something crazy related to virtualization? What if HP just assumes you're either too stupid to use unbuntu on your computer or are smart enough to not use their terrible software anyway?

PC angel and HP protect conceivably live outside the OS level, well actually they do basically the same thing GRUB does, which is allow you to boot into another OS. They just aren't full blown OS's (PC angel is disk imaging, HP protect is I think aiming to be security before the OS layer). I don't think i've ever used adobe flex, but I can't see why a web creation suite is is writing outside a normal partition. Note: I'm guessing at how HP protect works, but some of their security solutions could conceivably live outside the OS, whether that's a good idea or not is another matter, but they might have a legitimate reason for doing it that way.

if it's a problem of everyone trying to solve the same problem in basically the same way (trying to stick bootloaders all in the same place) it might be a big political win for GRUB, to justifiably create some actual standards so all the OS guys use the same bootloader locations, with their boot info in a standard format so they can all work at once. Though adobe in this one looks like they deserve to be slapped around a bit, if the conjecture is accurate.

Re:WTF is the "embedding area"?! (4, Insightful)

0123456 (636235) | about 4 years ago | (#33405776)

It makes sense for a bootloader to place data and code outside of partitioned space. It makes more sense to place the code inside a partition, even if it's a one-track partition dedicated to the bootloader.

It would, if you could actually get more than four partitions on a hard drive with the 90+% of BIOSes which can't boot properly from a GPT drive.

My new laptop came with _THREE_ recovery partitions and a Windows partition, so I had to delete one of the recovery partitions to be able to install Linux at all... where would I get another partition for Grub to run from without deleting all the recovery data?

So the big problem is that we're still stuck with shitty MS-DOS disk formats from the 1980s.

Re:WTF is the "embedding area"?! (5, Insightful)

FuckingNickName (1362625) | about 4 years ago | (#33405502)

Bingo. It is absolutely wrong to put data outside of partitioned space, and it is insane to blame something else for your own bug. Indeed, one security measure when installing a new system might be to zero out all unpartitioned space and then make sure nothing is ever written to it - Grub makes this impossible.

Grub should use an existing partition to store all the bits which don't fit inside the MBR, following the lead of EFI system partitions if necessary but supporting various common filesystems otherwise. Instead they use an atrocious hack to try to make things look neat.

Re:WTF is the "embedding area"?! (2, Informative)

John Hasler (414242) | about 4 years ago | (#33405536)

Grub should use an existing partition to store all the bits which don't fit inside the MBR...

We call that LILO.

Re:WTF is the "embedding area"?! (4, Informative)

alexhs (877055) | about 4 years ago | (#33405650)

It's also called "GRUB with blocklists"

You can find more here [archlinux.org] ,
and in my other post [slashdot.org]

Re:WTF is the "embedding area"?! (1, Interesting)

FuckingNickName (1362625) | about 4 years ago | (#33405752)

Wait wait wait, I have to specify the specific blocks to load now? And
grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and its use is discouraged.
grub-setup: error: If you really want blocklists, use --force.
...?

I've written a toy partition bootloader over a weekend which was able in around 400 bytes to load and execute any file on a FAT filesystem. And another for the MBR gave a menu of primary and extended partitions for keyboard selection. What is the Grub project finding so difficult?

Re:WTF is the "embedding area"?! (1)

0123456 (636235) | about 4 years ago | (#33405828)

What is the Grub project finding so difficult?

Could it be something to do with the fact that people aren't booting from FAT filesystems?

You might find that ext3, ext4, btrfs, XFS, ZFS and other Unix filesystems might perhaps be a little more complex to read than FAT, particularly if you have to support all of them.

Re:WTF is the "embedding area"?! (4, Insightful)

MBCook (132727) | about 4 years ago | (#33405812)

If it's wrong to put data outside of partitioned space, what are these user spaces apps doing writing there? I can see a pretty good case for boot loaders doing this (the comment below about the 4 partition limit is one). Why is a copyright/licensing program writing there (which is what Flexnet seems to be)?

What's to prevent one of these programs from overwriting the data another makes? How would you like it if every time you ran NewSuperGameWithDRM, Photoshop lost it's license and forced you to phone home to reconfirm it?

Re:WTF is the "embedding area"?! (1)

Aredridel (93503) | about 4 years ago | (#33405838)

There's a long history of boot loaders living there: Systems that treat "slice 2" as the whole disk typically use it for just that: Storing boot information outside the other partitions.

And, ultimately, OS components are allowed to touch that and applications in general should not.

Move along (1)

Jorl17 (1716772) | about 4 years ago | (#33405406)

Nothing to see here...Just proprietary companies fucking up some computers. What do they care? They've got a large market to sere that doesn't run our far-superior POSIX compatible kernels.

I honestly hope there is a way to sue them, though I don't think there is.

Re:Move along (2, Interesting)

vux984 (928602) | about 4 years ago | (#33405412)

Just proprietary companies fucking up some computers.

Does grub have any more reason to be there these other companies? It looks like nobody is supposed to be there... including grub.

Re:Move along (2, Informative)

arose (644256) | about 4 years ago | (#33405446)

Yes, it does. GRUB deals with the boot process, it's one of the things that do have any business of being there.

Re:Move along (4, Informative)

Anonymous Coward | about 4 years ago | (#33405498)

Wrong, GRUB belongs in the MBR, not in some unpartioned space that is not supposed to be of use, if they have a problem with that, just keep that thing (GRUB) small or create a partition.

Re:Move along (2, Interesting)

0123456 (636235) | about 4 years ago | (#33405854)

Wrong, GRUB belongs in the MBR, not in some unpartioned space that is not supposed to be of use, if they have a problem with that, just keep that thing (GRUB) small or create a partition.

How do you plan to boot from an arbitrary Linux partition using a 512-byte boot loader?

Re:Move along (5, Insightful)

osu-neko (2604) | about 4 years ago | (#33405644)

Does grub have any more reason to be there these other companies?

It does if I put it there. Nothing should be automatically written into partitioned space. Partitioning defines what areas of the disk I want to be automatically written to using whatever scheme I define by setting the partition type. Anything outside that, I'm free to manage any way I please. I can put a block-oriented FORTH program there if I like, individually managing "screen" loads and saves in the FORTH code. Or whatever. The point is, they're my blocks to do with as a like, and nothing should be written there except what I explicitly write there.

Among other things, it does mean that if I choose to write GRUB data there, it should be perfectly safe there. If it isn't, that's a serious bug in whatever program overwrote the unpartitioned block(s).

Re:Move along (1)

osu-neko (2604) | about 4 years ago | (#33405654)

Nothing should be automatically written into partitioned space.

Gah! UNpartitioned. Nothing should be automatically written into unpartitioned space.

Re:Move along (1)

Aredridel (93503) | about 4 years ago | (#33405846)

The boot information for your OS has to live somewhere. If you want it to be any smarter than "load the first thing it finds", starting in the MBR and going from there is smart. Easy to do in the constraints of an early boot environment.

And either way, applications should not be mucking with the low-level bits of your hard drive without extensive documentation of that fact at least.

Re:Move along (1, Insightful)

lgw (121541) | about 4 years ago | (#33405598)

They've got a large market to sere that doesn't run our far-superior POSIX compatible kernels.

Windows (at least the current NT-based flavors) is POSIX compatible, you know.

Re:Move along (2, Informative)

RobertLTux (260313) | about 4 years ago | (#33405626)

sort of the same way a hummer is JATO compatable

Re:Move along (1)

lgw (121541) | about 4 years ago | (#33405658)

Windows really is - it's just that "POSIX compatible" isn't a very useful label.

Re:Move along (2, Informative)

Anonymous Coward | about 4 years ago | (#33405714)

This isn't actually true. It used to be. Windows NT was POSIX.1 compatible (which is not very useful, and definitely doesn't imply that you can take POSIX software and run it on Windows NT without significant porting effort).

But Microsoft removed that feature from Windows XP onwards. Now the only way to get POSIX compatibility in Windows is to download and install a separate component that adds limited POSIX capabilities. Frankly anyone who cares about POSIX will just use an actual UNIX or a clone like GNU/Linux.

Re:Move along (1)

lgw (121541) | about 4 years ago | (#33405764)

Ah, good point. It was always kind of a joke with Windows anyhow. But Interix (Service for Unix or whatever they call it), isn't terrible, and has much of the important crap you need that isn't part of "POSIX-1", such as pthreads.

As you say, anyone who "Cares about POSIX" will use a real unix, but that wasn't the point. Interix was designed for companies that have mostly moved to Windows, but have a few legacy unix apps they can't abandon. I've done a bit of actual programming in the environment, and it has little to recommend it over any modern unix, but there's some pretty ugly ancient crap out there that's "POSIX compatible".

Re:Move along (3, Funny)

Jorl17 (1716772) | about 4 years ago | (#33405742)

Oh, yes! Much like .NET is cross-platform! And the Windows API!!


Oh, wait...

Re:Move along (0, Flamebait)

bkpark (1253468) | about 4 years ago | (#33405622)

Nothing to see here...Just proprietary companies fucking up some computers. What do they care? They've got a large market to sere that doesn't run our far-superior POSIX compatible kernels.

I honestly hope there is a way to sue them, though I don't think there is.

If those POSIX compatible kernels are so superior, why was anyone running the "inferior" Windows operating system in the first place?

The way I see it, people who are affected by this deserve it—they shouldn't have been dual-booting into Windows in the first place.

Re:Move along (1)

Jorl17 (1716772) | about 4 years ago | (#33405732)

I really don't know why they were running it.

Oh, wait, I do! It's because there's next to none PR for Linux and, thus, new users who are used to Windows decide to try it out in a "safe" environment (the real-thing safe, not the VM safe). It's because the inferior Windows operating system is around and everywhere that so many people can't get rid of it with ease. I, myself, dual-booted an old Windows for a year until I made the final move to my beloved operating system, which obeys my every command.

And why shouldn't they "be dual booting into Windows in the first place"? Who the hell are you to decide the "moral" of running an OS or not? You may judge the OS architecture and judge users -- however, you cannot objectify your opinion and state that "they shouldn't be doing X". You can say that "In my opinion, they shouldn't be doing X".

Now go reboot your machine, I'm sure Windows has updated for the fifth time of the day already.

Re:Move along (1)

hedwards (940851) | about 4 years ago | (#33405826)

These sorts of screw ups make me think that perhaps commercial software companies ought not be be given a free pass for when a bug in their software nukes customer data. For free software whether it be opensource or just free, I can understand not requiring responsibility, if you're not making any money on it then you should be able to disclaim the risks and not be liable. But I do wonder how many of the bugs in Windows would exist if MS were responsible for breaches due to their shoddy code practices. Even if they weren't held responsible for user initiated stupidity.

So that's what happened... (1)

azt3k (1585295) | about 4 years ago | (#33405410)

I run a windows 7 unbuntu 10.04 dual boot, Ubuntu keeps deleting windows 7 from my grub.cfg everytime grub updates, now windows makes grub unbootable altogether. Wicked. This would explain why my laptop got stuck in an endless reboot loop yesterday... Sigh...

Re:So that's what happened... (3, Informative)

The MAZZTer (911996) | about 4 years ago | (#33405442)

IIRC there's a part of grub.cfg that is marked with comments to not be auto-replaced when grub takes inventory of your linux kernel versions. Put the Windows stuff in there.

Re:So that's what happened... (2, Informative)

Teun (17872) | about 4 years ago | (#33405792)

/etc/grub.d/40_custom

Re:So that's what happened... (1)

hedwards (940851) | about 4 years ago | (#33405860)

I had the same problem with FreeBSD and Win XP being nuked from the configuration file. There is a provision for doing just that so that the configuration gets updated correctly without further interaction from the user. Once I got tired enough of that to look for a solution, it didn't take long to find. I suspect there's a rather long list of OSes that are effected, probably the same list of OSes that require manual intervention the first time.

Re:So that's what happened... (1)

gearloos (816828) | about 4 years ago | (#33405452)

If you want to keep your windows next time, just say no on the screen to update grub.config map. It will still update everything, it just won't re-map your tables.-I used to have that problem and that was what I did to stop it, well beside having the pleasure of deleting windows when i quit playing EQ2 and NEVER looking back... haha

Re:So that's what happened... (1)

Arancaytar (966377) | about 4 years ago | (#33405478)

Ubuntu keeps deleting windows 7 from my grub.cfg everytime grub updates

That is why the first line of grub.cfg reads: "DO NOT EDIT THIS FILE. It is automatically generated ... using templates from /etc/grub.d."

So if you want to put something in grub.cfg, edit the files in /etc/grub.d to make it persistent.

Not a bug. (0)

Anonymous Coward | about 4 years ago | (#33405420)

Grrr, I hate how he starts by calling it a bug.

A bug is a program doing something that the software did not intend. This is hardly that.

Is it criminal trespass of your computer, yes. At least if the program does not disclose that it will be using this shared area.

Re:Not a bug. (2, Insightful)

Andorin (1624303) | about 4 years ago | (#33405450)

Ah, I don't think the programmers behind these applications meant for their little signature to knock down GRUB. That sounds like an unintended action to me.

Re:Not a bug. (1)

Ironhandx (1762146) | about 4 years ago | (#33405798)

Given the level of fanboyism displayed by a lot of people these days I think you may be very very surprised at the actual answer to the question "Did they mean to do it"

I doubt it was a company policy since none of those are Microsoft but still, even thats a possibility, and it really shouldn't be.

It is free for all region (4, Interesting)

Technomancer (51963) | about 4 years ago | (#33405432)

While MBR has some function, the rest of sectors between MBR and the first partition was always a great area.
Many MBR viruses put their stuff there. Many stupid programs use it to store DRM data, so they can check whether they were copied to other computer
If GRUB is using this region too, it is equally stupid. There is no protocol for allocating this area and there is no guarantee that this data is not going to be overwritten by any other stupid program.
So nothing to see here, move aling, it is just Core Wars between stupid programs.
GRUB developers should have known better.

Re:It is free for all region (4, Insightful)

sjames (1099) | about 4 years ago | (#33405630)

There is a fairly strong convention there that userspace data goes in partitions and boot loaders low-level stuff go outside of partitions. The "unused" sectors on track 0 have long been considered as reserved for boot loader. It's even in the original specs.

Yeah, viruses use that space sometimes, but by nature a virus ignores boundaries anyway, DRM, that is, software that hides itself from the user and makes the computer malfunction (by not doing the owner's bidding) is just a special case of virus.

Re:It is free for all region (0)

Anonymous Coward | about 4 years ago | (#33405738)

> It's even in the original specs.

Please cite this.

Re:It is free for all region (1)

hedwards (940851) | about 4 years ago | (#33405880)

Except that grub uses that space before it knows anything about the rest of the disk layout. Meaning that by putting it there, the likelihood of it accidentally nuking things while loading up modules to parse out the rest of the disk is greatly reduced. One of the issues that we've had for quite some time is that there's a very small amount of space dedicated to bootloaders by default, and some adjustment has to be made for more complicated set ups. Additionally by keeping it out of the user partitions there's a greatly reduced chance that grub will itself corrupt user data rather than just the easy to regenerate grub configuration files. Remember grub does have to write things there from time to time, rather than just read.

Another example of DRM fail (3, Interesting)

Andorin (1624303) | about 4 years ago | (#33405434)

From the article:

At least some occurrences of this are with software which writes a signature to the embedding area which hangs around even after uninstallation (even with one of those tools that tracks everything the installation process did and reverses it, I gather), so that you cannot uninstall and reinstall the application to defeat a trial period.

So once again DRM is fucking with peoples' abilities to use their computers. Except this particular bit of DRM doesn't just screw with Windows; it could potentially screw with every OS on your drive (or screw with your ability to access them, at any rate).

Yeah, it's not conventional DRM, but it's a form of DRM in that it restricts the user in some arbitrary way (and, I ought to add, breaks something else in the process... that too should be part of the definition of DRM).

Re:Another example of DRM fail (1)

howdotheydothat (1359627) | about 4 years ago | (#33405548)

So a simple fixboot/fixmbr or a reinstall of GRUB would remove the aforementioned DRM?

Re:Another example of DRM fail (2, Interesting)

Anonymous Coward | about 4 years ago | (#33405788)

Not only that, but if somebody figured out which software used such DRM... Hypothetically they could get at that bit by comparing the overwritten GRUB to the normal GRUB, and then start their reverse-engineering hacks against the DRM portion since it's no longer hidden.

DRM that writes to the same spot every time without any checks sounds like something with a big "CRACK ME" target painted on it. Now its just a matter of time until figuring out which software does this.

We've Been On This Topic Earlier: (+10, Helpful) (-1)

Anonymous Coward | about 4 years ago | (#33405448)

DO NOT use Microsoft Craporation software [microsoft.com] .

Yours In Moscow,
K. Trout

Not surprised (3, Insightful)

Murdoch5 (1563847) | about 4 years ago | (#33405470)

Got to say this isn't surprising at all. Windows has never favored the dual boot setup. In the mind of Microsoft, there product should be the only one to touch the drive and thats it. Personally I run 2 dual boot setups. 1 on my notebook and 1 on my desktop. The amount of times that Windows has chosen to just over write grub and leave me with no way to get into Linux is amazing. What Microsoft should do to show there a team player is put code into the install to detect a grub install and then append the correct entry into the grub file to setup the dual boot.

I know this will very likely never happen but it would be a good step to be taken by Microsoft.

I've recently tried GRUB2 (1)

elsJake (1129889) | about 4 years ago | (#33405472)

Grub2 has a lot of nice features but it seems to be adding a lot of complexity into the equation , more than is required for some systems.
Thankfully they thought of renaming it rather than adding all that stuff to GRUB legacy , otherwise i would've started one of those Grub vs Lilo rants only renamed into Grub vs. Grub right here and now.

Re:I've recently tried GRUB2 (1)

wisnoskij (1206448) | about 4 years ago | (#33405566)

and this is not its only issue.
It has some multi hard drive issue (i think) that adds 20 seconds to my normally 6 second bootup time.

Legacy BIOS booting has always been broken (1)

alexhs (877055) | about 4 years ago | (#33405494)

blindly overwriting hard disk content between the MBR and the first partition destroying information already stored there

There's no allocation scheme nor some kind of magic number to identify the content in that zone, so there is no 'smart' way to write in that zone. You could check for zeroes, which is fine fine for a new disk, then ask the user if you find that the area has been previously written, but the user usually won't know and will only be confused.

The 'smart' thing to do is not only to not write in that area (as reported, GRUB stage 1.5 can be erased), but also to not write in the MBR as too many OSes will overwrite it (and therefore GRUB stage 1) on (re)installation.

I'm usually staying with the conventional "4 primary partitions that can be active" MBR, GRUB stage 1 in some Linux partition (usually a small /boot partition at the beginning of the disk to avoid most of the problems with old/buggy BIOSes), then directly stage2 from the partition instead of stage 1.5. However, the loading of stage 2 without stage 1.5 has been deprecated in GRUB2. IIRC it's because the block list needed was bigger than with the smaller GRUB1, and might not fit in the boot sector anymore.

Alas, that disposition can break on some old/buggy BIOSes but is much more resilient to software abuse (usually writing a standard boot sector and setting the active partition to the one where you installed GRUB fixes any such problems).

(I'm talking about GRUB stages from memory, feel free to correct me if I did some mistakes)

Malicious by definition? (1)

MrLint (519792) | about 4 years ago | (#33405516)

If these apps are writing outside the file system, and doing so in an undocumented fashion, is this not; in some sense, a definition of malicious activity?

Re:Malicious by definition? (1)

im_thatoneguy (819432) | about 4 years ago | (#33405850)

So what you're saying is that GRUB is a virus? It's writing there in an undocumented fashion as well.

They're all exploiting a no-rules no man's land. Without any regulation or standard you should assume there will inevitably be conflicts and collisions.

LILO is immune to this. (5, Informative)

John Hasler (414242) | about 4 years ago | (#33405526)

And yes, LILO is still supported and under development. LILO 23 [debian.org]

Re:LILO is immune to this. (0)

Anonymous Coward | about 4 years ago | (#33405820)

I'd rather use extlinux or syslinux.

Re:LILO is immune to this. (1)

Threni (635302) | about 4 years ago | (#33405876)

Let's hope it's less complicated than the joke GRUB2 is. Seriously, I'm something of a noob to Linux, but I don't understand how the question `how do we make an app to configure which partition to boot into` is best answered with `use GRUB2`. How many files are involved? How are they combined? Why is the language so confusing? Why not provide an idiot mode so that people who just want to boot into this or that partition, especially after running this windows shite, or perhaps because they've installed Ubuntu to a USB key and the default action is to tell the local hard drive to boot from it (seriously). I don't get it.

Reinstall GRUB (0)

Anonymous Coward | about 4 years ago | (#33405558)

Seriously. It's not that hard. Get a boot CD, drop to a command prompt, install GRUB. If that's inconvenient, consider virtualizing one OS or the other. Say, virtualize Linux in Windows using free VMware Server.

Re:Reinstall GRUB (1)

basscomm (122302) | about 4 years ago | (#33405674)

Seriously. It's not that hard. Get a boot CD, drop to a command prompt, install GRUB. If that's inconvenient, consider virtualizing one OS or the other. Say, virtualize Linux in Windows using free VMware Server.

You and your grandmother likely have different definitions of "hard".

Re:Reinstall GRUB (1)

Daniel Dvorkin (106857) | about 4 years ago | (#33405694)

You and your grandmother likely have different definitions of "hard".

The stereotypical computer-illiterate grandmother isn't going to be doing any kind of multi-booting in the first place, so whatever GRUB might do to her computer, and how to fix it, is irrelevant.

About time...? (1)

Manip (656104) | about 4 years ago | (#33405562)

Isn't it about time we had the Linux, Windows, and OS X guys sit down and agree on a standard for booting into multiple Operating Systems that wasn't invented in the early 1990s? I mean, just create a VERY simply little standard everyone can agree on that simply allows boot loaders to be called.

I know, I know, insanely wishful thinking. Unfortunately there is no benefit for either Apple or Microsoft to ever agree to even the concept of multi-boot since it is against their respective business models. Maybe we should have a third party create the standard and then pressure Microsoft into signing up for it?

Re:About time...? (1)

Daniel Dvorkin (106857) | about 4 years ago | (#33405670)

Unfortunately there is no benefit for either Apple or Microsoft to ever agree to even the concept of multi-boot since it is against their respective business models.

Um ... ever heard of Boot Camp? Apple not only "agrees" to multi-booting, they actively support it. Blame Microsoft for hostility to the concept all you want, but there's no reason to drag Apple into it.

Re:About time...? (1)

Beelzebud (1361137) | about 4 years ago | (#33405676)

I've often wished for this as well. There is no excuse for not having some sort of multi-OS standard for booting.

Re:About time...? (0)

Anonymous Coward | about 4 years ago | (#33405710)

Isn't that what EFI is?

Re:About time...? (1)

philipmather (864521) | about 4 years ago | (#33405882)

I know, I know, insanely wishful thinking. Unfortunately there is no benefit for either Apple or Microsoft to ever agree to even the concept of multi-boot since it is against their respective business models. Maybe we should have a third party create the standard and then pressure Microsoft into signing up for it?

No wait! It fits perfectly with Microsoft's business model, I believe agreeing to a standard falls into the "Embrace" stage! Then in about 18 months they can extend it with a proprietary DRM system that fscks every other OS.

1. Embrace boot loader standard.
2. Extend boot loader standard with DRM.
3. Extinguish alternative OSes.
4. PROFIT!!!

Only those of us 31337 enough not to have Windows installed in the first place (or who can reinstall their boot loaders) will remain on Slashdot to bitch about M$ whilst Steve Job's umper lumpers will come up with a much sexier way to load their booters. Makes sense to me anyway.

Back to plot for a moment... sounds like someone wasn't drinking the kool-aid when they designed GRUB 2 frankly. It might be epic fail for applications to go fiddling in un-partitioned areas but it's still regular fail for the boot loader to be off doing the same without it being a well understood convention like the boot sector.

What happens when you want to back it up? Does dumping the MBR or taking a snapshot of the partitions capture this extra info or am I missing something?

Bootloaders are un-necessary (1)

inode_buddha (576844) | about 4 years ago | (#33405568)

They are great to have, much more convenient. But not strictly required due to the way that hardware *is*. I run a straight linux box. And the last I checked, you could "dd" the kernel image directly to the first bootable device, usually /dev/hda or /dev/sda, and it would boot. You do it as an entire block, and then "dd" the entire root FS onto the next disk block. So that the kernel can find it. If it doesn't fly then you get a panic message about "Root FS not found" along with a complete halt. It will sit there and wait for a kernel cmdline. Alternatively, you can set a word in ramdisk via "rdev" and tell the kernel where to find it. It's in the "howto's".

GRUB ? (-1, Troll)

Joebert (946227) | about 4 years ago | (#33405606)

What's GRUB, is it that blue screen I get taken to when I press the del key at startup to select which hard drive I want to boot from ?

FLEXnet, Adobe's rootkit (5, Informative)

Animats (122034) | about 4 years ago | (#33405660)

The big headache is FLEXnet, Adobe's "license manager". It's a specialized rootkit that gives the remote licensing system access to the machine at a low level. Which is why it tends to break things a Windows application shouldn't be able to break. On Windows, it runs a background service and contacts a remote server frequently, sending undocumented information to the remote server and accepting update commands to change software already on the computer.

FLEXnet is the successor to FlexLM, a licensing system from the 1980s. [wikipedia.org] It started as a UNIX product. It's been owned at various times by Highland, Globetrotter, Macrovision, and Thoma Cressey Bravo. It was unreliable in the 1990s, and the passage of time does not seem to have improved things.

In general, it's best to avoid buying Adobe products which install the FLEXnet license server.

Re:FLEXnet, Adobe's rootkit (1)

neuro-commando (1888256) | about 4 years ago | (#33405708)

Indeed, I've also heard of other Adobe products doing similar things to GRUB, though I believe they somehow ended up overwriting it altogether. I don't remember the specifics, but it happened to me once. True, no big deal, I popped in Super Grub Disk and repaired my MBR, but its the fact that Adobe has no business there, coupled with the fact that it's annoying which really gets to me.

Simple case of arrogant and lazy programmers (1, Redundant)

meerling (1487879) | about 4 years ago | (#33405808)

They are trying to outsmart the os and other programs by using non-standard areas for some of their code without bothering to check if something else is already using it.
Ironically I saw a lot of this during the switchover to win95.
The stupidly assume that if their test machine isn't using that chunk of drive, nothing else does either, at any time, ever.
You'd be shocked at how many people got their MBRs blown out because of that kind of stupidity.

Well, it's been about 15 years, so there's a whole new crop of arrogant lazy s.o.b.s out there that have to learn that the computer is a shared environment.

Turbo Tax Did It First (3, Interesting)

McD (209994) | about 4 years ago | (#33405836)

We've been down this road before. In 2003, Intuit's Turbo Tax (for tax year 2002) pulled the same stunt [goodells.net] , indiscriminately overwriting sectors at the beginning of the disk (outside any partition) and trashing people's bootloaders.

All in the futile pursuit of DRM. That's reason enough for me to use Tax Cut, instead, every year since.

No surprise (1)

koan (80826) | about 4 years ago | (#33405868)

That sort of thing is SOP for HP and Adobe lately, and certain video game manufacturers.

a simple rule (1, Insightful)

Anonymous Coward | about 4 years ago | (#33405888)

Your software has NO business writing to the MBR. EVER... The MBR and the installation of device drivers should be reserved for *legitimate* use, such as providing support for hardware, or multibooting another OS. This is yet another reason not to trust proprietary software. The bottom line is this: you do not know how the end-user has configured his machine. Therefore you should not fsck with unnecessary portions of the system that are not intended to be routinely modified.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>