小米Air 13.3 安裝Arch Linux

来源:http://www.cnblogs.com/fatshen/archive/2017/10/06/7631371.html
-Advertisement-
Play Games

0. 前言 最近新買了一臺小米Air 13.3,除了但鍵盤手感外都比較滿意。我比較喜歡折騰Linux,但又不想放棄原有的Windows 10 Home,於是在原有的windows 10基礎上再安裝了Arch Linux,實現雙系統。本文為安裝過程簡介。由於安裝過程有的地方漏了截圖,這些地方直接使用了 ...


0. 前言

最近新買了一臺小米Air 13.3,除了但鍵盤手感外都比較滿意。我比較喜歡折騰Linux,但又不想放棄原有的Windows 10 Home,於是在原有的windows 10基礎上再安裝了Arch Linux,實現雙系統。本文為安裝過程簡介。由於安裝過程有的地方漏了截圖,這些地方直接使用了參考網站的圖片,忘見諒。實際安裝過程與單獨安裝Arch Linux的過程類似,唯一需要註意的是對EFI分區的處理。

1. 參考網站

安裝Win10+Ubuntu16.04 LTS 雙系統

Archlinux安裝和使用技巧

Installation guide (簡體中文)

Wireless network configuration (簡體中文)

WPA supplicant (簡體中文)

Dual boot with Windows (簡體中文)

GRUB (簡體中文)

Dual Boot Installation of Arch Linux with Preinstalled Windows 10 with Encryption

2. 安裝前準備工作

2.1 下載.iso並製作U盤啟動盤

Arch Linux Downloads中下載最新的ios文件,我是在macOS下通過dd方式把iso寫進U盤中作為啟動盤的。

dd if=archlinux-2017.10.01-x86_64.iso of=/dev/sdb

archlinux-2017.10.01-x86_64.iso為你下載的iso文件,/dev/sdb則表示你的U盤。

2.2 硬碟分區

桌面電腦圖標上右鍵 -> 管理 -> 存儲 -> 磁碟管理。

磁碟0 -> OS(C:)上右鍵壓縮捲 -> 選擇合適大小,壓縮完成後就退出,保持未分區狀態,不要格式化,不要分配盤符,我分配了80G給Arch Linux,並且不預留swap空間。

2.3 關閉快速啟動

設置 -> 系統 -> 電池與睡眠 -> 其他電源設置 -> 選擇電源按鈕的功能 -> 先選擇更改當前不可用的設置,才能關閉啟用快速啟動。

2.4 關閉Secure Boot

進入BIOS: 重啟電腦,在MI出現後馬上按F2(可以多按幾次,也可以在還是黑屏時就開始按)。

Security -> Set Supervisor Password(必須設置,否則下麵的Secure Boot無法更改)。

Security -> Secure Boot -> 更改為Disabled。

Boot -> Boot Type -> UEFI(這是預設值,過來看一下就可以,不需要改)。

最後F10後回車,會保存更改後直接重啟。

3. 開始安裝

3.1 進入U盤

同進入BIOS類似,在上面重啟後出現MI時按F12,進入選擇菜單,選擇你的U盤就可以了,這時候選擇第一項(預設也是第一項),即可以進入U盤中的Linux系統。

3.2 連接無線網路

Arch Linux安裝需要連接網路,通過U盤進入的系統預設沒有網路連接。

iw dev #查看設備名,比如我的為wlp2s0
ip link set wlp2s0 up #啟用設備
iw dev wlp2s0 scan | grep SSID #獲取可用無線網路的SSID
wpa_passphrase MYSSID PASSWORD > wpa.conf #生成連接到MYSSID的配置文件,PASSWORD為對應的密碼
wpa_supplicant -B -i wlp2s0 -c < wpa_conf #使用上一步生成的配置文件連接到無線網路
dhcpcd wlp2s0 #自動獲取IP地址

使用最新版的arch ios不會有驅動問題,直接經過上述幾步即可接連到無線網路。

3.3安裝系統

3.3.1 分區處理

用fdisk查看分區情況:

fdisk -l

如圖可以看到/dev/nvme0n1p1為EFI分區,/dev/nvme0n1p4為準備安裝arch的分區。

將/dev/nvme0n1p4格式化為ext4,並將其掛載在/mnt:

mkfs.ext4 /dev/nvme0n1p4
mount /dev/nvme0n1p4 /mnt

3.3.1 修改源配置

在/etc/pacman.conf最後添加下麵一段,可以用vi編輯該文件,#vi /etc/pacman.conf。

[archlinuxcn]
#The Chinese Arch Linux communities packages
SigLevel = Optional TrustAll
Server = http://repo.archlinuxcn.org/$arch

將/etc/pacman.d/mirrorlist中將China的源註釋去除,若原本就沒有註釋就不用理會。

3.3.2 更新源

pacman -Syy

3.3.3 安裝基本系統

pacstrap /mnt base base-devel

接下來耐心等待。

3.3.4 掛載EFI,生成fstab

mkdir -p /mnt/boot/efi
mount /dev/nvmen0p1 /mnt/boot/efi
genfstab -U -p /mnt >> /mnt/etc/fstab

4. 安裝完設置

4.1 轉回主目錄

arch-chroot /mnt /bin/bash

4.2 設置語言環境

vi /etc/locale.conf #添加一行LANG=en_US.UTF-8
vi /etc/locale.gen #把en_US.UTF-8 UTf-8,zh_CN.GBK GBK,zh_CN.UTF-8 UTF-8,zh_CN GB2312前面的註釋去掉
locale-gen #更新語言環境

4.3 設置時間

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc --utc 

4.4 設置主機名和密碼

vi /etc/hostname #添加主機名,我添加的是arch
passwd #添加root用戶的密碼

4.5 安裝一些net工具

pacman -S net-tools dnsutils inetutils iproute2

5. GRUB安裝與配置

5.1 GRUB安裝

pacman -S grub efibootmgr os-prober

5.2 安裝GRUB到EFI

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub

由於小米預裝的windows 10中已經有EFI分區,所以只需要把grub安裝在EFI分區中即可。/boot/efi即為在3.3.4中掛載的EFI分區。

5.3 生成配置文件

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

這個時候重啟,只能看到grub中有arch的引導,沒有windows 10的引導,還需要重啟完成進入系統後,執行5.4。

5.4 引導windows 10

os-prober
grub-mkconfig -o /boot/grub/grub.

再次重啟就可以看到windows 10的引導。

本文完。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. CUDA Toolkit的安裝 到https://developer.nvidia.com/cuda-gpus查詢GPU支持的CUDA版本: 到https://developer.nvidia.com/cuda-downloads,根據操作系統選擇下載相應的CUDA Toolkit版本,下載的 ...
  • 通過SSMS設置主鍵外鍵,使用SQL語句分別在建表中和建表後設置主鍵外鍵 ...
  • 0.目錄 1. "前言" 2. "建立資料庫" 2.1 "通過SSMS建立資料庫" 2.2 "通過SQL語句建立資料庫" 3. "建立表" 3.1 "通過SSMS建立表" 3.2 "通過SQL語句建立表" 1.前言 配置是win10+SQL Server 2012,使用的GUI管理工具是SQL Se ...
  • 說明 本文寫於2017 10 03,使用MySQL 5.7,操作系統為64位 Debian GNU/Linux 8.6 (jessie)。 安裝 因apt倉庫將mysql相關的包移除,需要自己去官網下載之,以及相關的依賴包。 在安裝mysql community server時,會提示輸入MySQL ...
  • 一、基本的sql語句 CRUD操作:create 創建(添加)read 讀取update 修改delete 刪除1、添加數據insert into Info values('p009','張三',1,'n001','2016-8-30 12:9:8') ; 給特定的列添加數據insert into ...
  • httpd使用VirtualHost指令進行虛擬主機的定義。支持三種虛擬主機:基於ip,基於埠和基於名稱。其中基於埠的虛擬主機在httpd的術語上(例如官方手冊)也屬於基於IP的。 當一個請求到達時,將首先匹配虛擬主機。匹配虛擬主機的規則為最佳匹配法。所謂最佳,是指通配的越少,匹配的優先順序越高。 ...
  • 特別在對文件進行執行時,要特別註意做好判斷 -r 文件可以被有效的UID/GID讀取。 -w 文件可以被有效的UID/GID寫入。 -x 文件可以被有效的UID/GID執行。 -o 文件被有效UID所有 -R 文件可以被真實的UID/GID讀取。 -W 文件可以被真實的UID/GID寫入。 -X 文 ...
  • CentOS7 +vsftpd (一)之 匿名 ftp的搭建是一個基礎性的工作,CentOS7 +vsftpd 是一個比較容易實現的平臺,但在搭建中問題會不少,本系列將通過四篇隨筆與大家分享。 一、CentOS7 1、實驗環境為:VMware Workstation Pro +CentOS 7 64 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...