archLinux虛擬機安裝

来源:https://www.cnblogs.com/333czh/archive/2023/03/29/17267992.html
-Advertisement-
Play Games

參考:(25條消息) 虛擬機安裝Arch Linux_虛擬機安裝archlinux_追光少年羽的博客-CSDN博客 準備工作 在開始安裝 Arch Linux 之前,需要先下載安裝映像文件並創建好虛擬機環境。 下載安裝鏡像 下麵是 Arch Linux 官方的安裝文件下載地址: Arch Linux ...


參考:(25條消息) 虛擬機安裝Arch Linux_虛擬機安裝archlinux_追光少年羽的博客-CSDN博客

準備工作

在開始安裝 Arch Linux 之前,需要先下載安裝映像文件並創建好虛擬機環境。

下載安裝鏡像

下麵是 Arch Linux 官方的安裝文件下載地址:

Arch Linux - DownloadsArch Linux 安裝映像下載地址。

點擊並打開這個頁面後,可以看到目前 Arch Linux 最新的版本和下載包的文件信息。往下翻頁,在頁面下方有各個國家可用的下載加速鏡像。

選擇距離自己所在位置最近的加速鏡像可以有效提升安裝包的下載速度,我們找到 "China",然後選擇其中一個任意可用的加速鏡像地址,比如 163.com。

點擊鏡像鏈接後,就會打開一個類似文件列表的頁面,我們選擇 iso 尾碼的那個文件,直接點擊文件名稱進行下載操作。

 

 創建虛擬機

在VMWARE中創建虛擬機,(選擇“稍後選擇操作系統”和“其他Linux5. 64位),其他配置按需設置.

創建完成後把上面下載的ISO文件裝入虛擬機

安裝 Arch Linux

啟動虛擬機,一切操作正常的話,開機後會看到如下畫面:

 

  通過上下方向鍵可以自由選擇相關的菜單。選擇第一項“Arch Linux Install medium (x86_64, BIOS)“,按回車鍵確認,進入 Arch Linux 的安裝環境。

 

 

磁碟分區

開始正式安裝系統前,需要先對硬碟做分區操作。這需要指定可操作的硬碟,可以通過以下命令來確定當前系統有哪些可用的硬碟設備:

fdisk -l
 

命令會反回類似如下的輸出結果:

 

 

 其中 /dev/sda 就是一個可用的硬碟設備。記下這個名稱,等下分區時會用的上。在正式開始分區前,需要先確定好分區規劃。

對於正式使用的場景,我會建議你多參考一些 Linux 分區方案,可以使日後在磁碟的利用方面更加妥當。不過對於本文僅做體驗的場景,我自己的方案如下:

  • 一個交換分區,大小為 2 GiB。
  • 最後所有的空間都留給根分區。
  • 總大下就是你分配的硬碟空間大小(如:我一共分配20G給這個虛擬機,2G給交換分區,所以剩下18G的都是根分區)
  • 20G分配2G後,根分區分配18G時報錯就分配17G

有了分區方案,輸入以下命令開始分區操作:

fdisk /dev/sda

 

命令執行後,會進入如下界面:

 

 

 

 這就是 fdisk 提供的分區操作界面了,通過如下操作來創建一個 2 GiB 的交換分區:

  1. 輸入 n 新建分區。
  2. 輸入 p 新建主分區。
  3. 分區編號輸入 1
  4. 開始扇區不用輸入,直接回車鍵進入下一項。
  5. 結束扇區輸入 +2G

然後用同樣的流程完成主分區的創建。這一步的分區號為 2,後面的扇區輸入都保持空,然後直接回車鍵就可以了,程式會自動分配剩餘的所有空間。

  1. 輸入 n 新建分區。
  2. 輸入 p 新建主分區。
  3. 分區編號輸入 2。
  4. 開始扇區不用輸入,直接回車鍵進入下一項。
  5. 結束扇區輸入 +17G

以上操作完成後,輸入 w 寫入分區信息(我輸入w就報錯,fdisk -l查看發現配置已經寫進去,應該是預設自動寫入)。

然後再次輸入 fdisk -l 命令,會發現輸出信息中多瞭如下內容:

 

 

 

 這說明分區操作成功了。

格式化分區

硬碟分區後,還需要做格式化操作。Linux 針對不同的分區類型,提供了有不同的格式化命令。首先來格式化交換分區:

mkswap /dev/sda1

 

主分區使用 ext4 格式的分區:

mkfs.ext4 /dev/sda2

 

掛載分區

完成分區格式化後,接下來需要掛載分區。首先掛載根分區:

mount /dev/sda2 /mnt

 

然後啟用交換分區:

swapon /dev/sda1

 

安裝系統

完成了以上磁碟操作步驟,就可以正式開始安裝 Arch Linux 系統了。不過開始之前,為了提升安裝包的下載速度,可以通過以下命令自動更新並保存 5 個速度最快的軟體包鏡像加速地址:

  1. reflector \ 
  2. --save /etc/pacman.d/mirrorlist \ 
  3. --country China \
  4. --protocol https \
  5. --latest 5(這項參數我感覺和版本有關,我沒有輸入,安裝時還是挺快的)

然後安裝基礎軟體包,Linux 內核,常見硬體的固件和常用軟體工具:

pacstrap /mnt base linux linux-firmware vim sudo

 

等待安裝完成。

結束後,生成新的自動掛載文件,並寫入到新安裝的系統:

genfstab -U /mnt >> /mnt/etc/fstab

 

然後進入到新安裝的系統:

arch-chroot /mnt

 

接下來,將開始對新系統做配置操作。

配置 Arch Linux

配置網路

安裝網路 DHCP 動態 IP 軟體包和網路管理軟體包:

pacman -S dhcpcd networkmanager

輸入此代碼會出現安裝選項,輸入 Y  後回車

啟用相關服務:

  1.   systemctl enable dhcpcd
  2.   systemctl enable NetworkManager

配置時區

Arch Linux 預設為 UTC 時區,調整為國內時區使用下麵的命令:

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

 

配置本地字元編碼

  • 編輯 /etc/locale.gen 文件,取消 en_US.UTF-8 UTF-8 這一行前的註釋信息。
  • 執行 locale-gen 命令生成本地字元集信息。
  • 創建 /etc/locale.conf 文件,內容為:LANG=en_US.UTF-8

使用 en_US.UTF-8 而不使用中文字元編碼的原因是為了避免系統輸出無法顯示的中文信息,以方便排查問題。

此過程代碼

//編輯編輯 /etc/locale.gen 文件
vim /etc/locale.gen

//執行 locale-gen 命令生成本地字元集信息
locale-gen

//創建 /etc/locale.conf 文件
touch /etc/locale.conf
//編輯 /etc/locale.conf
vim /etc/locale.conf
//內容
LANG=en_US.UTF-8

 

配置用戶

設置 root 賬號密碼:

passwd

添加新的普通用戶,並加入到 wheel 用戶組,以方便使用 sudo 命令來執行一些需要超級用戶許可權的操作:

useradd -m -G wheel -s /bin/bash zzxworld

最後面的 zzxworld 是新用戶名稱,需要自己定義。

編輯 /etc/sudoers 文件,移除 # %wheel ALL=(ALL) ALL 這一行前的井號,使 wheel 用戶組的用戶都可以正常執行 sudo 命令。

vim /etc/sudoers

退出時需要加入!
:wq!

 

給新用戶設置密碼:

passwd zzxworld

再次提示:最後面的 zzxworld 是上面創建的新用戶名稱,請替換成自己的。

 

配置系統引導程式

安裝 GRUB 啟動載入器:

pacman -S grub

//回車後有 Y 確認

安裝 GRUB 引導信息至指定的硬碟:

grub-install --recheck /dev/sda

生成並寫入 GRUB 配置信息:

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

登錄新系統

完成以上步驟後,Arch Linux 的基礎安裝工作就完成了,可以嘗試退出安裝環境併進入新系統。

首先輸入以下命令退出 chroot 環境:

exit

然後卸載之前掛載的分區:

umount -R /mnt

把掛載的安裝鏡像文件取消,然後重新啟動系統。正常的話,應該會看到新的啟動選項選擇界

 直接按回車鍵,就可以進入新安裝的 Arch Linux 系統了。

 

這裡需要註意新安裝的archlinux沒有桌面環境以及視窗管理,這些需要自己安裝

 


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

-Advertisement-
Play Games
更多相關文章
  • (最近有讀者朋友表示,希望能加一些示意圖來描述分析過程中用到的原理知識。好的,之後我會註意,謝謝這位讀者) 背景 有位朋友找我,希望我能幫看一下他的一個service。從他的描述看,並沒有資源方面的泄漏,程式目前也能正常工作。他是在用dotnet-counters moniter時發現gc2、也就是 ...
  • 1、簡介 cron是一個在後臺運行調度的守護進程,而crontab是一個設置cron的工具。cron調度的是/etc/crontab文件。 2、centos安裝crontab yum install crontabs 3、crontab的配置文件 Linux下的任務調度分為兩類:系統任務調度和用戶任 ...
  • 大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是恩智浦經典LPC系列MCU內部Flash IAP驅動。 LPC 系列 MCU 是恩智浦公司於 2003 年開始推出的非常具有代表性的產品,距今已經有近 20 年的生命。按時間線演進來說,其主要分為三代: - 元老:基於 ARM7/9 內 ...
  • CPU包含運算器、寄存器 一、數據寄存器: AX用於算術、邏輯運算、外設傳送信息 BX用於存放存儲器地址 CX用於移位指令、迴圈和串處理指令中用作隱含的計數器 DX用於存放雙字的高十六位 其中AX、CX、DX不能作為基址和變址儲存器來存儲定址 二、變址寄存器 ESI、EDI、SI、DI稱為變址寄存器 ...
  • 安裝參考: 在 Arch Linux 中安裝和配置 KDE Plasma 桌面 - Linux迷 (linuxmi.com) (1) (25條消息) archlinux安裝kde桌面和sddm登錄管理器_kde登錄管理器_shier_smile的博客-CSDN博客 (2) 我的安裝過程(結合兩個參考 ...
  • 使用雲伺服器 Ubuntu20.04 LTS 1.安裝docker # 輸入docker提示docker安裝語句 apt install docker.io # 從Docker Hub中拉取最新項目鏡像 docker pull b3log/solo 2.安裝mysql # 使用以下命令將安裝mysq ...
  • PHP(PHP: Hypertext Preprocessor)即“超文本預處理器”,是在伺服器端執行的腳本語言,尤其適用於Web開發並可嵌入HTML中。PHP語法學習了C語言,吸納Java和Perl多個語言的特色發展出自己的特色語法,並根據它們的長項持續改進提升自己,例如java的面向對象編程,該... ...
  • 本文收集了170多個windows11上的快捷鍵,其中有少部分是windows11新添加的。大部分的win10快捷鍵也適用於win11。這些快捷鍵涵蓋了系統設置、命令行程式執行、Snap佈局切換、對話框快速處理等諸多方面,這裡收錄的是這些分類中最常用的快捷鍵。 編寫博文的過程中,我已驗證了其中90% ...
一周排行
    -Advertisement-
    Play Games
  • Dapr Outbox 是1.12中的功能。 本文只介紹Dapr Outbox 執行流程,Dapr Outbox基本用法請閱讀官方文檔 。本文中appID=order-processor,topic=orders 本文前提知識:熟悉Dapr狀態管理、Dapr發佈訂閱和Outbox 模式。 Outbo ...
  • 引言 在前幾章我們深度講解了單元測試和集成測試的基礎知識,這一章我們來講解一下代碼覆蓋率,代碼覆蓋率是單元測試運行的度量值,覆蓋率通常以百分比表示,用於衡量代碼被測試覆蓋的程度,幫助開發人員評估測試用例的質量和代碼的健壯性。常見的覆蓋率包括語句覆蓋率(Line Coverage)、分支覆蓋率(Bra ...
  • 前言 本文介紹瞭如何使用S7.NET庫實現對西門子PLC DB塊數據的讀寫,記錄了使用電腦模擬,模擬PLC,自至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1.Windows環境下鏈路層網路訪問的行業標準工具(WinPcap_4_1_3.exe)下載鏈接:http ...
  • 從依賴倒置原則(Dependency Inversion Principle, DIP)到控制反轉(Inversion of Control, IoC)再到依賴註入(Dependency Injection, DI)的演進過程,我們可以理解為一種逐步抽象和解耦的設計思想。這種思想在C#等面向對象的編 ...
  • 關於Python中的私有屬性和私有方法 Python對於類的成員沒有嚴格的訪問控制限制,這與其他面相對對象語言有區別。關於私有屬性和私有方法,有如下要點: 1、通常我們約定,兩個下劃線開頭的屬性是私有的(private)。其他為公共的(public); 2、類內部可以訪問私有屬性(方法); 3、類外 ...
  • C++ 訪問說明符 訪問說明符是 C++ 中控制類成員(屬性和方法)可訪問性的關鍵字。它們用於封裝類數據並保護其免受意外修改或濫用。 三種訪問說明符: public:允許從類外部的任何地方訪問成員。 private:僅允許在類內部訪問成員。 protected:允許在類內部及其派生類中訪問成員。 示 ...
  • 寫這個隨筆說一下C++的static_cast和dynamic_cast用在子類與父類的指針轉換時的一些事宜。首先,【static_cast,dynamic_cast】【父類指針,子類指針】,兩兩一組,共有4種組合:用 static_cast 父類轉子類、用 static_cast 子類轉父類、使用 ...
  • /******************************************************************************************************** * * * 設計雙向鏈表的介面 * * * * Copyright (c) 2023-2 ...
  • 相信接觸過spring做開發的小伙伴們一定使用過@ComponentScan註解 @ComponentScan("com.wangm.lifecycle") public class AppConfig { } @ComponentScan指定basePackage,將包下的類按照一定規則註冊成Be ...
  • 操作系統 :CentOS 7.6_x64 opensips版本: 2.4.9 python版本:2.7.5 python作為腳本語言,使用起來很方便,查了下opensips的文檔,支持使用python腳本寫邏輯代碼。今天整理下CentOS7環境下opensips2.4.9的python模塊筆記及使用 ...