制作没有 iso 文件的 ubuntu 启动 CD

制作没有 iso 文件的 ubuntu 启动 CD

我已经使用 wubi 安装了 ubuntu 并且想要创建一个启动 cd...如果不下载 iso 文件我该如何做呢....

答案1

Live CD 通常使用名为 squashfs 的文件系统创建。Squashfs 是只读压缩文件系统,允许我们将系统压缩到一张 CD 中。请注意,您的系统必须约为 2GB(这可能需要一些尝试和错误)才能生成适合 CD 的压缩映像。否则,您将不得不使用 DVD

从现有/新安装创建 Live CD

按照以下步骤从当前安装中创建 Live CD。

  1. 设置一些变量:

    export WORK=~/temp
    export CD=~/livecd
    export FORMAT=squashfs
    export FS_DIR=casper
    

    将 ~/temp 替换为我们将在其中工作的临时目录的路径。将 ~/livecd 替换为 CD 树的路径。

  2. 制作文件夹结构。
    sudo mkdir -p ${CD}/{${FS_DIR},boot/grub} ${WORK}/rootfs

  3. 现在我们需要安装一些软件包:

    sudo apt-get update && sudo apt-get install grub2 xorriso squashfs-tools
    
  4. 现在我们将复制当前安装,修改排除标志以满足您的需要:

    sudo rsync -av --one-file-system --exclude=/proc/* --exclude=/dev/* \
    --exclude=/sys/* --exclude=/tmp/* --exclude=/home/* --exclude=/lost+found \
    --exclude=/var/tmp/* --exclude=/boot/grub/* --exclude=/root/* \
    --exclude=/var/mail/* --exclude=/var/spool/* --exclude=${WORK}/rootfs \
    --exclude=/etc/fstab --exclude=/etc/mtab --exclude=/etc/hosts \
    --exclude=/etc/timezone --exclude=/etc/shadow* --exclude=/etc/gshadow* \
    --exclude=/etc/X11/xorg.conf* --exclude=/etc/gdm/custom.conf \
    / ${WORK}/rootfs
    

笔记-如果您有一个单独的启动分区,请执行以下命令:sudo cp -av /boot/* ${WORK}/rootfs/boot


笔记-如果您想从主目录复制设置和一些文件,那么首先,定义我们要复制的目录:
CONFIG='.config .gconf Desktop "some-other-folder" "and-another-folder"' 现在我们复制:

    cd ~ && for i in $CONFIG
    do
    sudo cp -rpv --parents $i ${WORK}/rootfs/etc/skel
    done  

.configNautilus 将其设置存储在主目录中名为的目录中,因此我将其添加.config到变量 $CONFIG:


  1. 现在我们chroot到新的系统并进行修改。

    sudo mount  --bind /dev/ ${WORK}/rootfs/dev
    sudo mount -t proc proc ${WORK}/rootfs/proc
    sudo mount -t sysfs sysfs ${WORK}/rootfs/sys
    sudo mount -t devpts devpts ${WORK}/rootfs/dev/pts
    sudo chroot ${WORK}/rootfs /bin/bash
    

    以下命令在 chroot 中完成:

    LANG=
    apt-get update
    apt-get install casper
    

    Casper 包含实时脚本。如果您还需要安装程序,请运行以下命令:

    apt-get install ubiquity ubiquity-frontend-gtk
    

    或者如果你想要 KDE:

    apt-get install ubiquity ubiquity-frontend-kde
    
  2. 更新 modules.dep 和 initramfs:

    depmod -a $(uname -r)
    update-initramfs -u -k $(uname -r)
    
  3. 删除非系统用户 - 不用担心,我们已将设置和数据复制到用户“骨架”中。这意味着所有新用户都将拥有它们。

    for i in `cat /etc/passwd | awk -F":" '{print $1}'`
    do
        uid=`cat /etc/passwd | grep "^${i}:" | awk -F":" '{print $3}'`
        [ "$uid" -gt "999" -a  "$uid" -ne "65534"  ] && userdel --force ${i} 2>/dev/null
    done
    
  4. 清理:

    apt-get clean
    find /var/log -regex '.*?[0-9].*?' -exec rm -v {} \;
    find /var/log -type f | while read file
    do
        cat /dev/null | tee $file
    done
    rm /etc/resolv.conf /etc/hostname
    
  5. 退出 chroot。exit

  6. 现在,我们复制内核:

    export kversion=`cd ${WORK}/rootfs/boot && ls -1 vmlinuz-* | tail -1 | sed 's@vmlinuz-@@'`
    sudo cp -vp ${WORK}/rootfs/boot/vmlinuz-${kversion} ${CD}/boot/vmlinuz
    sudo cp -vp ${WORK}/rootfs/boot/initrd.img-${kversion} ${CD}/boot/initrd.img
    sudo cp -vp ${WORK}/rootfs/boot/memtest86+.bin ${CD}/boot
    
  7. 如果你已经安装了安装程序,则需要执行此操作,以便安装程序不会安装诸如 casper 之类的东西:

    sudo chroot ${WORK}/rootfs dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee ${CD}/${FS_DIR}/filesystem.manifest
    sudo cp -v ${CD}/${FS_DIR}/filesystem.manifest{,-desktop}
    REMOVE='ubiquity casper user-setup os-prober libdebian-installer4'
    for i in $REMOVE 
    do
        sudo sed -i "/${i}/d" ${CD}/${FS_DIR}/filesystem.manifest-desktop
    done        
    
  8. 卸载我们已经安装的内容:

    sudo umount ${WORK}/rootfs/proc
    sudo umount ${WORK}/rootfs/sys
    sudo umount ${WORK}/rootfs/dev/pts
    sudo umount ${WORK}/rootfs/dev
    
  9. 转换为 squashfs:

    sudo mksquashfs ${WORK}/rootfs ${CD}/${FS_DIR}/filesystem.${FORMAT}
    
  10. 制作文件系统.大小: echo -n $(sudo du -s --block-size=1 ${WORK}/rootfs | tail -1 | awk '{print $1}') | sudo tee ${CD}/casper/filesystem.size

  11. 和 md5:find ${CD} -type f -print0 | xargs -0 md5sum | sed "s@${CD}@.@" | grep -v md5sum.txt |sudo tee ${CD}/md5sum.txt

  12. 现在 grub.cfg:

    sudo nano ${CD}/boot/grub/grub.cfg
    

    (用你喜欢的文本编辑器替换 nano,没关系)粘贴并保存:

    set default="0"
    set timeout=10
    
    menuentry "Ubuntu GUI" {
    linux /boot/vmlinuz boot=casper quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu in safe mode" {
    linux /boot/vmlinuz boot=casper xforcevesa quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu CLI" {
    linux /boot/vmlinuz boot=casper textonly quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu GUI persistent mode" {
    linux /boot/vmlinuz boot=casper boot=casper persistent quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu GUI from RAM" {
    linux /boot/vmlinuz boot=casper nopersistent toram quiet splash
    initrd /boot/initrd.img
    }
    
    menuentry "Check Disk for Defects" {
    linux /boot/vmlinuz boot=casper integrity-check quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Memory Test" {
    linux16 /boot/memtest86+.bin
    }
    
    
    menuentry "Boot from the first hard disk" {
    set root=(hd0)
    chainloader +1
    }
    
  13. 制作 CD/DVD! sudo grub-mkrescue -o ~/live-cd.iso ${CD}

  14. 使用虚拟机测试一下!

所有荣誉都归于 capink,因为指南来自这里


我从这里并做了一些修改

答案2

如果你想将现有的安装制作成可启动 CD,这里是一个非常详细并且易于遵循的说明。

如果您只想从已安装的系统中获取原始的 Ubuntu ISO,我现在还不知道(这可能是不可能的)。

[来源]:ubuntuforums.org

您还可以看到这短回答有关从现有安装创建 Live CD 的问题。


remastersys 软件使用详细说明 您可以通过安装 remastersys 来实现这一点。

打开你的终端,输入sudo su并输入。

输入wget -O - http://www.remastersys.com/ubuntu/remastersys.gpg.key | apt-key add -并按回车键,然后输入您的密码。

再次输入sudo gedit /etc/apt/sources.list并在新打开的文件中在文件末尾添加此行。

deb http://www.remastersys.com/ubuntu precise main保存并关闭文件。

如果您使用的是 Ubuntu 11.10(Oneiric),请将 替换preciseoneiric.;对于 Ubuntu 11.04(natty),请将 替换precisenatty.

sudo apt-get update然后在终端中运行& sudo apt-get install remastersys
这将安装 remastersys 软件,该软件可用于从已安装的系统创建 CD。

这一页以供参考。

答案3

不行。你需要 iso 来制作官方 cd。

答案4

是的,你可以使用重制版注意:这只是备份现有的 ubuntu 安装,不能创建原始的 ubuntu cd 在此处输入图片描述

相关内容