Some Windows Apps Make GRUB 2 Unbootable
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."
... 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.
Custom electronics and digital signage for your business: www.evcircuits.com
Protecting your laptop from open source commies. And maybe viruses.
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.
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.
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.
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.)
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.
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).
That Anonymous Coward guy is pretty annoying. Can we have the government censor him or something?
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.
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.
Yes, it does. GRUB deals with the boot process, it's one of the things that do have any business of being there.
Analogies don't equal equalities, they are merely somewhat analogous.
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.
That Anonymous Coward guy is pretty annoying. Can we have the government censor him or something?
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.
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.
And yes, LILO is still supported and under development. LILO 23
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Yeah, because games sure do great in a VM.
Of course, Flexnet is apparently quite capable of making Windows unbootable too, at least if you're using TrueCrypt. Say no to badly-designed DRM!
Yea, article is somewhat trollish, all three apps listed are server apps, and who the fuck would dual boot a server?
sort of the same way a hummer is JATO compatable
Any person using FTFY or editing my postings agrees to a US$50.00 charge
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).
"Convictions are more dangerous enemies of truth than lies."
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. 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.
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.
Developers, Developers, Developers, Developers.
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.
Oh, yes! Much like .NET is cross-platform! And the Windows API!!
Oh, wait...
Have you heard about SoylentNews?
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.
Tech Public Policy stuff
/etc/grub.d/40_custom
"The likes of Facebook and WhatsApp are free to those whose privacy is of zero value."
We've been down this road before. In 2003, Intuit's Turbo Tax (for tax year 2002) pulled the same stunt, 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.
"Given the pace of technology, I propose we leave math to the machines and go play outside." -- Calvin
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?
Or how about I continue to dual-boot, and use my PC the way I want to?
> Or how about I continue to dual-boot, and use my PC the way I want to?
You know the drill. Microsoft isn't going to cooperate with that. Now it seems so of their stooges will also "help".
A Pirate and a Puritan look the same on a balance sheet.
If I'm not mistaken, Flex is required for Photoshop, Illustrator, Dreamweaver, Flash, InDesign, and After Effects. Except for After Effects, you won't find any real professional-level alternatives for any of them.
Try telling upper management that you banned your $100 an hour designers, artists, and developers from the tools they need to do their jobs, because you were worried about bootloader compatibility and proper code behaviors.
The ______ Agenda
The way most other boot loaders have done it (including the original GRUB). Put enough code in the MBR to load the rest of the code and config out of a second location. The smart ones actually use a real partition for that, though, so no one overwrites it.
> Yea, article is somewhat trollish, all three apps listed are server apps, and who the fuck would dual boot a server?
In a "grown up" OS, the server apps don't run as Administrator.
A Pirate and a Puritan look the same on a balance sheet.
"You and your grandmother likely have different definitions of "hard"."
As long as she's satisfied, I'll retain my definition.
"This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
Say no to any DRM'd shit!
This has been a problem with older versions of Dreamweaver. As part of the copy protection, it would write data to the space between the MBR and the first partition. Steve Gibson talked about it on Security Now episode 132 (circa 2008) when discussing how this issue fubar'd TrueCrypt (unless you had a recovery CD) just after it came out with its whole-disk encryption ability.
Are you implying that GRUB, which is a bootloader, and whose code is available, is writing in the boot area in an undocumented fashion?
One would presume that a bootloader is supposed to write in the boot area. One is not likely to presume a userland app in a high level OS is writing in the boot area.
Heh, funnily enough that's exactly what Windows 7 does. If you install it to an empty drive, it'll create two partitions - one small one (a couple hundred megs?) for the boot loader, and the rest for Windows itself.
Hail Eris, full of mischief...
E pluribus sanguinem
Flexlm is about as evil a piece of software I've ever seen. It only exists to punish the innocent that have actually paid for the licence and to fleece the software vendors that have paid for this bit of rubbish that is easier to circumvent than it is to use. Due to compatibility bugs I'm still running a fucking RedHat7.2 machine just to feed the other Centos5 machines a licence - so one machine doing nothing but burning electricity and handing out a licence. Running it in a VM would of course void the licence, as would one of the many simple workarounds to disable flexlm.
A later MS Windows version I had the misfortune to use had a Y2K bug in 2008! With an update our perpetual licences were marked as expired in 2000. It took two weeks to get a fix out of Macrovision.
Yeah, that's actually why most Linux distros recommend a "/boot" partition that is as simple as possible (ie ext2, not a journaling fs). Once the files are written to that partition, it stores the exact location of the executable and config files into the MBR so that it can find them.
At least that's how "GRUB 1" worked... sounds like "GRUB 2" tried to be clever and it didn't work out so well...
What about Gimp as a Photoshop replacement?
What if you want games on both? This would be especially true if you do any kind of cross-platform development.
Plus, if you share a computer with others it's often not feasible to require them to startup a VM to use Windows.
The main reason my system dual boots Windows is as a backup - if I need Linux functionality or my Windows installation is screwed up, then I can use Linux instead. Windows is still the primary OS, so dual booting is still the best choice.
Most human behaviour can be explained in terms of identity.
Virtualization is the last refuge of a horrendously mis-engineered operating system.
Contrary to the popular belief, there indeed is no God.
Or, better, don't.
Linux is not meant to run under Windows. If you want to run Windows, by all means run Windows and don't waste anyone else's time.
Contrary to the popular belief, there indeed is no God.
On my HP laptop, whenever I enter the restore partition software screen by hitting F11 on the BIOS screen, it resets the boot partition to the Windows loader.
No need to actually tell the restoration software to do anything, you can just enter it and exit straight away; it simply removes any bootloader installed automatically with no confirmation beforehand.
I actually found this "feature" useful when I wanted to remove a Linux installation gone bad, as it saved me the trouble of restoring the Windows bootloader.
Nevertheless, this is outrageous.
Sounds like it solved a lot of problems then?
"I've got more toys than Teruhisa Kitahara."
LILO put the blocks addresses of the boot file into the boot loader. Of course, this has two major problems:
1 - Every time the boot file is updated, the boot loader needed to be updated. A simple command sufficed. But this problem absolutely PAILED in the face of the second issue...
2 - The boot file was limited in size, Only a fixed number of addresses could be coded into the boot file. But, this problem was partially "fixed" by the third issue:
3 - (I did two MAJOR problems, this is a minor issue). The boot loader operates in REAL mode on the x86. As a result, the code must load under 640K. But, since the boot file is of limited size ANYWAY, this one really didn't matter so much.
Of course, since the "MBR loader" is under 1 sector (the forced jump, checksum, and primary partition areas do take space, and these are BIOS-checked), there really isn't even room for a device driver. This code is pretty much forced to work in real-mode, but that's actually a good thing -- it can make use of BIOS interrupts for the disc handling. But...
4 - The boot is limited to a BIOS reachable (disc geometry) region. That is why some OSs MUST be loaded into the first 528MB (or so, it's really been a while since I've looked at this crap, sue me if the actual is different) region.
Now, different OSs attempt to get around these limitations in different ways. A boot loader can chain to a partition-specific boot loader, which serves to "push" the issues. Some OSs (cough, DOS, cough) simply force the OS image to be contiguous and the first thing in a partition. But, users don't (generally) WANT to be bothered with these issues. Where the OS is physically resident, HOW it loads, and how to keep its size within constraints. Linux can be built with built-in drivers, minimal drivers, etc. Using many different file systems...
So, GRUB attempts to address these issues. If you think you can do better (and, from your fairly arrogant tone, I think you do think so), have at it.
Just another "Cubible(sic) Joe" 2 17 3061
After several hair-pulling incidents where Windows ate my bootloader, I changed my dual-boot configuration to two separate bootable drives. So rather than using GRUB to decide which OS I'm booting into, the BIOS stops on boot-up to ask whether I want to boot off the Western Digital or the Seagate drive.
Have you been touched by his noodly appendage?
This looks like an intentional, if misguided feature of these programs. It's not like they run as Administrator by default and mess up your stuff without any input from you.
It sounds like they just want to get rid of any code that they don't recognize as being part of the MBR. Not unreasonable if you're just running a pure Windows system, I suppose. The misguided part is assuming that anything there must be a boot-sector infector and not asking if the user is in a multiboot configuration (or better yet, checking first for legitimate alternate boot loaders.) I can't believe the developers didn't realize that something like Grub exists, but I imagine the higher-ups figured it wasn't worth the development time to do anything more sophisticated.
This is the reason why I generally multiboot from different physical drives (usually removable: you don't have to worry about anything being overwritten if you simply swap the boot drive.) It's not like hard disks are particularly expensive anymore, and if all you need is enough space to boot the OS it's not a big deal.
The higher the technology, the sharper that two-edged sword.
No CMYK, no replacement for Photoshop. Unfortunately.
Never fear, he was trying to be funny.
Although I disagree with them -- another interface is a big hit to productivity.
I agree.
Remember New Ribbon. :)
Trying not to.
The higher the technology, the sharper that two-edged sword.
Wow, it's Rip Van Winckle!
"Probably not until xorg and the linux kernel get decent 3d support for ati or nvidia. (decent meaning at least as fast the closed source drivers for a large subset of openGL and fully implements all the 3d functions of the closed source drivers.)"
The nVidia linux driver IS their closed source driver, FWIT.
And AMD have released a full 3D open source GPL compliant driver for their recent cards.
Please, go back and read some news sites from 5 years ago, they'll fill you in on what you missed while asleep.
Nouveau is the open source nvidia driver, The opensource AMD driver is much slower than the closed source fglrx ati drivers, This is slowly changing and nouveau is becoming closer to feature complete.
Progress is either happening very quickly or very slowly in this regard, depending on your perspective, from the end users point of view the stability is getting worse, as lots of slow stable code is discarded for new code that eventually will be much faster, but for the moment is the worst of all worlds. From the developer point of view, the specs are open the code is starting to work, and the features are being complete at a pretty amazing rate.
I would guess that the big event in Linux graphics is going to be when a release includes nouveau as the default and drops the NV and support for the nvidia.
What you don't seem to get is that unless there is a well documented opensource graphics subsystem, it won't be virtualized with near native speed.
Work bio at MMWD