LINUX.ORG.RU
ФорумAdmin

помогите сделать debootstrap на centos 6

 ,


0

1

Установил debootstrap через yum.

Запускаю debootstrap --arch amd64 bookworm /mnt/debinst http://ftp.ru.debian.org/debian - ошибка, открываю /mnt/debinst/debootstrap/debootstrap.log - там

dpkg-deb: error: archive './/var/cache/apt/archives/libacl1_2.3.1-3_amd64.deb' contains not understood data member control.tar.xz, giving up
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

Ну значит dpkg-deb не умеет работать с xz архивами, надо поставить по свежее пакет dpkg. На всякий случай проверяю зависимости, от него зависит только debootstrap. Устанавливаю debootstrap и dpkg из репозитория debian вручную, как в мануале

# ar -x debootstrap_0.X.X_all.deb
# cd /
# zcat /full-path-to-work/work/data.tar.gz | tar xv

Очищаю /mnt/debinst, опять запускаю debootstrap - ошибка

dpkg-deb: error while loading shared libraries: libmd.so.0: cannot open shared object file: No such file or directory
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

Отсутствует libmd. Нашел какой-то, взял для centos-7. Пытаюсь

# rpm -i libmd-1.1.0-1.el7.x86_64.rpm
предупреждение: libmd-1.1.0-1.el7.x86_64.rpm: Заголовок V4 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
ошибка: Неудовлетворенные зависимости:
        libc.so.6(GLIBC_2.14)(64bit) нужен для libmd-1.1.0-1.el7.x86_64

А у меня

# ldd --version
ldd (GNU libc) 2.12
Copyright (C) 2010 Free Software Foundation, Inc.

Что мне дальше делать? Переустанавливать glibc? Тогда ведь вообще всё работать перестанет…

Как вообще переустановить линукс на сервере не выходя из дома?



Последнее исправление: FeelUs (всего исправлений: 1)

Ответ на: комментарий от FeelUs

ну как вариант сделать chroot с более свежим centos, туда пославить debootstrap и из него уже debian

debian 11 и debian 10 пока не предлагать, там та же самая ошибка - нужно распаковывать xz

хм, я на deb11 из backports ставил dpkg чтобы устанавливать более свежие пакеты с xz

Kolins ★★★★
()
Ответ на: комментарий от t184256

я пытаюсь следовать этому мануалу (https://www.debian.org/releases/stable/i386/apds03.en.html). Его суть в том, что создаешь новый том на диске, устанавливаешь туда минимальную среду, делаешь chroot туда, доустанавливаешь необходимое ПО, донастраиваешь всё, настраиваешь порядок загрузки, сеть, ssh, и потом reboot. Я застрял на этапе «создать минимальную среду», перед chroot. Что мне туда устанавливать debian или ubuntu или более свежий centos - мне всё равно, мне подойдет любое.

FeelUs
() автор топика

А тебе принципиально сделать это на цементос шесть, или можно залить снаружи?

Есть еще читерский способ, на случай, если у тебя докер есть (ну, врдуг!) а дебутстреп не работает:

docker create --name tmp debian:12
docker export tmp > rootfs.tar
docker container rm tmp

🗿

aol ★★★★★
()
Ответ на: комментарий от t184256

11й и 10й debian я попробовал, там присутствуют пакеты в xz (а конкретно libacl). а 9й debian:

# debootstrap --arch amd64 stretch /mnt/debinst http://ftp.ru.debian.org/debian
W: Cannot check Release signature; keyring file not available /usr/share/keyrings/debian-archive-keyring.gpg
I: Retrieving InRelease
I: Retrieving Release
E: Failed getting release file http://ftp.ru.debian.org/debian/dists/stretch/Release

Очевидно потому что его нет здесь http://ftp.ru.debian.org/debian/dists/ И что-то найти репозиторий для не него пока не получается.

FeelUs
() автор топика
Ответ на: комментарий от FeelUs

Как я понял, ты сейчас по SSH подключен к CentOS 6 и хочешь его на Debian сменить.

Вопрос — как ты планируешь потом перезагрузится в Debian и подключиться к нему удаленно?

То есть выделить раздел на диске и залить туда debootstrap ОС конечно можно.

Но нужно же ещё GRUB поставить, сделать Debian вариантом по умолчанию, и SSH в нём настроить до перезагрузки в него. Ты так и планируешь?

Потому это мне кажется дурной идеей, так удаленно возиться без доступа к ILO сервера. Малейшая ошибка — и придется ехать к серверу без вариантов, он как далеко?

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

да, так и планирую. Если ILO сервер вообще и существует, то получение к нему доступа сравнимо с поездкой к самому серверу: ехать не далеко, а бюрократически, пока найдешь там всех - 1,2,3 рабочих дня.

Вот кстати и debian stretch debootstrap-нулся!

FeelUs
() автор топика
Ответ на: комментарий от FeelUs

Если там yum, то он умеет ставить пакеты в директорию. В духе:

rootfs_dir=my_new_chroot_dir
mkdir -p "${rootfs_dir}"/etc
cp -rf ./yum.repos.d "${rootfs_dir}"/etc
yum \
	--installroot=$(realpath "${rootfs_dir}") \
	--releasever=7Server \
	--nogpgcheck \
	--assumeyes \
	install yum [др. пакеты кот. нужны]

yum.repos.d - аналог /etc/apt/sources.list

imatveev13
()

Как вообще переустановить линукс на сервере не выходя из дома?

Если у тебя нет удалённого доступа, что ты будешь делать, если там сеть не поднимется после загрузки?

vbr ★★★
()