[Ubuntu] Копирование файлов по списку (Решено!)

Kubuntu, Xubuntu и другие

Модератор: Модераторы разделов

leonm
Сообщения: 90

[Ubuntu] Копирование файлов по списку

Сообщение leonm »

Есть 4 ДВД с пакетами для Убунты. Хочу сделать один диск с нужными мне, чтобы не перетыкать диски. Знаю как сделать список установленных в системе пакетов.
Можно ли как-нибудь одним махом скопировать именно пакеты из списка?

Еще нашел такое описание. Лежит здесь
Synaptic - Меню - "Настройки, Параметры". Вкладка "Файлы". Я отмечаю опцию "Оставлять все загруженные файлы в кеше". Удобно, если вы собрались после полной настройки создать свой репозиторий с нужными вам пекетами. Загруженные пакеты будут жить теперь в директории /var/cache/apt/archive/.

Как понимаю работает при установке из интернета. Будет ли работать при установке с дисков?
Спасибо сказали:
Аватара пользователя
Voland
Сообщения: 123
ОС: Ubuntu Linux

Re: [Ubuntu] Копирование файлов по списку

Сообщение Voland »

leonm, добавьте свой диск командой apt-cdrom add. Synaptic и apt все равно, откуда брать пакеты.
Дистрибутив: Ubuntu Linux 8.10 kernel 2.6.27-11, Gnome 2.24.1
Linux user number 431730
Мой блог
Лучше быть, чем казаться...
Спасибо сказали:
leonm
Сообщения: 90

Re: [Ubuntu] Копирование файлов по списку

Сообщение leonm »

Voland писал(а):
17.09.2007 14:13
leonm, добавьте свой диск командой apt-cdrom add. Synaptic и apt все равно, откуда брать пакеты.

В установке проблем нет, все ясно как день. Хочу просто таскать с собой только один диск с дополнительными пакетами, которые мне нужны.
Выбирать с четырех дисков нужные пакеты и зависимости, чтобы записать потом на отдельный диск, слишком утомительно.
А, имея такой диск, установил на каждый комп саму систему, скопировал на хард и настроил репозиторий и все. Дальше пользователь сам.
Не на всех хардах есть место для четырех ДВД. Вот в чем вопрос.
Кстати попробовал
Synaptic - Меню - "Настройки, Параметры". Вкладка "Файлы". Я отмечаю опцию "Оставлять все загруженные файлы в кеше". Удобно, если вы собрались после полной настройки создать свой репозиторий с нужными вам пекетами. Загруженные пакеты будут жить теперь в директории /var/cache/apt/archive/.

Не работает в случае локального репозитория, т.е. скопированных на хард четырех ДВД.
Еще попробую установку с диска. - тоже не получилось. Возможно хранит кэш в другом месте? Но я не нашел.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: [Ubuntu] Копирование файлов по списку

Сообщение sash-kan »

leonm, последовательно:
1. получите список установленных пакетов.
2. apt-cache-ем вытащите названия файлов, содержащих эти пакеты.
3. вставляйте последовательно диски и выдергивайте с них эти файлы.

в помощь:

Код: Выделить всё

dpkg --get-selections | grep '\Winstall$' | cut -f 1
apt-cache show <пакет> | grep '^Filename:' | cut -f 2 -d ' '
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
leonm
Сообщения: 90

Re: [Ubuntu] Копирование файлов по списку

Сообщение leonm »

sash-kan писал(а):
20.09.2007 21:09
leonm, последовательно:
1. получите список установленных пакетов.
2. apt-cache-ем вытащите названия файлов, содержащих эти пакеты.
3. вставляйте последовательно диски и выдергивайте с них эти файлы.

в помощь:

Код: Выделить всё

dpkg --get-selections | grep '\Winstall$' | cut -f 1
apt-cache show <пакет> | grep '^Filename:' | cut -f 2 -d ' '


Не совсем понятно, что надо делать, ввести код?. <пакет> - это каждый раз надо вводить новый пакет?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: [Ubuntu] Копирование файлов по списку

Сообщение sash-kan »

хорошо, разжёвываю:

Код: Выделить всё

dpkg --get-selections | grep '\Winstall$' | cut -f 1 | xargs apt-cache show | grep '^Filename:' | cut -f 2 -d ' '
это уже будет список файлов.

Код: Выделить всё

dpkg --get-selections | grep '\Winstall$' | cut -f 1 | xargs apt-cache show | grep '^Filename:' | cut -f 2 -d ' ' | xargs -L 1 -I '{}' cp \
/место/куда/монтируется/cdrom/'{}' /место/куда/Вам/надо/складывать/пакеты/
естественно, будет вылезать куча ошибок о ненайденых файлах. объехать это дело, конечно, можно, учитывая информацию о том, на каком именно диске лежит тот или иной файл. но это уж оставляю Вам как домашнее задание (:

p.s. не испытывал, конечно. но предупрежу, что с последним xargs-ом могут быть трудности. из-за слишком длинного списка. возможно, еще каких-нибудь опций надо xargs-у добавить. или скармливать ему список по частям.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
leonm
Сообщения: 90

Re: [Ubuntu] Копирование файлов по списку

Сообщение leonm »

sash-kan писал(а):
22.09.2007 11:13
хорошо, разжёвываю:

Благодарю, все работает. Но не сразу разобрался, т.к. у меня перестали монтироваться автоматом диски, почему только не знаю.
Кстати нашел другой вариант:

Код: Выделить всё

dpkg --get-selections | \
grep -v "deinstall" | \
awk '{print $1}' | \
xargs dpkg-repack

Этот наборчик собирает установленные в системе пакеты в той папке откуда запускается. Этот вариант даже попроще.
Спасибо сказали: