Vmware Station安裝Arch Linux

来源:https://www.cnblogs.com/kuroisky/archive/2022/04/23/16183128.html
-Advertisement-
Play Games

Vmware Station安裝Arch Linux 一、測試環境及工具 當前教程在win10環境中進行,網路為有線連接 vmware station版本為 16.2.1 arch linux鏡像為 archlinux-2022.04.05-x86_64.iso 終端工具Xshell 6,也可使用p ...


目錄

Vmware Station安裝Arch Linux

一、測試環境及工具

當前教程在win10環境中進行,網路為有線連接

vmware station版本為 16.2.1

arch linux鏡像為 archlinux-2022.04.05-x86_64.iso

終端工具Xshell 6,也可使用putty,mobaxterm,finalshell等工具均可,沒有區別

二、下載arch linux鏡像

訪問阿裡開源鏡像站

http://mirrors.aliyun.com/archlinux/iso/

選擇當前最新版本,用下載工具下載到本地

http://mirrors.aliyun.com/archlinux/iso/2022.04.05/archlinux-2022.04.05-x86_64.iso

三、vmware創建虛擬機

創建新的虛擬機-->自定義(高級)

預設下一步

選擇稍後安裝操作系統

選擇Linux和其他linux 5.x內核64位

自定義虛擬機名稱和虛擬機的保存位置

預設下一步

根據自己的情況配置虛擬機記憶體,當前配置成2GB

預設下一步

預設下一步

預設下一步

創建新虛擬磁碟,下一步

自定義磁碟大小,選擇將虛擬磁務存儲為單個文件

預設下一步

選擇自定義硬體

設置arch linux的iso路徑

編輯虛擬機設置,設置uefi啟動

四、安裝arch linux

1. 遠程終端登錄

啟動虛擬機,進入終端界面

ls /sys/firmware/efi/efivars 如果結果顯示了目錄且沒有報告錯誤,則系統是以 UEFI 模式引導的。

ping某個公網的功能變數名稱,測試網路是否是通的,通了才能進行後面的步驟。

執行以下命令查看啟動系統IP

ip -brief address

設置一個臨時密碼,簡單點就好

passwd

使用終端連接工具ssh連接啟動系統,用root和剛設置的密碼登錄。這麼做是為了方便複製命令,畢竟手動在虛擬機上敲不僅慢,還容易出錯。

2. iso啟動系統更換國內源

由於在安裝arch linux過程中,需要通過網路下載安裝相關包,預設的國外源速度太慢,故配置成國內源進行安裝。

安裝中出現yes/no的提示時一率按回車,後面的步驟不再額外說明

pacman -Sy vim

等待安裝成功後,給iso啟動系統配置阿裡開源鏡像站的軟體源

用vim編輯/etc/pacman.conf文件,末尾添加以下兩行:

[archlinuxcn]
Server = https://mirrors.aliyun.com/archlinuxcn/$arch

vim /etc/pacman.d/mirrorlist把以下配置放到所有Server鏈接的最上面

Server = https://mirrors.aliyun.com/archlinux/$repo/os/$arch

保存退出後安裝 archlinuxcn-keyring 包導入GPG key。

pacman -Sy archlinuxcn-keyring

3. 磁碟分區

按以下的分區種類分三個區即可,記憶體較小時,swap分區一般設為真實記憶體的兩倍,本教程虛擬機記憶體是2G,所以swap分區給4G就行。

EFI分區       300 MB
swap分區      4GB
root分區      剩餘空間

fdisk -l查看磁碟信息,並執行cfdisk命令,如此教程中為cfdisk /dev/sda

選擇gpt分區表,回車

選擇[ New ],回車

設置大小為300M,回車

選擇[ Type ],回車,選擇 EFI System,回車

按向下的游標鍵,回到Free space,選擇[ New ]繼續分區,swap分區設4G,Type選擇Linux swap。root分區預設剩餘全部空間,Type選擇Linux filesystem

分好區後選擇[ Write ]寫入配置,提示Are you sure you want to write the partition table to disk?時要手動輸入yes再回車,這裡直接敲回車不管用

[ Write ]之後選擇[ Quit ]退出

接下來依次對三個分區進行格式化

EFI分區格式化

mkfs.vfat /dev/sda1

root分區格式化,強制分區為xfs

mkfs.xfs -f /dev/sda3

創建swap分區

mkswap /dev/sda2

使用lsblk -f 查看磁碟分區情況

4. 掛載分區並安裝系統

# 掛載分區
mount /dev/sda3 /mnt
mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi
swapon /dev/sda2

#安裝系統
pacstrap /mnt linux linux-firmware linux-headers base base-devel vim git bash-completion

# 生成文件系統的表文件,作用是後面重啟進去系統能自動掛載分區
genfstab -U /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab

5. 進入新系統並配置

arch-chroot /mnt

前面把格式化好的分區已經掛載在iso啟動系統的/mnt目錄下,併在該目錄下安裝了系統,執行arch-chroot相當於從當前的啟動系統進入到安裝好的arch linux系統中。

進到安裝好的系統之後,第一步還是配置國內源,方法跟前文中的一樣,不再贅述。

# 設置時區
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc

# 設置系統語言
sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g" /etc/locale.gen
sed -i "s/#zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/g" /etc/locale.gen
# 生成本地語言信息
locale-gen
# 設置本地語言環境變數
echo "LANG=en_US.UTF-8" > /etc/locale.conf

# 設置主機名,如archlinux
echo "archlinux" > /etc/hostname
# hosts文件中添加主機名
echo "127.0.0.1   localhost
::1         localhost
127.0.1.1   archlinux.localdomain archlinux" >> /etc/hosts

# 安裝以下軟體包
pacman -S grub efibootmgr efivar networkmanager intel-ucode

# 配置grub
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

# 激活啟用NetworkManager
systemctl enable NetworkManager

# 給root創建密碼
passwd

# 安裝openssl
pacman -S openssh
# 設置開機自啟動
systemctl enable sshd
# 修改/etc/ssh/sshd_config允許root登錄,修改PermitRootLogin的值為yes
sed -i "s/#PermitRootLogin prohibit-password/PermitRootLogin yes/g" /etc/ssh/sshd_config

# 添加其他用戶並設置密碼,如test_user
useradd --create-home test_user
passwd test_user
# 設置用戶組
usermod -aG wheel,users,storage,power,lp,adm,optical test_user
# 修改當前用戶許可權,編輯以下文件,取消%wheel ALL=(ALL) ALL前的註釋,用:wq!保存退出
vim /etc/sudoers

# 安裝顯卡驅動
pacman -S xf86-video-intel vulkan-intel mesa

# 安裝音效卡驅動
pacman -S alsa-utils pulseaudio pulseaudio-bluetooth cups

# 安裝英文字體
pacman -S ttf-dejavu ttf-droid ttf-hack ttf-font-awesome otf-font-awesome ttf-lato ttf-liberation ttf-linux-libertine ttf-opensans ttf-roboto ttf-ubuntu-font-family

# 安裝中文字體
pacman -S ttf-hannom noto-fonts noto-fonts-extra noto-fonts-emoji noto-fonts-cjk adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-source-serif-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-cn-fonts wqy-zenhei wqy-microhei

# 打開字體引擎,取消最後一句的註釋
# export FREETYPE_PROPERTIES="truetype:interpreter-version=40"
vim /etc/profile.d/freetype2.sh

# 安裝顯示服務
pacman -S xorg
# 安裝桌面環境。plasma:就是桌面環境;sddm:登錄管理器;konsole:kde下的終端;kate:文本編輯器;ark:解壓與壓縮;okular:PDF查看器;spectacle:截圖工具;AUR:管理工具
pacman -S plasma sddm konsole dolphin kate ark okular spectacle yay
# 設置sddm登錄
systemctl enable sddm

# 安裝中文輸入法
sudo pacman -S fcitx fcitx-im fcitx-configtool
yay -S fcitx-sogoupinyin
# 編輯 /root/.xprofile寫入以下內容
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

# 安裝其他軟體
sudo pacman -S typora netease-cloud-music
yay -S baidunetdisk-electron visual-studio-code-bin google-chrome qv2ray

# 清理緩存
pacman -Scc

6. 重啟進入安裝系統

以上的配置是從啟動系統arch-chroot配置的,我們現在退出啟動系統,重啟進去安裝配置好的系統。

接上一步,依次執行

exit

umount /mnt/boot/efi
umount /mnt

reboot

輸入前面設置的密碼登入系統

五、Arch Linux wiki

https://wiki.archlinux.org/

六、參考文檔

https://zhuanlan.zhihu.com/p/433920079


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

-Advertisement-
Play Games
更多相關文章
  • 概述 目前主流的網路數據分析工具主要有兩類,一類是http協議分析工具,如fiddler,這類工具擅長對字元串類型協議分析;另一類是原始網路數據包的監聽分析,如Wireshark,這類工具擅長分析網路底層行為。這兩類工具一類擅長字元串協議分析,另一類擅長網路底層行為分析,但是上述兩類工具分析二進位流 ...
  • 微信開放平臺:微信掃碼登錄功能 官方文檔:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html 1. 授權流程說明 微信OAuth2.0授權登錄讓微信用戶使用微信身份安全登錄 ...
  • 《零基礎學Java》 資料庫操作 資料庫基礎 資料庫是一種存儲結構,允許使用各種格式 輸入、處理、檢索 數據,且不用在每次需要數據時重新輸入數據。 select 語句: select語句用於查詢數據表中的數據。 select 語句 語法: select 所選欄位列表 from 數據表名 where ...
  • 在Python的應用實踐過程中,經常會遇到字元串使用的問題,我花了點時間,專門整理了 Python 關於 string 的知識,主要內容 包括以下幾個方面: 為了方便以後查看,速查表的形式整理了 Python字元串的內容,《Python字元串速查表》(V1.0版)一共 5 頁,先來一 張圖看下概覽哈 ...
  • SunnyUI.Net, 基於 C# .Net WinForm 開源控制項庫、工具類庫、擴展類庫、多頁面開發框架 Blog: https://www.cnblogs.com/yhuse Gitee: https://gitee.com/yhuse/SunnyUI GitHub: https://git ...
  • 之前寫過一篇如使用阿裡雲上部署.NET 3.1自定義運行時的文章,吐槽一下,雖然現在已經2022年了,但是阿裡雲函數計算的支持依然停留在.NET Core 2.1,更新緩慢,由於程式解包大小的限制,也不能放太複雜的東西的上去,雖然現在.NET 6裁剪包能挺好地解決這個問題,但是心裡還是不爽。 需求 ...
  • 之前曾在《C# 中容易忽視的 Encoding.GetByteCount 記憶體問題》中提到過,可以使用 Encoding.Default.GetByteCount 方法來判斷字元是全寬(寬度為 2)還是半寬(寬度為 1)。 這個方法實際上是計算對字元編碼後產生的位元組數,只是在中文環境下,寬字元在使用 ...
  • 本筆記有特殊目錄,點擊開啟: 專有目錄 在Linux系統中編輯文本總是離不開一位老幫手——Vi。而因為其誕生的年代有些久遠,有些操作在現在看來可能有點“反直覺”。 於是我決定寫這樣一篇小筆記,記錄一下我記憶Vi的這些這些 常用 操作和指令的方法(主要靠的是英語和圖示了)。 當然,正如“好記性不如爛筆 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...