Страница 1 из 1

Обновление Linux Ubuntu без подключения к сети Интернет

Добавлено: 27 июн 2007 11:31
winnehr
Итак. как и обещал рецепт обновления

Машина A - подключена к сети интернет
Машины B1...B15 не имеют подключения

На всех машинах устанавливаем программу APTonCD (можно взять здесь http://aptoncd.sourceforge.net/download.html )

На машине A:
1. Устанавливаем нужные программы через менеджер программ
2. Устанавливаем все обновления через менеджер обновлений
3. Сохраняем скачанные пакеты
3.1 Запускаем APTonCD, выбираем "Создать"
3.2 Везде соглашаемся
3.3 В домашнем каталоге пользователя получаем файл вида "aptoncd-20070626-CD1.iso" - его переносим на компьютеры B1...B15
4. Сохраняем индексы пакетов
4.1 Через мой компьютер заходим по следующему пути /var/lib/apt/lists
4.2 Создаём папку "lists" на рабочем столе и туда копируем всё кроме папки "Partial" и файла "Lock"
4.3 Копируем папку "lists" с рабочего стола на машины B1..B15

На машинах B1..B15:
1. На рабочем столе имеем файл вида "aptoncd-20070626-CD1.iso" и папку "lists"
2. Восстанавливаем пакеты
2.1 Запускаем APTonCD и на второй закладке выбираем "Восстановить из образа диска"
2.2 Указываем программе с нашего рабочего стола файл вида "aptoncd-20070626-CD1.iso" и ждём распаковки
2.3 Закрываем программу. Пакеты готовы
3. Восстанавливаем индексы
3.1 Запускаем терминал (Приложения->Стандартные->Терминал)
3.2 Пишем команду "sudo mv /home/user/Desktop/lists/* /var/lib/apt/lists/", где вместо "user" нужно подставить имя вашего текущего пользователя
3.3 Подтверждаем паролем администратора (на экране ввод пароля никак не отображается)
4. Перезагружаемся
5. Установка обновлений
5.1 Заходим в менеджер обновлений (может появится самостоятельно в углу уведомление что доступны обновления)
5.2 Устанавливаем обновления

Re: Обновление Linux Ubuntu без подключения к сети Интернет

Добавлено: 29 июн 2007 10:54
Paul.ZS256
Информация достаточно ценная, но с небольшой поправкой:
winnehr писал(а): На машинах B1..B15:
1. На рабочем столе имеем файл вида "aptoncd-20070626-CD1.iso" и папку "lists"
2. Восстанавливаем пакеты
2.1 Запускаем APTonCD и на второй закладке выбираем "Восстановить из образа диска"
2.2 Указываем программе с нашего рабочего стола файл вида "aptoncd-20070626-CD1.iso" и ждём распаковки
2.3 Закрываем программу. Пакеты готовы
3. Восстанавливаем индексы
3.1 Запускаем терминал (Приложения->Стандартные->Терминал)
3.2 Пишем команду "sudo mv /home/user/Desktop/lists/* /var/lib/apt/lists/", где вместо "user" нужно подставить имя вашего текущего пользователя
3.3 Подтверждаем паролем администратора
Здесь можно упомянуть, что когда Вы будете вводить пароль администратора (более известного под именем root), то на экран он обычно не выводится никаким образом - ни в виде звездочек, ни в виде точечек.

Добавлено: 09 окт 2007 08:30
shilo
Тем у кого в классе есть сеть думаю будет интересна такая схема обновления.
1. Компьютер А обновляется (из интернет или с дисков) без удаления пакетов из кеша.
2. На компьютере А настроен сервер apache2.
3. На сервер apache2 выкачиваются пакеты (apt-move) из кеша А.
4. Остальные компьютеры В1....В.. настраиваются на обновление с сервера компьютера А.

Остается вопрос: Как получить список установленных пакетов на А, для того чтобы автоматом установить эти же пакеты на всех остальных компьютерах? ('этот вопрос связан с созданием одинаковой конфигурации всех ПК)


P.S. извиняюсь за краткость схема работает (но еще отрабатывается), в ближайшие дни опишу весь процесс подробно.

Добавлено: 10 окт 2007 12:30
winnehr
Списки пакетов тоже хранятся в файлах которые скачиваются из интернета при обновлении

Добавлено: 11 окт 2007 09:00
shilo
winnehr писал(а):Списки пакетов тоже хранятся в файлах которые скачиваются из интернета при обновлении
Что это за файлы? Мне нужен список всех установленных пакетов, для того чтобы сделаь везде одинаковую конфигурацию. В будущем если менять конфиг одного компа можно было бы скопировать этот список на другие, не заморачиваясь в ручном выборе пакетов на всех остальных компьютерах.

Добавлено: 11 окт 2007 11:42
winnehr
_Список_ всех установленных пакетов можно сохранить самостоятельно - зайти в менеджер пакетов Synaptic, выбрать - Save marks как по-русски не помню - отметки наверное и указать файл куда их сохранить - дальше на другой машине обратная задача Read Marks и Apply - установятся те же пакеты что были отмечены на прошлой машине

Добавлено: 11 окт 2007 12:28
shilo
winnehr писал(а):_Список_ всех установленных пакетов можно сохранить самостоятельно - зайти в менеджер пакетов Synaptic, выбрать - Save marks как по-русски не помню - отметки наверное и указать файл куда их сохранить - дальше на другой машине обратная задача Read Marks и Apply - установятся те же пакеты что были отмечены на прошлой машине
Хочу отметить разницу между уже установленными и отмеченными для установки. Этот способ создает список для отмеченных на установку, а мне нужен список уже установленных. Файл получается пустой если не отмечать пакеты для установки.

Добавлено: 11 окт 2007 12:35
winnehr
Хочу отметить разницу :wink: внизу есть галочка - "Сохранить полное состояние а не только отметки"

Добавлено: 11 окт 2007 13:22
shilo
winnehr писал(а):Хочу отметить разницу :wink: внизу есть галочка - "Сохранить полное состояние а не только отметки"
Спасибо за помощь. Все спешка и невнимательность подводит :oops:. Кстати можно удалить предыдущие сообщения (чтобы не мешали), а я завтра для остальных подробно опишу как обновляться по сети.

Обновление по сети

Добавлено: 15 окт 2007 15:18
shilo
Как и обещал привожу более подробное описание обновления UBUNTU по сети.
Исходные данные:
A (192.168.1.1) - ПК с имеющий выход в Интернет и в локальную сеть (ip указан для локальной сети), будет сервером обновлений.
В1....Вn(192.168.1.2 ... 192.168.1.n+1) - ПК подключенные к локальной сети и использующие A для обновления в целях экономии трафика :)

1. Настроить А для сохранения пакетов в кеше
система - администрирование - synaptic - настройка - параметры - файлы - оставлять все загруженные файлы в кеше.
2. Установить через synaptic
2.1 Apache2
2.2 apt-move
3. Обновляем систему на A
система - администрирование - менеджер обновлений
4. На рабочем столе создаем кнопку запуска наутилуса под root и в команде указываем sudo /usr/bin/nautilus. В дальнейшем при создание и редактировании файлов будет подразумеваться работа именно через эту программу.
5. Запускаем ярлык наутилус под root, вводим пароль и создаем директорию /var/www/ubuntupdate
6. Работаем с apt-move. краткая справка: |
apt-move update| - переносит из |/var/cache/apt/archives| пакеты в
директорию локального зеркала (указывается в |/etc/apt-move.conf| как переменная |LOCALDIR=path_to|).
6.1 Открываем /etc/apt-move.conf и исправляем переменную LOCALDIR=/var/www/ubuntupdate
6.2 В терминале запускаем sudo apt-move update и вводим пароль.
Все теперь на сервере есть директория с обновлениями. Каждый раз когда сервер А обновится нужно будет выполнить шаг 6.2
7. На B1...bn открываем система-администрирование-источники приложений
7.1 На закладке ПО UBUNTU убираем все галочки
7.2 На закладке ПО сторонних производителей нажимаем добавить и вводим строчку deb http://191.168.1.1/ubuntupdate stable main universe restricted multiverse
8. Сохраняем настройки и запускаем обновление аналогично шагу 3
9. Если необходимо автоматом установить такие же программы как и на сервере то
9.1 На A запускаем sinaptic, файл-сохранить отметки файлов с опцией сохранить полное состояние(не только отметки)
9.2 Перенести файл на B1...Bn и с помощью sinaptic файл-загрузить отметки пакетов

Добавлено: 16 окт 2007 10:25
winnehr
Спасибо за вариант. Будем использовать тоже

Добавлено: 18 ноя 2009 00:56
Old_Alex
Спасибо shilo за детальную инструкцию. Всё замечательно работает кроме веткм multiverse.
При обновлении списка пакетов выскакивает ошибка :(.

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

Не удалось загрузить http://192.168.0.2/ubuntupdate/dists/stable/multiverse/binary-i386/Packages  404 Not Found


ОС Ubuntu 9.04

Как это можно побороть?
Заранее благодарен.

Добавлено: 18 ноя 2009 22:49
shilo
Не удалось загрузить http://192.168.0.2/ubuntupdate/dists/st ... 6/Packages 404 Not Found
Я подозреваю что на сервере не подключен multiverse (можно посмотреть в настройках репозиториев). По крайней мере 404 говорит что такой файл не найден, т.е. apt-move его не создавал.

Добавлено: 20 ноя 2009 19:06
Old_Alex
Доброго времени суток!
аpt-move действительно не создал папку multiverse. Мultiverse репозиториии подключены.
Но пакеты, на которых появляется ошибка присутствуют в папке обновлений. Apt-move поместил их в папку contrib (/var/www/ubuntupdate/pool/contrib).
Танцы с бубном с созданием вручную папки multiverse и копированием туда содержимого contrib - ни к чему не привели :(.

И вдогонку.
Apt-move создает ветку non-free, куда частично пытается складывать пакеты multiverse. Повторное создание папки multiverse и копирование туда содержимого папки non-free и редактирование строки репозитория на локальных машинах до вида

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

deb http://191.168.1.1/ubuntupdate stable main universe restricted multiverse non-free
приводит к тому, что пакеты при обновлении с машин в сети видятся (они вписываются в binary-i386 соответственных веток), но установить их нельзя, ошибка 404.
Для чистоты эксперемента привожу частичное содержание sources.list

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

deb http://ua.archive.ubuntu.com/ubuntu/ jaunty main restricted
deb-src http://ua.archive.ubuntu.com/ubuntu/ jaunty restricted main multiverse universe #Added by software-properties
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty-updates main restricted
deb-src http://ua.archive.ubuntu.com/ubuntu/ jaunty-updates restricted main multiverse universe #Added by software-properties
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty universe
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty-updates universe
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse
deb-src http://ua.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu jaunty partner
deb-src http://archive.canonical.com/ubuntu jaunty partner
deb http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-src http://security.ubuntu.com/ubuntu jaunty-security restricted main multiverse universe #Added by software-properties
deb http://security.ubuntu.com/ubuntu jaunty-security universe
deb http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb http://ua.archive.ubuntu.com/ubuntu/ jaunty-proposed restricted main multiverse universe
deb-src http://ua.archive.ubuntu.com/ubuntu/ jaunty-proposed restricted main multiverse universe #Added by software-properties
А вот результат выполнения apt-move update

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

Moving files...
Skipping files:
/var/cache/apt/archives/flashplugin-nonfree-extrasound_0.0.svn2431-3_i386.deb
/var/cache/apt/archives/gstreamer0.10-pitfdll_0.9.1.1+cvs20080215-1ubuntu1_i386.deb
/var/cache/apt/archives/msttcorefonts_2.6_all.deb
/var/cache/apt/archives/ttf-mscorefonts-installer_2.6_all.deb
/var/cache/apt/archives/liba52-0.7.4_0.7.4-11ubuntu1_i386.deb
/var/cache/apt/archives/liba52-0.7.4-dev_0.7.4-11ubuntu1_i386.deb
/var/cache/apt/archives/libamrnb3_7.0.0.2-0.1medibuntu1_i386.deb
/var/cache/apt/archives/libamrwb3_7.0.0.3-0.0medibuntu1_i386.deb
....
/var/cache/apt/archives/pulseaudio_1%3a0.9.14-0ubuntu20.2_i386.deb
/var/cache/apt/archives/smplayer-themes_0.1.18.dfsg-0ubuntu1_all.deb
/var/cache/apt/archives/smplayer_0.6.6-0ubuntu1_i386.deb
/var/cache/apt/archives/update-manager-core_1%3a0.111.9_i386.deb
/var/cache/apt/archives/update-manager_1%3a0.111.9_all.deb
Moving Files:

File deletes disabled, skipping.

Creating Packages files...
Building: stable dists/stable/restricted/binary-i386 Packages
Building: stable dists/stable/universe/binary-i386 Packages
Building: stable dists/stable/non-free/binary-i386 Packages
Building: stable dists/stable/main/binary-i386 Packages
Creating Release files...
Building: stable Release

All done, exiting.
Обновление с использованием aptoncd - тоже не проходит. В менеджере обновлений эти пакеты не появляются. Импорт состояния пакетов из синаптика сервера - тоже не проходит. Появляется сообщение о сломанных пакетах (как и при обновлении через apache).

В чём может быть проблема?
Заранее благодарен за ответ.