2023年12月30日 星期六

於Acer的AspireSwitch10上安裝Slackware 15.0

因為覺得Win10對這台筆電來說系統太大了

決定換裝成Linux,只是選用Slackware 15.0來裝

只是這個筆電僅支援EFI 開機,而且還要用32位元的EFI

 所以得先去下載bootia32.efi檔

下載後於隨身碟中建立資料夾/EFI/BOOT

然後再將slackware64-15.0的光碟影像檔中的資料複製到另一個隨身碟或分割區中

並將檔案放入後即可開機

開機後會進到grub的維修模式 

 首先要先找到slackware的隨身碟或分割區

用ls 

 

此時依照可能的位置去找

ls (cd0)/


 此時輸入

set root=(cd0)

linux /EFI/BOOT/huge.s

initrd /EFI/BOOT/initrd.img 

 

然後開機

輸入boot

這樣就可以正常進入開機程序

主要需要注意的是,在分割硬碟時不可以使用GPT的格式,而是選用dos格式,如下

 

 這邊我是先分割好硬碟再進入安裝程序

安裝程序依照slackware的安裝步驟

但是安裝完成後重開後發生EFI進不去的狀況

只好用一開始做好的EFI來開機

輸入 set root(hd0,msdos1)

linux /EFI/Slackware/vmlinuz root=/dev/mmcblk1p3

initrd /EFI/Slackware/initrd.gz

boot

開機,但會在mount /時出錯

覺得是因為使用mmc的關係,少掛載了關於mmc的模組

這個時候我另外一台主機上重建initrd.gz 

利用 mkinitrd

mkinitrd -c -k 5.15.145 -f ext4 -r /dev/sda2 -m \
intel_soc_dts_thermal:intel_soc_dts_iosf:\intel_powerclamp:coretemp:kvm_intel:kvm:spi_nor:irqbypass:r8723bs:\mtd:crct10dif_pclmul:crc32_pclmul:libarc4:polyval_generic:iTCO_wdt:gf128mul:\spi_intel_platform:mei_pxp:mei_hdcp:ghash_clmulni_intel:intel_pmc_bxt:spi_intel:\iTCO_vendor_support:gpio_keys:mmc_block:cfg80211:sha512_ssse3:intel_rapl_msr:\i915:aesni_intel:hci_uart:crypto_simd:ak8975:cryptd:btqca:intel_cstate:acer_wmi:btrtl:\drm_buddy:intel_bytcrc_pwrsrc:i2c_algo_bit:sparse_keymap:btbcm:i8042:\

int3401_thermal:ttm:mei_txe:btintel:vfat:processor_thermal_device:fat:\

serio:wmi_bmof:mei:lpc_ich:processor_thermal_rfim:drm_display_helper:\

inv_mpu6050_i2c:bluetooth:cec:inv_mpu6050:intel_gtt:processor_thermal_mbox:\

industrialio_triggered_buffer:ac97_bus:processor_thermal_rapl:soc_button_array:\

dptf_power:dw_dmac:mousedev:kfifo_buf:joydev:int3406_thermal:cm32181:\

mac_hid:ecdh_generic:int3400_thermal:int3403_thermal:intel_rapl_common:\

acpi_thermal_rel:int340x_thermal_zone:intel_int0002_vgpio:acpi_pad:rfkill:\

i2c_mux:sdhci_acpi:industrialio:i2c_hid_acpi:sdhci:mmc_core:i2c_hid:8250_dw:\

hid_multitouch:hid_ite:loop:fuse:dm_mod:bpf_preload:ip_tables:x_tables:ext4:\

crc32c_generic:crc16:mbcache:jbd2:uas:usb_storage:crc32c_intel:\

xhci_pci:xhci_pci_renesas:video:wmi:usbhid -u -o /boot/initrd.gz

然後將vmlinuz跟重建好的initrd.gz都放進可以開機的隨身碟中

重新開機再進grub的維修模式中輸入

set root(hd0,msdos1)

linux /EFI/Slackware/vmlinuz root=/dev/mmcblk1p3

initrd /EFI/Slackware/initrd.gz

boot

此時就可以正常開機

目前只能這樣才能正常開機,不知道為什麼無法從他的固態硬碟中開機