使用Btrfs快照安装Arch Linux

前言

Arch Linux是一种通用发行版,以其先进的技术和灵活的配置而闻名。使用Btrfs快照,我们可以利用其快速的步伐,同时对系统的稳定性充满信心。开始吧。

先决条件

  • 新创建的Vultr实例。
  • 一些空闲时间和耐心。

准备工作

创建实例时,可以从ISO库中选择Arch Linux ISO。如果没有,您可以将其加载到机器的设置中。在撰写本文时,库中提供了最新的(2017.01.01)ISO。如果该ISO已过时,建议再次下载。

机器启动后,单击View Console并启动系统。我们需要为环境设置一个root密码,以便我们可以从运行的计算机上访问它:

passwd
systemctl start sshd

关闭VNC窗口并通过ssh连接到计算机:

ssh root@<your host ip here>

安装tmux以便我们可以使会话保持不稳定连接:

pacman -Sy tmux

如果在安装过程中意外关闭了连接,只需ssh返回机器并运行:

tmux attach

安装

首先,让我们对磁盘进行分区。

lsblk
mkfs.btrfs -m single -L arch /dev/vda
mount -o compress=lzo /dev/vda /mnt

接下来是棘手的部分:创建子卷。

cd /mnt
btrfs su cr @
btrfs su cr @boot
btrfs su cr @home
btrfs su cr @log
btrfs su cr @pkg
btrfs su cr @srv
btrfs su cr @tmp

然后,安装子卷。

cd /
umount /mnt
mount -o compress=lzo,subvol=@ /dev/vda /mnt
cd /mnt
mkdir -p {boot,home,srv,var/{log,cache/pacman/pkg,tmp}}
mount -o compress=lzo,subvol=@boot /dev/vda boot
mount -o compress=lzo,subvol=@home /dev/vda home
mount -o compress=lzo,subvol=@log /dev/vda var/log
mount -o compress=lzo,subvol=@pkg /dev/vda var/cache/pacman/pkg
mount -o compress=lzo,subvol=@srv /dev/vda srv
mount -o compress=lzo,subvol=@tmp /dev/vda var/tmp

安装基本系统。

pacstrap -i /mnt base base-devel snapper vim

配置系统。

genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
ln -s /usr/share/zoneinfo/Region/City /etc/localtime # Replace Region/City with your value
hwclock --systohc
vim /etc/locale.gen # Uncomment en_US.UTF-8 UTF-8 line
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
pacman -S networkmanager 
echo "your-hostname" > /etc/hostname # Replace your-hostname with your value
vim /etc/hosts # Configure 127.0.0.1 and ::1 lines accordingly
systemctl enable NetworkManager.service

为将来的远程登录启用sshd。

vim /etc/ssh/sshd_config # Set PermitRootLogin yes
systemctl enable sshd.service

请注意,最佳做法是将公共密钥放入~/.ssh/authorized_keys文件中,而不是为root用户启用密码登录。

配置initramfs,使其满足我们对btrfs的需求。

vim /etc/mkinitcpio.conf

找到MODULES="..."并添加btrfs到列表中。重新生成initramfs:

mkinitcpio -p linux

设置root密码。

passwd

安装并配置引导加载程序。

pacman -S grub
grub-install /dev/vda
grub-mkconfig -o /boot/grub/grub.cfg

重新启动并在机器控制面板中删除ISO。

exit
reboot

再次连接到服务器(可能不久后;等待启动完成)。请注意,服务器指纹已更改,因此您可能需要更改known_hosts文件:

vim ~/.ssh/known_hosts
ssh root@<your host ip here>

让我们配置snapper,它可以使快照过程自动化。

snapper -c root create-config /

编辑配置并TIMELINE_LIMIT_{HOURLY,DAILY,WEEKLY,MONTHLY,YEARLY}根据需要进行更改。

vim /etc/snapper/configs/root

启用系统计时器。

systemctl enable snapper-timeline.timer
systemctl start snapper-timeline.timer
systemctl enable snapper-cleanup.timer
systemctl start snapper-cleanup.timer

工作完成了!

系统配置现已完成。有关如何使用快照程序的更多详细信息,请访问Wiki页面或snapper(8)更多信息。使用带有btrfs自动快照系统的新Arch Linux!



Leave a Comment

在Arch Linux上安装Spigot Server

在Arch Linux上安装Spigot Server

本教程说明了如何在Arch Linux上使用Spigot设置Minecraft服务器。本教程假定您是普通用户(非root用户)并且具有hav

如何在Arch Linux上安装MariaDB 10.3或MySQL 8.0

如何在Arch Linux上安装MariaDB 10.3或MySQL 8.0

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问:需要以root身份运行的命令以#开头,其中一个

在Arch Linux上安装Mumble Server

在Arch Linux上安装Mumble Server

本教程说明了如何在Arch Linux上设置Mumble服务器(Murmur)。本教程中完成的所有操作均以root用户身份完成。安装

如何在Arch Linux上安装Nginx 1.14

如何在Arch Linux上安装Nginx 1.14

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问。需要以root身份运行的命令带有#前缀。钍

如何在Arch Linux Web服务器上安装PHP 7.3

如何在Arch Linux Web服务器上安装PHP 7.3

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问。命令要求

在Arch Linux上设置反恐精英:全球攻势(CSGO)服务器

在Arch Linux上设置反恐精英:全球攻势(CSGO)服务器

本教程说明了如何在Arch Linux上设置“反恐精英:全球攻势”服务器。本教程假定您以标准用法登录

如何在Arch Linux上安装PostgreSQL 11.1

如何在Arch Linux上安装PostgreSQL 11.1

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问。需要以root身份运行的命令以#开头,其中一个

在Arch Linux上使用Devtools

在Arch Linux上使用Devtools

Devtools软件包最初是为受信任的用户制作的,可以为官方存储库正确创建软件包。但是,普通用户可以使用

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

如果直接使用makepkg,它将对您的系统造成一定的污染。必须安装base-devel软件包组。这样,默认情况下,仅需要依赖项

在Vultr服务器上安装2019 Arch Linux

在Vultr服务器上安装2019 Arch Linux

简介Arch Linux的规模较小,但仍然比流行的发行版本强大。其理念截然不同,具有优势

如何在Arch Linux Web服务器上安装Python 3.7

如何在Arch Linux Web服务器上安装Python 3.7

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问:命令需要

如何在Arch Linux Web服务器上使用HTTPS

如何在Arch Linux Web服务器上使用HTTPS

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)运行中的Web服务器,Apache或Nginx Sudo访问命令要求t

如何在Arch Linux上安装MongoDB 4.0

如何在Arch Linux上安装MongoDB 4.0

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文)Sudo访问:需要以root身份运行的命令以#开头,其中一个

在Arch Linux上构建软件包(包括AUR)

在Arch Linux上构建软件包(包括AUR)

在Arch Linux上,官方存储库为:核心,额外和社区。这些软件包已被编译,并通过pacman安装。向前

在Vultr服务器上安装Arch Linux

在Vultr服务器上安装Arch Linux

Vultr除了出色的模板之外,还为您提供了令人敬畏的功能,使您可以使用自己的自定义图像,从而使您可以运行

如何在Arch Linux上安装Apache 2.4

如何在Arch Linux上安装Apache 2.4

先决条件运行最新Arch Linux的Vultr服务器。有关更多信息,请参见本指南。须藤访问。需要以root用户身份运行的命令

如何在Arch Linux Web服务器上安装Perl 5.28

如何在Arch Linux Web服务器上安装Perl 5.28

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问:命令需要

在Arch Linux上设置Team Fortress 2服务器

在Arch Linux上设置Team Fortress 2服务器

本教程说明了如何在Arch Linux上设置Team Fortress 2服务器。我假设您使用具有sudo访问权限的非root用户帐户登录

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。