Как я могу обновить Ubuntu в автономном режиме без использования Synaptic или Keryx?
Я использую Ubuntu 12.04 у себя дома, у меня хорошее интернет-соединение, и моя система работает нормально.
У одного из моих друзей небольшой офис, и он думает перейти с Windows на Ubuntu 11.10 или выше. Проблема в том, что у него нет подключения к интернету.
Он спрашивает меня, есть ли возможность установить все обновления без интернета. Я делаю много поиска, я нашел этот вопрос, который говорит, что использование Keryx или Synaptic Manager сделает это.
Но я использую 11.04, и в этом нет менеджера Synaptic, поэтому я создаю и загружаю скрипт. Другим способом, когда я пытаюсь установить keryx (на любую свежую систему установки, на которой мне нужно получить обновления, или систему, имеющую подключение к Интернету)
Это показывает мне ошибку, что у меня нет python. Но у меня это
Установка этих приложений не соответствует зависимостям. Ключевым моментом здесь является
- Как я устанавливаю обновления без интернета на свежую установку Ubuntu.
- Как я устанавливаю
ubuntu-restricted-extras
8 ответов
Насколько я знаю, вы не можете загружать обновления для системы Oneiric (11.10) с помощью Ubuntu Natty (11.04). У вас должна быть работающая система Ubuntu 11.10.
Эскиз о процессе, которому мы следуем:
- Сначала мы установим Виртуальную машину в OP Natty (11.04).
- Мы установим Ubuntu 11.10 на эту виртуальную машину
- Мы настроим виртуальную машину, чтобы иметь общую общую папку между хост-ОС (11.04) и гостевой ОС (11.10)
- Мы сгенерируем скрипт загрузки пакетов, необходимых для обновления этой системы (гостевая ОС, то есть Ubuntu 11.10).
- Мы перенесем скрипт загрузки в хост-систему, используя общую папку, настроенную на шаге 3.
- В хост-ОС мы загрузим все необходимые пакеты с помощью скрипта загрузки, который мы получили в шаге 5.
- Мы перенесем все загруженные файлы.deb в автономную систему, то есть в систему Ubuntu 11.10, на ПК его друга.
- Мы создадим локальный репозиторий на ПК его друга с этими пакетами.
- Мы обновим Ubuntu друзей OP с помощью локального репозитория, созданного на шаге 8.
1. Получение работающей системы Oneiric
Есть два способа иметь работающую систему Oneiric.
Делая фактическую установку
Вы должны установить Ubuntu Oneiric (11.10) на компьютер с подключением к Интернету. Хотя это также возможно с работающей системы, работающей с USB или CD, я рекомендую установить. Вы можете получить помощь по установке Ubuntu по этим ссылкам:
Установка Oneiric в виртуальной машине VirtualBox
Чтобы установить VirtualBox в Ubuntu 11.04 Natty Narwhal, выполните следующие команды в терминале:
sudo apt-get update sudo apt-get install virtualbox
Затем установите Oneiric в виртуальной машине.
Настройте общую папку на виртуальной машине.
Вам необходимо установить VirtualBox Guest Additions, чтобы включить функцию общей папки. Запустите эту команду на виртуальной машине, чтобы установить это:
sudo apt-get install virtualbox-guest-additions
Если вам нужна помощь по включению функции общих папок в VirtualBox, проверьте эту ссылку:
2. Захватите файлы.deb, необходимые для обновлений.
Пожалуйста, обратите внимание на эти конкретные моменты:
Не рекомендуется обновлять виртуальную систему во время установки или после нее перед установкой Synaptic. Потому что эти обновления могут быть удалены из кэша, и без этих обновлений вы не сможете успешно сгенерировать скрипт загрузки пакета.
Не беги
sudo apt-get clean
или жеsudo apt-get autoclean
потому что эти команды удаляют файлы.deb из кэша.
Затем загрузитесь в систему Oneiric, которая имеет подключение к Интернету (либо из установленной системы, либо из VirtualBox), и выполните следующую процедуру:
Установите менеджер пакетов Synaptic. Выполните эти команды в терминале для этого: (Примечание. Вы должны подключить виртуальную машину к Интернету, без доступа к Интернету машина не может обновить список пакетов)
sudo apt-get update sudo apt-get install synaptic
Вы также можете скачать пакеты, необходимые для
ubuntu-restricted-extras
пакет. Для этого выполните эту команду дополнительно с предыдущими двумя командамиsudo apt-get install -d ubuntu-restricted-extras
Эта команда не устанавливает пакеты, а только загружает их со всеми зависимостями в
/var/cache/apt/archives
папка.Затем откройте диспетчер пакетов Synaptic. Нажмите кнопку Пометить все обновления.
Когда вас спросят, хотите ли вы пометить дополнительные требуемые изменения, нажмите кнопку "Отметить".
Затем перейдите в File -> Generate package download script, сохраните скрипт как файл. Будь как будет
update-downloader.sh
в папке с именемUpdates
, Мы предполагаем, чтоUpdates
папка находится в вашем домашнем каталоге, т.е. в/home/username
, Затем закройте Synaptic.Теперь загрузите файлы.deb.
Перейдите в папку Updates, где вы сохранили
update-downloader.sh
,Пока ты еще в Терминале и имеешь
cd
Перейдите в папку " Обновления ", которую вы создали ранее, и запустите эту команду:cp /var/cache/apt/archives/*.deb .
Это копирует загруженные файлы.deb, которые используются для установки Synaptic Package Manager, и файлы, загруженные для
ubuntu-restricted-extras
пакет.Затем запустите эту команду
sh ./update-downloader.sh
загрузить все файлы.deb, необходимые для обновления, в текущей папке (т. е. вUpdates
папка.Или же
Кроме того, вы можете передать
Updates
папка с несколькими файлами.deb, из которых вы только что скопировали/var/cache/apt/archives
сupdate-downloader.sh
Сценарий в нем для операционной системы через функцию общей папки VirtualBox.Затем в хост-системе Ubuntu откройте терминал и выполните приведенную ниже команду, перейдя в папку Updates, которую вы только что скопировали из гостевой ОС, с помощью функции общей папки, где
update-downloader.sh
файл находится:sh ./update-downloader.sh
Если вы загрузили файлы.deb в виртуальную машину, на этом шаге перенесите папку Updates с этими файлами, используя функцию общей папки Virtual Box. (Этот шаг требуется только в том случае, если вы загрузили файлы на виртуальной машине)
После того, как вы получите папку Updates со всеми файлами.deb на вашем хост-компьютере (т. Е. В вашей системе Natty), скопируйте эту папку со всеми файлами на флэш-накопителе USB. Вы также можете записать DVD с этими пакетами, хотя я не рекомендую это.
Передать
Updates
папку с помощью вашего USB-накопителя (или CD/DVD, если вы их записали) на ПК вашего друга.
3. Используйте файлы.deb для создания локального хранилища.
Скопируйте всю папку с именем Updates
на компьютер без интернета. Поместите эту папку в каталог. Допустим, вы поместили папку Updates в домашнюю директорию. Создайте новый каталог в вашей домашней папке с именем offline
и переместить Updates
папка в offline
папка. Теперь структура каталогов выглядит следующим образом
+ дом +- имя пользователя +- офлайн +- Обновления (содержит файлы.deb)
Теперь откройте терминал и перейдите к
offline
папка. Однажды вoffline
Папка, запустите эту команду для создания необходимого файла индекса пакета:apt-ftparchive packages . > Packages
Это создаст файл с именем
Packages
,Теперь откройте
/etc/apt/sources.list
файл с полномочиями root. В терминале сделайте этоgksu gedit /etc/apt/sources.list
Затем нажмите Enter, когда курсор находится в начале файла. Это создаст новую пустую строку вверху. Запишите эту строку как первую строку в файле
deb file:/home/username/offline /
Затем сохраните файл с помощью Ctrl + S и выйдите из текстового редактора gedit.
Не забудьте использовать точные имена папок / путей для автономной папки и заменить
username
с логином пользователя.Кроме того, если вы уверены, что ваш друг не может использовать другие источники хранилища, вы можете отключить все остальные хранилища, поместив
#
пометить перед каждой строкой в/etc/apt/sources.list
файл. (Это на самом деле не требуется, но рекомендуется).Обратите внимание, что обычно требуется поместить локальный репозиторий вверху файла, чтобы дать ему более высокий приоритет, чем другим источникам репозитория. (Но в этом конкретном случае вы можете избежать этого, так как ваш друг не может даже подключиться к Интернету для доступа к любому из других настроенных репозиториев.)
4. Выполняйте обновление без доступа в интернет!
Бежать
sudo apt-get update
в терминале, чтобы менеджер пакетов распознал ваш локальный каталог обновлений.Затем выполните эту команду для обновления автономной системы:
sudo apt-get upgrade --allow-unauthenticated
Готово! Вы обновили свою систему без доступа в Интернет.
Некоторые заметки:
1. Не хотите каждый раз писать опцию "разрешить без аутентификации"?
Если вы хотите использовать этот локальный репозиторий для установки пакетов время от времени, но вам скучно всегда использовать это allow-unauthenticated
вариант, сделай это.
Создайте файл с именем 99mysettings
в /etc/apt/apt.conf.d
с помощью gedit, добавьте строку в этот файл и сохраните.
APT::Get::AllowUnauthenticated "true";
Чтобы открыть файл с именем 99mysettins в этом каталоге с полномочиями root, используйте эту команду в терминале.
gksu gedit /etc/apt/apt.conf.d/99mysettings
2. Примечание о разрешении-неаутентифицированной опции:
Вы можете спросить, почему я предоставил --allow-unauthenticated
вариант. Это используется, потому что ваш локальный репозиторий обновлений не является аутентичным для системы. Но это не повредит, потому что вы скачали эти пакеты из подлинного официального репозитория Ubuntu.
3. Я хочу иметь доверенный репозиторий:
Посмотрите этот удивительный и эпический пост на форумах Ubuntu о создании надежного локального репозитория. Если вы создаете доверенное хранилище, вам не нужно предоставлять --allow-unauthenticated
вариант больше.
Рекомендация: я бы порекомендовал вам не использовать репозитории PPA, если вы действительно им не доверяете. В частности, не используйте экспериментальные репозитории, потому что они могут создавать проблемы с зависимостями в системе, которую часто называют вундеркиндом Unix как ад зависимости. Это может быть сложнее исправить, когда у вас нет подключения к Интернету.
Вы можете использовать Keryx, не устанавливая его. Я регулярно использую keryx 0.92.4.1 вместо версии 1.
Причина, по которой я выбрал более старую версию, заключалась в том, что, если память мне не изменяет, v0.92x позволит вам устанавливать дополнительные пакеты, а v1 - только обновлять. В любом случае, мне так и не удалось заставить его установить (автоматически) какой-либо пакет для меня, поэтому следующее может быть применимо и для версии 1.
Вот как я это использую:
- Извлеките керикс на свой
home
каталог на компьютере без интернета (назовем его компьютером без интернета). Бежать:
python keryx/source/keryx.py
Создать новый проект. По умолчанию имя компьютера - это имя проекта. Вы можете изменить это, прежде чем нажать "Новый проект". В этом примере я называю это "чомпитуга".
Он попросит вас "загрузить последние списки пакетов". У вас нет интернета, поэтому нажмите нет.
Через некоторое время у вас будет список всех пакетов, причем те из них, которые установлены, помечены соответствующим образом. Вы можете закрыть программу сейчас.
Теперь скопируйте папку
keryx/projects/chompituga
на USB. Он содержит следующее:chompituga.keryx debian.conf installcache.sh lists/ packages/ sources/
Теперь на компьютере с доступом в интернет (назовем его компьютером с интернетом): извлеките keryx в
home
каталог.Скопируйте папку вашего проекта (в этом примере
chompituga
) и все его содержимое с USB наkeryx/projects/
папка на компьютере ж / интернет.Запустите keryx:
python keryx/source/keryx.py
На этот раз откройте проект, называемый в этом примере "chompituga" (см. Рисунок).
Вам будет предложено загрузить последние списки пакетов, на этот раз нажмите "Да". Через некоторое время это укажет, что списки пакетов были обновлены. Вы можете увидеть список пакетов в главном окне, и те, которые имеют более новую версию, будут помечены по-разному.
Теперь можно загружать обновленные пакеты с помощью меню Project|Get Updates, кнопки "Get Updates" или комбинации Ctrl+U.
Также можно установить новые пакеты (нужно позаботиться о зависимостях), выбрав нужные пакеты и затем меню Project|Download package.
Пакеты загружаются на
keryx/packages/chompituga/packages/
папка. Вы берете содержимое этой папки обратно с собой на компьютер без интернета.Вернувшись к компьютеру без интернета, скопируйте куда-нибудь скачанные пакеты и в этой папке просто сделайте:
sudo dpkg -i *.deb
Убедитесь, что вы устанавливаете обновления ядра (linux-header, linux-image или другие пакеты linux-что-то) отдельно - возможно, после других обновлений.
Иногда кажется необходимым установить с опцией
--force-depends
, Я делаю это, на всякий случай, когда вижу очень много пакетов для обновления.sudo dpkg -i --force-depends *.deb
После завершения установки обновлений снова запустите keryx (шаг 2); откройте проект (шаг 10) и в меню Project|Update Status обновите список установленных пакетов. Это потребует вашего пароля пользователя дважды. Обязательно делайте это только на компьютере без интернета.
Теперь все, что вам нужно сделать, это повторять шаги с 6 по 18 каждый раз, когда вы хотите обновить свой компьютер без интернета.
Извините, этот ответ длинный. Я могу заверить вас, что процедура довольно проста и понятна.
Примечания: не имеет значения, есть ли на компьютерах разные версии / разновидности Ubuntu. Я не тестировал keryx с дистрибутивами, отличными от *buntu.
Есть еще один способ добиться этого:
Первое обновление:
Сначала загрузите старую версию Ubuntu (11.04) на вашем компьютере, который подключен к Интернету, используя Live CD или USB.
Затем откройте терминал и запустите
sudo apt-get update
обновить список пакетов, доступных онлайн. (Обратите внимание, что эта команда не обновляет систему, она только обновляет список пакетов).Затем выполните следующую команду в терминале, чтобы сгенерировать список URL-адресов файлов пакетов, необходимых для обновления.
sudo apt-get upgrade --print-uris -y | grep -o "http:.*deb'" | grep -o .*.deb > list
_Если репозиторий представляет собой FTP- архив вместо http- архива, замените
http
сftp
_. Приведенная выше команда создаст список URL пакетов, которые необходимо загрузить.Затем сохраните
list
файл, так что вы можете использовать его позже. Теперь загрузите свою обычную Ubuntu, подключитесь к Интернету и разместитеlist
подайте куда-нибудь и запуститеwget
скачать все файлы. Я предлагаю вам создать папку и поместить туда файл, затем перейти в указанную папку в терминале и использовать команду ниже, чтобы загрузить все.wget -c -i list
Скопируйте всю папку на компьютере вашего друга, войдите в Ubuntu, откройте терминал и зайдите в папку, используя
cd
использованиеsudo dpkg -i *.deb
установить все обновления.
Более поздние обновления:
Если вам нужно обновить Ubuntu вашего друга, скопируйте файл status
от /var/lib/dpkg/
папку на вашем компьютере, а затем снова загрузите Ubuntu 11.04 снова. Затем выполните следующие действия:
Откройте терминал и введите
gksu nautilus
,Скопируйте
status
файл, который вы скопировали и вставьте его в/var/lib/dpkg
папка для замены оригинальной.Затем выполните шаги 2–5 из раздела " Первое обновление ".
Примечание. Не используйте повторно более ранние сеансы Live Ubuntu. Используйте "startup-disk-creator" в вашей Ubuntu для создания Live USB и выберите опцию " Отменить при отключении" внизу или "Использовать Live CD".
Вам просто нужно установить apt-offline
или же apt-offline-gui
к машине, которая без интернета.
Description-en: offline apt package manager
apt-offline is an Offline APT Package Manager
.
apt-offline can fully update and upgrade an APT based distribution without
connecting to the network, all of it transparent to apt
.
apt-offline can be used to generate a signature on a machine (with no network).
This signature contains all download information required for the apt database
system. This signature file can be used on another machine connected to the
internet (which need not be a Debian box and can even be running windows) to
download the updates.
The downloaded data will contain all updates in a format understood by apt and
this data can be used by apt-offline to update the non-networked machine.
.
apt-offline can also fetch bug reports and make them available offline
Вы можете вставить диск/ISO и обновить таким образом.
https://www.reddit.com/r/Ubuntu/comments/etpajx/how_do_you_update_ubuntu_without_a_direct/
Раньше, когда по земле бродили динозавры, это делалось путем добавления компакт-диска в качестве источника deb. Вы можете легко использовать файл .iso:
sudo mount focal-desktop-amd64.iso /mnt -o loop
### Put the next line as the first line into /etc/apt/sources.list, or as file iso.list in `/etc/apt/sources.list.d`
deb [ trusted=yes ] file:///mnt/ focal main restricted
sudo apt update && sudo apt full-upgrade
Я не мог заставить его работать, но в принципе, кажется, хорошо. Если у вас не так много пакетов, отличных от Ubuntu, это может сработать. фокусное необходимо заменить прилагательным ISO, до которого вы пытаетесь перейти.
- Insert live-cd/usb of ubuntu 11.10 in your system.
press ctrl + alt + delete for opening the terminal,and run
sudo apt-get update
sudo apt-get install synaptic
открыто
/var/cache/apt/archives
and save the contents in safe directoryUpdate your system(live cd/usb) using update manger
Install some softwares if you wish:-),
Ie,if you want ubuntu-restricted-extras ,
бежать
sudo apt-get install ubuntu-restricted-extras
в терминалеInstall aptoncd
Launch aptoncd and press create button, It will create an iso file
Goto your friends home/office with Generated iso and directory made for step3
Copy the directory and iso file to the desktop, Open the terminal and move to that directory
cd /path/to/directory
Бежать
sudo dpkg -i *.deb
,It will install synapticOpen the synaptic and click
Edit->add cdrom
It will display a dialog box, Don't click on itReturn to terminal and run
sudo mkdir /media/cdrom
sudo mount -o loop /path/to/iso /media/cdrom
Now press ok button on the dialog generated from synaptic in step11,
Press Mark all upgrades, Apply buttons,respectively
Your friends system is updated, Now have a cup of coffee;-)
For future updates
Insert live cd/usb in your system(In offline mode),
This step is not needed if you are using persistent usbTake the iso and directory created for previous update,
Copy the directory and iso file to the desktop, Open the terminal and move to that directory
cd /path/to/directory
Бежать
sudo dpkg -i *.deb
,It will install synapticOpen the synaptic and click
Edit->add cdrom
It will display a dialog box, Don't click on itReturn to terminal and run
sudo mkdir /media/cdrom
sudo mount -o loop /path/to/iso /media/cdrom
Теперь нажмите кнопку ОК в диалоге, созданном из Synaptic в шаге 11,
Нажмите Пометить все обновления, Применить кнопки соответственно
Теперь обновите вашу систему (live cd / usb), используя менеджер обновлений. Он установит обновление live cd / usb в предыдущее состояние обновления,
Обновите свою систему с помощью менеджера пакетов Synaptic
Установить aptoncd
Запустите aptoncd и нажмите кнопку "Создать". Это создаст ISO-файл.
Перейдите к своим друзьям домой / в офис с Generated iso
Откройте синаптический и нажмите
Edit->add cdrom
Появится диалоговое окно, не нажимайте на негоВернитесь в терминал и бегите
sudo mkdir /media/cdrom
sudo mount -o loop /path/to/iso /media/cdrom
Теперь нажмите кнопку ОК в диалоге, созданном из Synaptic в шаге 11,
Нажмите Пометить все обновления, Применить кнопки соответственно
Система вашего друга снова обновляется
Не стесняйтесь комментировать / редактировать, если мой пост неоднозначный:-)
Независимо от того, какой вариант вы используете для достижения того, чего вы хотите достичь, вам нужно будет использовать интернет-соединение, чтобы помочь своему другу.
Другой доступный вариант - создать для них настроенный live usb / cd со всеми добавленными и добавленными для них обновлениями. Самый простой инструмент для достижения этой цели - это Ubuntu Builder.
Вам нужно будет установить его на свой компьютер с доступом к Интернету, чтобы вы могли настроить livecd / usb / install для своего друга без доступа к Интернету.
Итак, сначала вам нужно установить Ubuntu Builder на ваш компьютер. Для этого вам нужно будет открыть свой терминал и добавить сборщик pbu ubuntu.
sudo add-apt-repository ppa:f-muriana/ubuntu-builder
sudo apt-get update
sudo apt-get install ubuntu-builder
Далее вам необходимо скачать текущее изображение LiveCD http://cdimage.ubuntu.com/dvd/current/
Теперь поговорите с вашим другом и составьте список всех программ, которые ваш друг потребует на этом компьютере. Как только ваш список будет завершен, запустите Ubuntu Builder на вашем компьютере.
Шаг 1 Сначала импортируйте ранее загруженный образ Ubuntu, нажав на Select iso
затем import from local
Импортируйте ранее загруженное изображение
После импорта нажмите на edit sources.list
в Ubuntu Builder
Должен появиться редактор, теперь прокрутите вниз и удалите #
из следующих 4 строк в этом примере используется Ubuntu 12.04 LiveCD
deb http://archive.ubuntu.com/ubuntu precise main restricted
deb-src http://archive.ubuntu.com/ubuntu precise main restricted
deb http://archive.ubuntu.com/ubuntu precise-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-updates main restricted
Также добавьте любые другие источники, необходимые для дополнительного программного обеспечения в sources.list
если он еще не доступен из основных репозиториев.
Нажмите save
затем нажмите close
когда закончено
Шаг 2
Теперь из Ubuntu Builder нажмите на console
кнопка
Терминал откроется и может занять некоторое время, так как он обновляется
Сначала давайте обновим систему livecd
В открывшемся терминале
apt-get upgrade
дождитесь завершения всех обновлений
Теперь все еще в терминале установите любое дополнительное программное обеспечение, требуемое из списка программного обеспечения, сделанного ранее с вашим другом
apt-get install "имя пакета"
например, если ваш друг хотел установить GIMP
apt-get install gimp
Помните, что все, что установлено и обновлено таким образом, будет установлено на live / cd, а не на ваш компьютер
Повторите и установите все необходимое для вашего друга, включая дополнительное программное обеспечение и ограниченные дополнения, которые вы хотели установить
apt-get install ubuntu-restricted-extras
Я думаю, что предложения, сделанные ранее, являются хорошими, поэтому давайте установим apt-offline и apt-offline-gui на ваш livecd, чтобы ваш друг мог обновить систему позже, с вашей помощью, через интернет-соединение.
apt-get install apt-offline apt-offline-gui
После того, как вы добавили все необходимое, введите exit
в терминале и нажмите enter
Теперь в Ubuntu Builder заполните несколько полей, например EG, дайте вашему livecd имя
Теперь нажмите на build
Кнопка в Ubuntu Builder Это займет некоторое время, поэтому не забудьте оставить до завершения.
Однажды построил близко Ubuntu Builder
Теперь, чтобы найти расположение iso, которое вы только что сделали, просто нажмите файлы / файловая система / home / ubuntu-builder /, и вы должны увидеть имя / изображение, которое вы только что сделали в этой папке
Ваш обновленный образ livecd теперь готов для записи обычным способом. При установке на компьютер друзей будут также установлены все обновления и добавленные вами дополнительные материалы.
Чтобы установить ubuntu-limited-extras, наберите в терминале sudo apt-get install ubuntu-restricted-extras
Для установки типа Python в терминале sudo apt-get install python
это должно решить ваши проблемы при установке keryx
Здесь вы можете найти учебник для keryx, в котором изложены простые шаги, как выполнить работу.