This article is the 15th day article of Nifty Group Advent Calendar 2019. Yesterday was @ spicy_laichi's Static Duck Typing with Protocols in Python. I feel that it is difficult to maintain type safety of python, so I hope I can learn from these articles as well.
This time I will install ubuntu on my ultra notebook. The explanations of the words are very about (studying) and mixed with mistakes, so if you have any questions, please look them up yourself.
The PC used this time is ASUS X205TA.
CPU: Intel Atom Z3735F Memory: 2GB Storage: 32GB (eMMC)
It was a good substitute for me, who was a liberal arts college student at the time and was looking for a portable PC to write reports on Google Drive. However, the storage was too small to perform a major update of Windows 10, and it was troublesome to perform a clean installation every time, so I left it. This time, I will change this PC from Windows 10 to a Linux machine, revive it, and switch to a learning PC that can be taken anywhere.
First, download ubuntu18.04.3 LTS ISO file from the official website. Create a bootable USB for installation with Rufas and try to start Live with the bootable USB. However, no matter how many times I check the BIOS screen, the USB is not recognized as a bootable USB. When I searched, there was precedent for the cause and solution.
UEFI is a BIOS that supports 64-bit and GUI using a mouse as a successor to the BIOS. To be precise, it is the definition of the software interface of the OS and BIOS, but if you round it up and define it, it will be.
However, this X205TA runs on a firmware called 32bit UEFI. The basic UEFI specification is that it supports 64bit, but it seems that this is not the case with this PC. Certainly, it is useless to load Atom with 2GB of memory and 32GB of storage to support 64bit. It seems to be a specification that remains in the Ultra Notebook.
However, ubuntu 18.04.3. I prepared does not consider the specification of 32bit UEFI. In other words, the OS specifications required by UEFI did not match the OS specifications in the first place. That's why USB wasn't recognized as bootable.
Prepare a boot module for 32bit UEFI.
Already compiled module for 32bit UEFI (bootia32.efi) was released on GitHub .. Download this and copy it to
/ BOOT / EFI in the USB file you just created. As a result, USB is now recognized as bootable and Live boots.
Reference site: https://qiita.com/rapidliner00/items/1e1868e75b2e5e5ad481 Reference site: https://qiita.com/furipon308/items/ab89d022e35d40284682
Well, I tried to install it on the PC after starting Live, but it freezes on the way.
I tried to forcibly terminate it by pressing and holding the power button once and start ubuntu that was frozen during the installation, but here I get an error with an unfamiliar screen called grub rescue.
error: file '/boot/grub/i386-efi/normal.mod' not found
GNU GRUB (GRand Unified Bootloader) is a high-performance bootloader developed by the GNU Project. (From Wikipedia)
In a nutshell, it's a system like a BIOS-OS relay that boots after the BIOS boots and is used to boot Linux installed on disk. I was angry that I couldn't start it because it wasn't installed entirely.
Reference site: http://hibitche.hatenablog.jp/entry/2015/07/17/012051
As for the order, when I first installed ubuntu, the GRUB2 installation did not run because it froze before installing the GRUB2 package. However, since the installation of the kernel etc. was completed, the BIOS could recognize ubuntu, and when I tried to boot ubuntu forcibly, an error occurred because GRUB2 did not exist ... It seems that the order is.
Therefore, start ubuntu Live again and perform a clean installation. Since an error occurred, the wireless LAN settings that were originally planned to be rewritten and applied after installation should be rewritten first at the stage of starting Live.
Type the following command to enable the built-in wireless LAN. Replace small numbers by hitting tabs in a timely manner.
sudo cp /sys/firmware/efi/efivars/nvram-74b00bd9-805a-4d61-b51f-43268123d113 /lib/firmware/brcm/brcmfmac43340-sdio.txt sudo modprobe -v -r brcmfmac sudo modprobe -v brcmfmac
Add the following settings to the config file for loading the kernel module.
Edit the GRUB configuration file "/ etc / default / grub" and set the GRUB_CMDLINE_LINUX definition as follows.
If you perform a clean installation in this state, it will be completed successfully. I was able to restart successfully. One of the reasons was that the physical part of the USB wasn't working well, so I'm not sure if this rewrite really worked, but I hope it helps.
Reference site: http://whoraibo.hatenablog.com/entry/2018/09/02/130215
I'm touching ubuntu that started, but it's still heavy. I would like to reinstall the lighter package. However, by taking such a challenge, I was able to learn a little knowledge about the OS, UEFI, and kernel, so I think that the purpose of the initial learning could have been achieved a little. After all, I felt once again that there are things that I cannot learn without moving my hands. My seniors asked me, "Why don't you try Gentoo Linux installation battle?", But even ubuntu is a PC that can't be entered obediently, and the specs are too low, so how long does it take to compile? It was. I would like to learn a little more before fighting.
Thank you very much.