Кв. ошибка CD при тестировании пользовательского основанного на Ubuntu дистрибутива

Я хочу сделать ремикс Ubuntu, которая может быть запущена живая, но также и иметь опцию установить. Я использую учебные руководства для Живой Настройки CD С нуля и Живой Настройки CD. Я также имел некоторый успех с ubuntu режим live-build(4.0.5-1) сценарии, но я не мог заставить это иметь опцию установки. Я хочу запуститься с нуля, таким образом, я не хочу использовать uck. Я сталкиваюсь с некоторыми проблемами при попытке установить дистрибутив. Живая опция работает просто великолепно. Прежде всего я делаю все это на Xubunutu 14.04.

Я буду идти через свои шаги с начала:

ARCH=i386
RELEASE=trusty
# make chroot environment
mkdir -p work/chroot && cd work
sudo debootstrap --arch=$ARCH $RELEASE chroot
# Copy Files For Internet
sudo cp /etc/hosts chroot/etc/hosts
sudo cp /etc/resolv.conf chroot/etc/resolv.conf
sudo cp /etc/apt/sources.list chroot/etc/apt/sources.list
# Copy A text file with a list of packages (packages.txt) to the chroot environment
sudo mkdir -p chroot/usr/share/initialinstall
grep -vE '^\s*(#|$)' packages.txt >> packages-list.txt
sudo cp packages-list.txt chroot/usr/share/initialinstall/packages
rm packages-list.txt
sudo mount --bind /dev chroot/dev

Теперь у меня есть chroot установка среды успешно. Теперь я могу chroot в среду теперь.

sudo chroot ./chroot
mount none -t proc /proc
mount none -t sysfs /sys
mount none -t devpts /dev/pts
HOME=/root
export LC_ALL=C
apt-get update
apt-get install --yes dbus
dbus-uuidgen > /var/lib/dbus/machine-id
dpkg-divert --local --rename --add /sbin/initctl
apt-get install --yes casper lupin-casper
apt-get install --yes discover laptop-detect os-prober
apt-get install --yes linux-generic
apt-get install --yes ubiquity-frontend-gtk

При Установке этих предыдущих пакетов a grub-pc конфигурация подходит. Я не думаю, что это будет влиять на мою хост-систему, так как я нахожусь в chroot среде. Таким образом, я нажимаю [хорошо] и затем устанавливаю его на dev/sda

Затем в то время как все еще в chroot среде я устанавливаю все пакеты, которые находятся в текстовом файле, до которого я переместился в chroot среду.

# Install new packages from the list from before
apt-get install $(grep -vE "^\s*#" /usr/share/initialinstall/packages  | tr "\n" " ")
# Prepare to exit chroot environment
rm /var/lib/dbus/machine-id
rm /sbin/initctl
dpkg-divert --rename --remove /sbin/initctl
apt-get clean
rm -rf /tmp/*
rm /etc/resolv.conf
umount -lf /proc
umount -lf /sys
umount -lf /dev/pts
exit
sudo umount /path/to/chroot/dev

Я уже имею syslinux squashfs-tools genisoimage таким образом, теперь я должен настроить каталог образов CD.

mkdir -p image/{casper,isolinux,install}
cp chroot/boot/vmlinuz-* image/casper/vmlinuz
cp chroot/boot/initrd.img-* image/casper/initrd.lz
cp /usr/lib/syslinux/isolinux.bin image/isolinux/
cp /boot/memtest86+.bin image/install/memtest
cp /usr/lib/syslinux/menu.c32 image/isolinux/

Затем я сделал isolinux.cfg и помещенный это в image/isolinux/. Это содержало следующее:

UI menu.c32
PROMPT 1

MENU TITLE Boot Menu
DEFAULT live
LABEL live
  menu label ^Start or install Ubuntu Remix
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
LABEL live-install
  menu label ^Install Uubuntu Remix
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash ---
LABEL check
  menu label ^Check CD for defects
  kernel /casper/vmlinuz
  append  boot=casper integrity-check initrd=/casper/initrd.lz quiet splash --
LABEL memtest
  menu label ^Memory test
  kernel /install/memtest
  append -
LABEL hd
  menu label ^Boot from first hard disk
  localboot 0x80
  append -
TIMEOUT 50

Затем я создал декларацию

sudo chroot chroot dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee image/casper/filesystem.manifest
sudo cp -v image/casper/filesystem.manifest image/casper/filesystem.manifest-desktop
REMOVE='ubiquity ubiquity-frontend-gtk ubiquity-frontend-kde casper lupin-casper live-initramfs user-setup discover1 xresprobe os-prober libdebian-installer4'
for i in $REMOVE 
do
        sudo sed -i "/${i}/d" image/casper/filesystem.manifest-desktop
done

После того сжатия chroot

sudo mksquashfs chroot image/casper/filesystem.squashfs 
printf $(sudo du -sx --block-size=1 chroot | cut -f1) > image/casper/filesystem.size

Создайте diskdefines

touch image/README.diskdefines

Это содержит:

#define DISKNAME  Ubuntu Remix
#define TYPE  binary
#define TYPEbinary  1
#define ARCH  i386
#define ARCHi386  1
#define DISKNUM  1
#define DISKNUM1  1
#define TOTALNUM  0
#define TOTALNUM0  1

Распознайте как ремикс Ubuntu

touch image/ubuntu
mkdir image/.disk
cd image/.disk
touch base_installable
echo "full_cd/single" > cd_type
echo "Ubuntu Remix 14.04" > info  # Update version number to match your OS version
echo "http//your-release-notes-url.com" > release_notes_url
cd ../..

Вычислите MD5

sudo -s
(cd image && find . -type f -print0 | xargs -0 md5sum | grep -v "\./md5sum.txt" > md5sum.txt)
exit

Создайте ISO-образ

IMAGE_NAME=UBUNTUREMIX
cd image
sudo mkisofs -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../ubuntu-remix.iso .
cd ..

Теперь я пытаюсь протестировать его с VirtualBox. Я создал виртуальную машину со следующими настройками:

Settings

Моя проблема с тестированием его

Когда я запускаю его, меня встречают меню, которое я хочу, и я могу испытать живую опцию, которая работает просто великолепно. Я закрываюсь из машины и попытки установить его на виртуальном жестком диске, и установщик повсеместности работает просто великолепно до самого конца я получаю следующую ошибку: An attempt to configure apt to install additional packages from the CD failed

apt config error

Это загружает меня в активную версию так, чтобы я мог попытаться решить проблему. Я пытался использовать lsblk, чтобы видеть, видит ли он устройство CD-ROM, и это, кажется, видит его:

lsblk

Если бы у кого-либо есть какие-либо подсказки или указатели, я был бы очень признателен за его. Это - моя последняя проблема, которая преодолеет с этим проектом, и я действительно озадачен. debian ошибка с 2012 имела работу вокруг для удаления /usr/lib/ubiquity/apt-setup/generators/40cdrom. Я проверил, что мой дистрибутив имеет файл, и я распаковал ISO Xubuntu, и это имело тот файл также. Таким образом, я не знаю, является ли просто удалив это корректный план действий или если мои настройки Virtual Box являются неправильными.

Как в стороне вот пакеты, которые находятся в текстовом файле, который я устанавливаю:

xorg
xinit
xterm
xserver-xorg
xserver-xorg-core
xfonts-base
x11-xserver-utils
x11-apps
x11-session-utils
x11-utils
xinput 
openbox
obconf
obmenu
tint2
volti
clipit
gmrun
lightdm
lightdm-gtk-greeter
light-locker
light-locker-settings
laptop-detect
spacefm
synaptic
libnotify4
dkms
gvfs
gvfs-backends
policykit-1
unzip
zip
p7zip
unrar-free

Я мог пропускать важный пакет также.

1
задан 10 September 2015 в 19:22

0 ответов

Другие вопросы по тегам:

Похожие вопросы: