The laptops at my work are all shared, so I regularly switch between different laptops of the same model. I run Ubuntu on an external USB drive, so that I can use Ubuntu without installing or altering my work's computers in any way. I also run the same Ubuntu harddrive on my computer at home.

My work however has introduced new laptops, and I'm having trouble loading Ubuntu on the new system. I suspected that it may have to do with the CPU firmware. Using the old laptops, I did a fresh install of Ubuntu onto my USB drive, and installed intel microcodes via "sudo apt-get install intel-microcode".

Will the intel microcode update the firmware specific to the computer that I was using at the time of installation, and will this cause problems when I load my Ubuntu external drive on other different computers that have different CPUs?

  • I suggest that you try with a USB 3 pendrive (with at least 16 GB). In general, proprietary drivers are discouraged for systems that should be portable; I don't know in this particular case, and I think it is easy to test. – sudodus Feb 5 at 12:47

You have to turn "protect-mode" off in the BIOS for new PCs. I suggest you build a DOS7-freedos USB stick to back up your PC's full-ROM firmware. You can get ROM-utility from your MB supplier or use xbios320_ubcd (Ultimate boot CD kit) to restore the BIOS incase your USB-linux installs some ugly microcode on your co-workers PC. Ubuntu16.04+ automatically installs intel/amd64 ucode-updates that trash AMD-A12/K1 BIOS. It's the same thing as a bios-attack from your USB-stick. There's no protection from it because you have to disable 'protect-mode' to boot into linux. However, one saving grace about new laptops they often have a bios cache for making a copy/mirror of the bios settings. Do that first. I found a pretty useful article on Intel bios-scripting using 'developer-mode' that allows you to set the Set Boot Options (GBB Flags) using (GBB_FLAG_FORCE_DEV_BOOT_LEGACY). See more info about using dual-boot scripts like iPXe or chRX for booting into GalliumOS/ChromeOS google 'MrChromebox.tech.' If for some reason your linux-distro locks out users you can always replace the Stock-ROM with a more user friendly version. A good guide to restoring BIOS is found on how2geek.com from there you can get details about Intel-stock-ROMs. Personally, I wouldn't disable 'protect-mode' in a production environment. Using USBs to boot laptops is dangerous cos you will ultimately get a 'root-kit' from someone using a demo-USB that someone picked up at a conference then tried it on their laptop.

On your first question: No.

Background: Intel Microcode are patches to the BIOS of your computer. A regular update of your BIOS would also apply these patches. In this "traditional" way of updating micro-code, the actual ROM of the bios chip is updated with new code. Thus, any operating system will run on a system where the BIOS is updated.

With microcode, these updates are applied in the linux operating system, each time you boot up your computer. The processor microcode here is stored in RAM. Thus, your linux installation will run on a system where the BIOS is updated. Other operating systems not if they do not also have their mechanism on dynamically updating the BIOS code when they boot.

On your second question: again no.

The Linux kernel is dynamic, and sees where it is being started. Microcode updates will be adapted to the CPU present. If another processor than an Intel processor is present, the Intel Microcode will not be applied.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.