Создание Alpine Linux Linux из Docker - отказано в разрешении libburn - PullRequest
1 голос
/ 24 марта 2019

Я пытался создать iso-образ для alpine-linux в док-контейнере, следуя стандартным инструкциям здесь , однако я, кажется, не могу фактически записать .iso обратно в подключенный том из-за в libburn:

    >>> mkimage-x86_64: Creating alpine-standard-edge-x86_64.iso
xorriso 1.4.8 : RockRidge filesystem manipulator, libburnia project.

libburn : SORRY : Failed to open device (a pseudo-drive) : Permission denied
libburn : FATAL : Burn run failed
xorriso : FATAL : -abort_on 'FAILURE' encountered 'FATAL' during image writing
libisofs: MISHAP : Image write cancelled
xorriso : FAILURE : libburn indicates failure with writing.

Это стандартный результат попытки запустить скачанный скрипт из учебника:

sh aports/scripts/mkimage.sh --tag edge --outdir /build2/ --arch x86_64 --repository http://dl-cdn.alpinelinux.org/alpine/edge/main --profile standard

Образ докера, который я использую:

FROM alpine:latest
RUN addgroup root abuild
RUN apk add --update \
    alpine-sdk \
   # build-base \
    apk-tools \
    alpine-conf \
    busybox \
    git \
    fakeroot \
    syslinux \
    xorriso \
    squashfs-tools \
    mtools \
    dosfstools \
    grub-efi \
  && rm -rf /var/cache/apk/*

COPY . /usr/src/app 
WORKDIR /usr/src/app
RUN mkdir /usr/src/app/build
RUN touch /usr/src/app/build/worked.txt
RUN adduser -G abuild -g "Alpine Package Builder" -s /bin/sh -u 12345 -D builder
RUN echo "builder:newpass"|chpasswd


RUN chgrp -R abuild /usr/local;                                      \
    find /usr/local -type d | xargs chmod g+w;                        \
    echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/builder; \
    chmod 0440 /etc/sudoers.d/builder

WORKDIR /build2/
RUN git clone git://git.alpinelinux.org/aports
RUN chmod +x aports/scripts/mkimage.sh
RUN abuild-keygen -i -a
USER builder

Я просмотрел официальный форум, однако только в одном сообщении упоминалось нечто подобное, но не было упоминания о каком-либо фактическом решении.

Не найдя решения для этого, кто-нибудь еще может порекомендовать хороший альтернативный минимальный дистрибутив, который можно собрать iso с помощью сценария для x_86, x_64 и rpi?

1 Ответ

2 голосов
/ 24 марта 2019

Вы можете легко создать свой собственный образ Alpine Linux ISO, используя скрипт alpine-make-vm-image .

Пример:

sudo ./alpine-make-vm-image \
  --image-format qcow2 \
  --image-size 5G \
  --packages "ca-certificates git ssl_client" \
  --script-chroot \
  alpine-$(date +%Y-%m-%d).qcow2 -- ./configure.sh
...