惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Palo Alto Networks Blog
S
Security Affairs
T
Tor Project blog
T
Threatpost
Hacker News - Newest:
Hacker News - Newest: "LLM"
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
A
Arctic Wolf
K
Kaspersky official blog
O
OpenAI News
Spread Privacy
Spread Privacy
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
Simon Willison's Weblog
Simon Willison's Weblog
雷峰网
雷峰网
P
Privacy & Cybersecurity Law Blog
Know Your Adversary
Know Your Adversary
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler
量子位
博客园_首页
Cyberwarzone
Cyberwarzone
博客园 - 三生石上(FineUI控件)
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
IT之家
IT之家
N
News and Events Feed by Topic
博客园 - 司徒正美
V2EX - 技术
V2EX - 技术
S
Schneier on Security
博客园 - 叶小钗
Attack and Defense Labs
Attack and Defense Labs
AI
AI
Application and Cybersecurity Blog
Application and Cybersecurity Blog
博客园 - 【当耐特】
Jina AI
Jina AI
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
D
Darknet – Hacking Tools, Hacker News & Cyber Security
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
大猫的无限游戏
大猫的无限游戏
Cloudbric
Cloudbric
H
Hacker News: Front Page
The Last Watchdog
The Last Watchdog
V
V2EX
S
SegmentFault 最新的问题
V
Visual Studio Blog
PCI Perspectives
PCI Perspectives
Microsoft Security Blog
Microsoft Security Blog

陈陈菌博客

如何在 podman 容器内使用 systemd 在 podman 运行 GUI 应用的经验总结 管理 podman 容器与镜像的导入或导出 用 xdg-dbus-proxy 解决容器的文件选择器的问题 解决 VSCodium 或 Code-Server 无法安装 GitHub Copilot 问题 不可变发行版 Fedora Silverblue 的体验记录 解决 apt 或 dnf 无法 tab 补全的问题 对 (MPA) 多页面切换实现丝滑动画的探索 让服务在非 Root 权限下使用 80 或 443 端口 AppImage 应用打包快速上手 Flatpak 使用和应用打包快速上手 如何用 webSocket 实现一个实时聊天应用 Linux 内核编译 | 快速上手 | deb 使用 debootstrap 构建 Debian 系根文件系统 高度可定制的 KDE 窗口装饰器 klassy 有关 docker、podman、nspawn、bwrap 的 Linux 容器图形性能测试 创建任意 Linux 容器并支持 GUI 程序 (Docker) 创建任意 Linux 容器并支持 GUI 程序 (nspawn) 文件同步工具 rsync 的使用 玲珑 (Linyaps) 应用打包 RPM 打包指南 | 精简版 PBR 材质的各种贴图类型入门 APU | Stable-Diffusion 使用记录 如何在 Electron 上启用 WebGPU Grub 主题安装与配置 Fcitx5 主题安装与自定义 不使用 Nginx 的网站开发指南 如何自制一个简易的资源监控程序 SQL 常用 CRUD 语法记录 Debian 打包入门,与需要注意的问题 在 fedora 上建立一个 debian 容器 (bwrap) i3wm | 自制一个极简的屏幕亮度调节器 在 Linux 下启用内存压缩技术 zram 搭建一个本地轻量级聊天 Ai 我又又又重新上线了博客 如何通过命令行管理 wine 容器 (包括 proton) Btrfs 文件系统创建 swap 文件的方法 如何创建适用于 Linux 桌面的程序启动文件 在 Linux 控制 intel CPU 调度的方法 Arch Linux 的基本安装
在 fedora 建立一个 Arch 容器 (bwrap)
GlumiStudio@ · 2024-10-03 · via 陈陈菌博客

2024-10-03 23:20:33

分类: Linux 标签: 容器,Fedora,Arch


在尝试 上一篇文章 (建立一个 Debian 隔离容器)可行之后,有天需要用到 Arch 的一些环境,决定再次尝试建立一个 Arch 的容器以方便使用。

Arch 官方提供了一种 Bootstrap 镜像(这里是阿里云的下载节点,架构为 x86_64)

下载完成后将它解压,即可得到一个 Arch 的基础 rootfs.

在安装 bwrap (bubblewrap) 的前提下

sudo dnf install bubblewrap 

编写一个启动脚本

#!/bin/bash
CHROOT_DIR="/path/to/arch"
uid="1000"
gid="1000"
bwrap \
  --dev-bind $CHROOT_DIR / \
  --proc /proc \
  --dev /dev \
  --dev-bind-try /dev/snd/midiC3D0 /dev/snd/midiC3D0 \
  --dev-bind /dev/snd /dev/snd \
  --dev-bind-try /dev/shm /dev/shm \
  --dev-bind-try /etc/resolv.conf /etc/resolv.conf \
  --dev-bind-try /dev/dri /dev/dri \
  --dev-bind /tmp /tmp \
  --dev-bind-try /run/user/$uid/pulse /run/user/$uid/pulse \
  --setenv DISPLAY :0 \
  --dev-bind-try /media /media \
  --dev-bind /run /run \
  --dev-bind /sys /sys \
  --dev-bind /tmp/.X11-unix /tmp/.X11-unix \
  --chdir / \
  --hostname ArchBox \
  --cap-add CAP_SYS_ADMIN \
  --unshare-uts \
  -- /bin/bash

这里 /path/to/arch 为 arch rootfs 的路径。其他的参数具体作用可了解上一篇文章。点击前往 最后用同样的方法,在 sudo [shell文件路径] 提权执行后即可进入该容器。它的作用就和使用 arch-chroot 差不多。

首先进去后先编辑 /etc/pacman.d/mirrorlist 设置一下 pacman 软件源节点。只需要挑选其中并去掉 # 注释保存即可。

然后我们运行一下以下代码,以初始化 pacman 的 keyring

pacman-key --init
pacman-key --populate archlinux

接下来就能愉快的在 fedora 使用 Arch 环境啦。

贴一张预览图:

更多相关推荐阅读:https://wiki.archlinuxcn.org/wiki/Bubblewrap