vBox Arch UEFI LVM安裝

Table of Contents

  1. 介紹
    1. 配置
    2. 基礎
  2. VirtualBox配置
  3. 安裝準備
    1. 基礎
    2. 分區
    3. 格式化
    4. 掛載
  4. 安裝
    1. 選擇鏡像
    2. 安裝基本系統
  5. 配置
    1. fstab
    2. chroot
    3. 一些配置
    4. lvm2
    5. 網絡配置
  6. 系統引導
  7. 整理新系統
  8. 引導界面
  9. 網絡管理
  10. 圖形界面安裝
  11. 展現
  12. 參考

介紹

配置

  • win10 x86_64
  • VirtualBox 5.2.22
  • archlinux-2018.12.01-x86_64

基礎

  1. 必須有網絡
  2. Arch Linux ISO鏡像(根據國家和地區選擇網站)
  3. vim基本操做

VirtualBox配置

  1. VirtualBox加載archLinux ISO基本操做,請參考VirtualBox fedora29 安裝。
  2. 勾選 設置->系統->啓用EFI(只針對某些操做系統)
    請確保你的系統支持
  3. 取消勾選 設置->系統->硬件時鐘使用國際標準時間(UTC)
    保持VBox和本地win10系統時間一致
    img

安裝準備

  • 當VirtualBox加載archlinux鏡像後,若以EFI啓動則顯示「Arch Linux archiso x86_64 UEFI USB
    img
  • 直接回車確認,等待片刻後,咱們以root身份登陸虛擬控制檯
    img

基礎

  1. 鍵盤佈局
    默認爲US美式鍵盤映射
  2. 驗證啓動模式php

    ls /sys/firmware/efi/efivars
    若該目錄存在則啓用了UEFI模式
  3. 鏈接到網絡
    守護進程dhcpcd已被默認啓用來探測有線網絡設備,並會嘗試鏈接html

    ping www.baidu.com
  4. 更新系統時間linux

    timedatectl set-ntp true

分區

  1. 分區工具
    fdisk最大支持2.2T,想嘗試新工具,本例使用parted分區。
    可參考的分區工具表,以下
    img
  2. 分區佈局
    和BIOS分區不一樣,UEFI分區必須有EFI系統分區,即ESP,文件系統爲fat32
    分區佈局,以下
    img
  3. 分區方案
    • 首先給/boot分區,餘下空間以LVM方式分區(採起本方案
    • 整個空間以LVM方式分區
    • 100G空間分區佈局shell

      | 分區  | 大小 | 格式  |
      |-------+------+-------|
      | /boot | 548M | FAT32 |
      | /     | 32G  | ext4  |
      | swap  | 4G   | swap  |
      | /home | rest | ext4  |
  4. 初次分區操做
    • 所用parted指令如表vim

      指令 功能 備註
      parted /dev/sdX 操做sdX磁盤 X表示磁盤編號a、b、…
      p 查看分區相關信息 print指令縮寫
      rm number 刪除分區編號 number分區編號
      mklabel gpt 建立gpt分區表  
      mkpart primary 1 548 建立500M的主分區 單位爲MB
      set 1 boot on 將編號1分區設置爲boot分區  
    • 使用gpt分區表
      此處parted能夠指定/dev/sdabash

      parted
      p
      mklabel gpt
      p
      img
    • 分區
      分紅兩個分區,其中一個將做爲boot分區,另外一個進一步以LVM方式分區網絡

      mkpart primary 1 548
      mkpart primary 548 -1
      p
      img
    • 設置分區編號1 Flags爲ESP或boot分區app

      set 1 boot on
      p
      img
    • 設置分區編號2 Flags爲LVM
      退出parted使用cfdisk工具設置分區
      img
  5. LVM分區操做
    • 查看blktcp

      lsblk
      img
    • 建立物理卷
      因爲初次分區只有兩個分區,只有編號2分區採用LVM分區方案,故在/dev/sda2創建物理卷ide

      pvcreate /dev/sda2
    • 創建卷組
      將物理卷sda2加入到新建卷組arch中

      vgcreate arch /dev/sda2
    • 創建邏輯卷
      在arch卷組中創建root、home和swap邏輯卷

      lvcreate -L 32G arch -n root
      lvcreate -L 4G arch -n swap
      lvcreate -l +100%FREE arch -n home

      img

格式化

  1. esp格式化

    mkfs.vfat -F32 /dev/sda1
  2. lvm分區的格式化

    mkfs.ext4 /dev/mapper/arch-root
    mkfs.ext4 /dev/mapper/arch-home
    mkswap /dev/mapper/arch-swap

    img
    用"fdisk -l"指令查看分區狀況

掛載

  1. lvm分區掛載
    • 首先必須掛載根分區,而後才能掛載其它分區(包括boot分區)

      mount /dev/mapper/arch-root /mnt
      mkdir /mnt/home
      mount /dev/mapper/arch-home /mnt/home
    • swap交換分區無需掛載

      swapon /dev/mapper/arch-swap
    • 找不到/dev/mapper/arch-?邏輯卷 ,可試一下

      modprobe dm_mod
      vgscan
      vgchange -ay
  2. esp分區掛載

    mkdir -p /mnt/boot/efi
    mount /dev/sda1 /mnt/boot/efi
    img
  3. 確認是否已掛載

    df -h

    img

安裝

選擇鏡像

  1. 將china相關放在前面

    vim /etc/pacman.d/mirrorlist
    img
  2. 確保網絡正常

安裝基本系統

pacstrap -i /mnt base base-devel

可按需選擇安裝程序,等待一會便可完成

配置

fstab

  1. 創建fstab

    genfstab -U /mnt >> /mnt/etc/fstab
  2. 檢查/mnt/etc/fstab是否正確
    主要檢查blkid命令顯示分區UUID是否和fstab文件一致

chroot

arch-chroot /mnt

進入剛剛安裝的系統

一些配置

  1. 時區

    # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    調整時間漂移

    # hwclock --systohc --utc
  2. 本地化
    • 因爲新系統只安裝了vi,故

      # vi /etc/locale.gen
    • 取消註釋

      en_US.UTF-8 UTF-8
      zh_CN.UTF-8 UTF-8
    • 生成本地化文件

      # locale-gen
  3. 設置主機名

    # echo naruto > /etc/hostname
  4. root密碼

    # passwd

lvm2

  1. 因爲使用了LVM,故須要在系統啓動時中增長lvm2模塊
    編輯/etc/mkinitcpio.conf
    找到相似

    HOOKS="base udev autodetect modconf block filesystems keyboard fsck"

    修改成

    HOOKS="base udev autodetect modconf block lvm2 filesystems keyboard fsck"
  2. 修改mkinitcpio.conf文件後須要從新生成archlinux鏡像

    # mkinitcpio -p linux

    若WARNING所示模塊未安裝,則可忽略WARNING

網絡配置

開啓有線網絡

systemctl enable dhcpcd

系統引導

  1. 安裝引導程序grub和efi管理工具

    pacman -S grub efibootmgr --noconfirm
  2. 安裝引導

    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
    • 會有問題,必須解決,不然沒法生成引導文件,期待下個版本解決

      WARNING: Failed to connect to lvmetad. Falling back to device scanning.
      WARNING: Device /dev/loop0 not initialized in udev database even after
               waiting 10000000 microseconds
      ...
    • 解決方案
      • ctrl+D退出chroot環境
      • 操做以下

        # mkdir /mnt/hostlvm
        # mount --bind /run/lvm /mnt/hostlvm
        # arch-chroot /mnt
        # ln -s /hostlvm /run/lvm
        img
  3. 生成引導配置

    # grub-mkconfig -o /boot/grub/grub.cfg

    img

整理新系統

  1. 退出chroot環境
  2. 卸載被掛載的分區

    # umount -R /mnt
  3. 重啓系統

    # reboot
  4. 增長新帳戶
    • 增長普通帳戶

      useradd -m -g users -s /bin/bash naruto
      passwd naruto
    • 增長sudo用戶屬性

      chmod u+w /etc/sudoers
      echo 'naruto ALL=(ALL) ALL' >> /etc/sudoers
  5. 刪除ISO文件
    • 關機

      shutdown -h now
    • 刪除「設置->存儲->控制器:IDE」
      img

引導界面

  1. 開機界面爲UEFI Interactive Shell
    img
  2. 三種解決方案
    • 每次開機從shell中手動啓動bootloader

      \EFI\grub\grubx64.efi
    • 把bootloader移到默認的路徑/EFI/BOOT/BOOTX64.EFI
      實際上能夠把「EFI/grub/grubx64.efi」按照默認的方式拷貝,推薦
      img
    • 在ESP根目錄建立一個startup.nsh腳本,添加內容爲

      \EFI\grub\grubx64.efi

網絡管理

  1. 安裝過程確認網絡保持暢通
  2. 安裝網絡管理

    # pacman -Syu networkmanager

圖形界面安裝

  1. 須要支持X
    • 查看顯卡類型

      # lspci | grep -e VGA -e 3D
    • 查看開源驅動

      # pacman -Ss xf86-video
    • 通用顯卡

      # pacman -S xf86-video-vesa

      然而以上都不須要

    • 虛擬機的顯卡須要虛擬機支持

      # pacman -S virtualbox-guest-utils
      選擇默認Linux內核
         2)virtualbox-guest-modules-arch
      或者從virtualBox選項 設備->安裝加強功能 添加
  2. X窗口管理系統

    # pacman -S xorg-server xorg-xinit xorg-twm xorg-xclock xterm

    測試xorg

    # startx
  3. 桌面環境

    # pacman -S lxqt

    選裝

    # pacman -S oxygen-icons kwin   圖標和kwin桌面,原生openbox很差看
    
    # pacman -S xscreensaver        屏幕保護
    
    # pacman -S numlockx            小鍵盤
    # numlockx on
  4. 窗口管理器
    lxqt建議使用sddm

    # pacman -S sddm
    # systemctl enable sddm.service
    # systemctl start sddm.service
  5. 安裝字體

    # pacman -S wqy-zenhei wqy-microhei ttf-dejavu
  6. 安裝輸入法

    # pacman fcitx fcitx-im fcitx-configtool

    設置環境變量,需在/etc/environment添加

    export GTK_IM_MODULE=fcitx
    export QT_IM_MODULE=fcitx
    export XMODIFIERS="@im=fcitx"
    重啓X桌面
  7. 聲音
    我不須要
  8. 應用程序安裝
    例如

    # pacman -S firefox

展現

  • 只裝了Firefox和kwin的效果圖
  • 終端調整了下設置
  • 不少細節未調整,此外這個lxqt桌面自我感受很差用

img

參考

  1. 安裝指南:https://wiki.archlinux.org/index.php/Installation_guide_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
  2. 分區:https://wiki.archlinux.org/index.php/Partitioning_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
  3. LVM:https://wiki.archlinux.org/index.php/LVM#Configure_mkinitcpio
  4. VirtualBox:https://wiki.archlinux.org/index.php/VirtualBox#Installation_in_EFI_mode
相關文章
相關標籤/搜索