当前位置: 首页 > article >正文

制作自己的Manjaro Linux Live DVD 光盘镜像

文章目录

  • 1.概要
  • 2.整体架构流程
  • 3.技术名词解释
    • 3.1 Manjaro Linux
    • 3.2 Linux Live CD/DVD
  • 4.技术细节
    • 4.1.安装Manjaro Live DVD工具
    • 4.2 获取官方iso文件夹模版
    • 4.3 加入自定义包
      • (1)向Live光盘的Home拷贝文件
      • (2)向Live光盘的 其他位置拷贝文件
      • (3)准备安装包
    • 4.4 选择LTS内核构造iso
    • 4.5 调整ISO大小
    • 4.6 在 VirtualBox 测试
  • 小结

1.概要

manjaro作为ArchLinux的稳定滚动更新版,是一套可以作为主用开发环境的Linux发行版,也可以作为容灾备份运维必须得LiveDVD光盘素材。本篇文章介绍如何制作带有个性化软件包和文件的Live DVD。

2.整体架构流程

  1. 需要具备一台Manjaro的虚拟机或者实体机,且已经更新到最新状态。
  2. 签出个性化iso文件夹模版,从git仓库刷新到最新的master分支。
  3. 自定义包列表和个性化文件。
  4. 运行buildiso。
  5. 刻录到DVD。

主要参考教程:https://wiki.manjaro.org/index.php?title=Build_Manjaro_ISOs_with_buildiso。

3.技术名词解释

3.1 Manjaro Linux

Manjaro Linux 是一种基于 Arch Linux 的操作系统, 它基于Arch Linux,继承了 Arch Linux 的优秀软件管理,提供了滚动更新和丰富的软件包。它使用 Pacman 作为包管理器,提供了 Xfce、KDE、GNOME 等桌面环境。 与ArchLinux相比,Manjaro 稳定和可靠。与周期发行版相比,滚动更新速度较快,能够及时提供最新的软件包和安全补丁。

Manjaro Linux 支持广泛的硬件范围,包括 x86 架构的计算机、ARM 架构的设备以及各种主流的笔记本电脑和台式电脑品牌。它还可以运行在虚拟机和云平台上,如 VMware、VirtualBox 和腾讯云 CVM 等。与 Arch Linux 相比,Manjaro 更易于使用,特别是对于新手用户来说。它提供了图形化的安装界面和友好的用户界面。

3.2 Linux Live CD/DVD

Live CD/DVD 常用于修复受损的系统,可以在不启动已损坏的操作系统的情况下进行系统修复。Manjaro Linux Live DVD 提供了一个方便的方式来安装和部署 Manjaro Linux 系统。用户可以使用它来创建可启动的USB驱动器或DVD,然后在其他计算机上进行系统安装。

Live DVD 还可以用于从损坏的系统中恢复数据,或者在不影响现有系统的情况下进行数据备份。这对于保护重要数据和文件非常重要。用户可以在 Live DVD 环境中测试和评估 Manjaro Linux 的各种功能和性能,以决定是否将其作为主要操作系统。这为用户提供了一个无风险的试用平台.由于 Live DVD 是从光盘或USB驱动器启动的,用户可以随时随地使用一台电脑启动 Manjaro Linux 系统,进行各种操作。这提供了极大的灵活性和便利性。

4.技术细节

必须下载并安装最新版本的Manjaro,或者运行一个维护良好的Manjaro系统。确保您的系统已安装了最新的内核和软件包是非常重要的。

4.1.安装Manjaro Live DVD工具

要开始使用,您需要安装以下软件包:

pamac install manjaro-tools-iso git

4.2 获取官方iso文件夹模版

从git网站下载:

git clone https://gitlab.manjaro.org/profiles-and-settings/iso-profiles.git ~/iso-profiles

此时,会发现home文件夹里本用户名下多出了一个文件夹,叫做iso-profiles。我们需要关注的文件夹位于iso-profiles/manjaro/xfce/:

ls -n ~/iso-profiles/manjaro/xfce/
文件夹 desktop-overlay
文件夹 live-overlay -> ../../shared/manjaro/live-overlay
文件   Packages-Desktop
文件   Packages-Live -> ../../shared/Packages-Live
文件   Packages-Mhwd -> ../../shared/Packages-Mhwd
文件   Packages-Root -> ../../shared/Packages-Root
文件   profile.conf

官方解释:

  • desktop-overlay :每次成功安装ISO后,这里的文件和文件夹都会被复制。
  • live-overlay:类似于desktop-overlay。此处的文件和文件夹只会复制到ISO的LiveCD。
  • Packages-Desktop: 此文件包含ISO安装的软件包。所有软件包也将安装在LiveCD上。
  • Packages-Live: 此文件包含仅安装在LiveCD上的软件包。
  • Packages-Mhwd: 此文件包含对所有Manjaro安装和LiveCD都很重要的Mhwd软件包。
  • Packages-Root: 此文件包含对所有Manjaro安装和LiveCD都很重要的基本包。
  • profile.conf 包含ISO安装和LiveCD的基本设置。

其中,live-overlay、Packages-Live、Packages-Mhwd、Packages-Root是共享ISO配置文件的符号链接。最好不要更改共享ISO配置文件中的文件或文件夹。如果您想更改它们,请先将它们复制到ISO配置文件文件夹并删除符号链接。我们主要关心的是粗体的文件夹和文件。

4.3 加入自定义包

(1)向Live光盘的Home拷贝文件

创建文件夹:

 cd ~/iso-profiles/manjaro/xfce/desktop-overlay/etc/ 
 mkdir skel 

所有拷贝到 skel里的东西,都会出现在 Live 系统的 home 中。

(2)向Live光盘的 其他位置拷贝文件

在文件夹 ~/iso-profiles/manjaro/xfce/desktop-overlay 里建立的目录、文件,都会带到LiveDVD的根文件夹。

比如,要为 libuhd 准备 FPGA 镜像,直接执行:

cp -R /usr/share/uhd/images/ ~/iso-profiles/manjaro/xfce/desktop-overlay/usr/share/uhd/images

(3)准备安装包

编辑 Packages-Desktop:

nano ~/iso-profiles/manjaro/xfce/Packages-Desktop

在尾部补充自己想要的包,举例:

qt6
qtcreator
cmake
base-devel
gcc
gdb
git
valgrind
fftw
libuhd
libiio
htop
screen
qwt
librdkafka
libpcap
geany
boost
cpupower
ninja
partitionmanager
vlc
wireshark-qt
putty
ser2net
remmina
rx_tools
rtl-sdr
postgresql-libs
mariadb-libs
mariadb-clients
libfbclient
gnuradio
gqrx
gnuradio-companion
gnuradio-osmosdr

上述配置允许LiveDVD具备完善的C++ Qt 6 + SDR测试开发能力。

4.4 选择LTS内核构造iso

注意,如果不选择内核,可能会使用很老的内核。执行下面的命令构建 ISO:

buildiso -p xfce -k linux66 -b stable

完成后,iso文件出现在:

/var/cache/manjaro-tools/iso/manjaro/

4.5 调整ISO大小

如果太贪心,安装的包太多, ISO可能超过4.3GB。此时,就要进行一些取舍,修改 ~/iso-profiles/manjaro/xfce/Packages-Desktop 的内容,并重新构造。

4.6 在 VirtualBox 测试

新建一个8GB内存的 VBox 虚拟机,选择 ArchLinux 64, EFI 配置开启,即可看到并测试效果了:

Manjaro

小结

利用上述方式,可以非常方便的建立急救光盘了。


http://www.kler.cn/a/448656.html

相关文章:

  • WebRTC服务质量(06)- 重传机制(03) NACK找到真正的丢包
  • Linux之压缩解压相关命令
  • 网上球鞋竞拍系统|Java|SSM|VUE| 前后端分离
  • MVCC了解
  • 2024 高级爬虫笔记(四)协程、selenium
  • 11爬虫:使用requests和selenium分别抓取4399网页游戏名称
  • LeetCode 35. 搜索插入位置 (C++实现)
  • 12.18 web后端开发——数据库
  • 【代码随想录】刷题记录(61)-二叉搜索树中的众数
  • 【Java入门指南 Day12:Java集合框架】
  • PostgreSQL和Postgis安装
  • 正反向代理 Nginx简单使用
  • 麒麟操作系统服务架构保姆级教程(三)ssh远程连接
  • 【从零开始的LeetCode-算法】3285. 找到稳定山的下标
  • LeetCode:1387. 将整数按权重排序(记忆化搜索 Java)
  • 【漏洞复现】CVE-2023-29944 Expression Injection
  • React:闭包陷阱产生和解决
  • 前端面经每日一题Day18
  • 八字精批API接口PHP实现返回json数据
  • GESP CCF C++一级编程等级考试认证真题 2024年12月