Online video hd

Смотреть домашнее видео

Официальный сайт forexnw 24/7/365

Смотреть видео бесплатно

09.09.09 09:33 spyfzm

Есть вопрос!Kubuntu 8.10 amd64 Обновление и установка ПО без доступа к репозитарию в интернете.

Приветствую вас всех!
Суть такова - мой лучший друг работает в одном НИИ программистом и работает там с Kubuntu 8.10 amd64, пишет что-то с использованием Qt. На их корпоративном прокси сервере введены довольно жесткие ограничения - никаких https, никаких файлообменников, и нет доступа к репозитариям ПО, даже официальных Canonical.
На моем же компьютере, не имеющем никаких подобных ограничений, стоит Ubuntu 9.04 i386.
Так вот, иногда ему требуется обновить некоторые пакеты или установить новые. Причем, в подавляющем числе случаев, это нужно по работе, но на служебки отвечают отказом и предлагают скачать самостоятельно. Иногда нам везет и удается просто отправить по почте пару пакетов, скачанных с Launchpad, однако, чаще всего, зависимости вручную удовлетворить не получается.
Подскажите, как можно выкачивать на свой компьютер пакеты с необходимыми ЕМУ зависимости, ЕГО архитектуры, актуальных для его дистрибутива версий.
Я себе это представляю так - я каким-либо образом получаю информацию обо всех установленных на его машине пакетах, делаю у себя локальный репозитарий, который затем наполняю лишь необходимыми пакетами, передаю эти пакеты ему (никаких scp, или подключение моего репозитария и подобного использовать не получится, только передача файлов по почте или на флешке). Он устанавливает их в свой локальный репозитарий или использует dpkg -i ~/path/*.deb
При этом этап подготовки его машины должен быть с минимальным количеством пакетов для установки (поднимать веб-сервер с кучей зависимостей, например, совсем не улыбается).
Подскажите как можно организовать подобную передачу пакетов наиболее удобным способом или решить задачу по-другому?
denis_ch 09.09.09 10:13 # +0
ну, для начала aptitude show покажет зависимости. Их можно скачать и сложить в кучу, а потом ставить...
Kraplax 09.09.09 11:10 # +1
У меня арч, но попробую по памяти описать, а вы уже по манам уточните и сориентируетесь.
Значит сначала ваш товарищ делает запускает apt-get нужного пакета, но с параметром "pretend" или типа того (то есть оно попытается скачать и симитировать процесс установки полностью, за исключением самого факта установки). Либо то же самое, но с как-то параметром, который только выкачивает пакеты. При этом утилита должна выдать список зависимостей, которые она требует. Этот список зависимостей ваш друг отправляет вам по почте.
Вы берете этот список, и выкачиваете все пакетики так же без установки (pretend или donwload-only). Затем лезете в свой локальный кэш пакетов (что-нибудь вроде /var/cache/apt-cache или что-то подобное) и копируете накачаное добро на флэшку (желательно кэш пакетов перед этим действом очистить). Поищите заодно в мане насчет опции, позволяющей указать альтернативную директорию для кэша пакетов - тогда вы сможете сразу указать точку монтирования флэшки и apt-get вам все туда аккуратно сложит.
Когда друг получит файлы на флэшке, то пусть кинет их в свою папку с кэшем. И уже потом запускает команду установки нужного пакета.

Теоретически это все можно даже автоматизировать в некоторой степени. Например заставить установщик пакетов друга автоматом парсить вывод и отсылать письмецо на отдельный почтовый ящик. На вашем компьютере же будет производиться изъятие почты и автоматическое скачивание необходимого добра из списка в теле письма. По окончании скачивания вам будет выдано уведомление, мол, товарищ, я ут скачал пару пакетов, занеси мне флэшку. И тогда вы просто вытаскиваете флэшку и несете другу.

Прошу прощения за сумбурность, но в общем-то алгоритм будет примерно таким. Реализация уже на ваших плечах. Осилите?
zivot_je_cudo 09.09.09 12:08 # +2
Синаптик умеет организовать вгет-лист по выбранным пакетам и зависимостям, друг его генерит, ты запускаешь.
Я не шарю в репозиториях каноникал, но если хостов не множество, можно пробросить порт через iptables, сделав днат. Т.е. друг подключается к тебе на порт, например, 801, а попадает на canonical.org:80.
zivot_je_cudo 09.09.09 12:09 # +0
Как всегда не туда ответил..
spyfzm 09.09.09 13:57 # +0
Расскажите для "чайника", как прокинуть такой финт ушами? Если что, у меня есть домен и днс, которые я могу использвать, а так же динамический днс.
xT 09.09.09 15:51 # +2
както так
iptables -t nat -A PREROUTING -p tcp -d твой_внешний_адрес --dport какойто-твой-порт -j DNAT --to-destination адрес_репа:порт_репа
spyfzm 09.09.09 16:03 # +0
А после этого перезапускать какие-нибудь демоны или сетевое подключение надо или сразу все заработает?
xT 09.09.09 16:05 # +0
нет.
но нужно куданить запихать, чтобы это при запуске системы применялось
zivot_je_cudo 10.09.09 10:35 # +1
В зависимости от настроек твоего фаерволла может понадобиться еще что-то вроде
iptables -A FORWARD -p TCP -s адрес_друга -d адрес_репа -j ACCEPT
Harpagon 09.09.09 14:56 # +0
Я так скачивал пакеты для домашней убунты, генерировал список необходимых пакетов (при этом обновив источники приложений) со всеми зависимостями, брал его на флешку и на работе под виндой уже скачивал необходимые пакеты, правда мучился с порядком установки.

P.S.: Я вроде слышал, про DVD-диски с репозиториями, я, полагаю, что-то типа такого, правда это не для amd64
spyfzm 09.09.09 13:30 # +0
Сейчас именно так и делаем, но если я запущу апт в даунлоад-онли, я скачаю пакеты для своего дистрибутива, для 9.04, да под x86. Это не подходит.
А получив список зависимостей от апт, я не получу список зависимостей для его системы, а только для своей. Если у него не установлена одна из моих либ, ничего не выйдет.

В общем, когда в винде на флешке передают программы, просто заливают инсталлятор. Как это делают в случае линукса с пакетными менеджерами?
spyfzm 09.09.09 13:31 # +0
И да, без информации о пакетах в репозитарии, апт на его машине ничего хорошего не скажет.
spyfzm 09.09.09 14:08 # +0
Как ему можно получить свежий срез репозитариев? Млжет какие-то файлы можно просто передать?
Kraplax 09.09.09 16:15 # +0
Да, собственно тут нужно обновить базу пакетов репозитория. Но так как я не уверен для какой машины будет обновившаяся база (вашей или она универсальна, а уже менеджер пакетов сам разруливает..), то тут единственное решение - проброс портов как посоветовал xT.
xT 09.09.09 16:17 # +0
проброс портов посоветовал zivot_je_cudo =)
Kraplax 09.09.09 17:20 # +0
Ой, действительно =)
Просто я глядел уже на готовую строку команды пробрасывания :P
В любом случае - обоим плюс.
xT 09.09.09 16:18 # +0
Кстати, я так и не разобрался как апт подсунуть реп не своей архитектуры
dicson 09.09.09 19:04 # +0
> Кстати, я так и не разобрался как апт подсунуть реп не своей архитектуры

А не проще ли сгенерить список нужных пакетов синаптиком,как советовал zivot_je_cudo ? http://welinux.ru/post/1357/#cmnt21011
xT 10.09.09 01:42 # +0
Может и проще. Не в этом дело - я немного заоффтопил, ибо заинтересовал этот момент
Получается, чтобы скачать пакеты для определенной архитектуры, нужно сначала поиметь систему данной архитектуры (узнать урлы пакетов в ней)
spyfzm 09.09.09 19:12 # +0
Тут все смешано. Им еще и файлы архивов скачивать запрещено. Так что будем выдумывать что делать, но, кажется, информацию о пакетах через интернет загрузить не получится...
Slip 10.09.09 01:00 # +0
spyfzm
Я вам отписывал уже по e-mail'y.

Тут все смешано

Все очень просто:
Ваш товарищ в Синаптике выбирает необходимые пакеты, отмечает их для установки/обновления и создает загрузочный скрипт вида:
1
2
3
#!/bin/sh
wget -c http://archive.ubuntu.com/ubuntu/pool/main/a/abiword/abiword-common_2.4.6-3ubuntu3_all.deb
wget -c http://archive.ubuntu.com/ubuntu/pool/universe/a/abiword/abiword_2.4.6-3ubuntu3_i386.deb


и передает скрипт вам. А вы в свою очередь выкачиваете эти пакеты, они - под его архитектуру.
Все. А чтобы не мучатся потом с порядком установки запускать все так:
sudo dpkg -i *.deb

Так само можно выкачивать пакеты из Windows
spyfzm 10.09.09 10:43 # +0
Спасибо, но у него там информация о пакетах не обновлялась никогда и никогда не удастся ее обновить штатными методами - файлы .gz просто не будут скачаны. Так что надо сначала придумать, как обновить информацию о пакетах, используя https, который не фильтруется, или обновить по флешке.
Slip 10.09.09 11:48 # +0
Ну тогда совсем вкитайчерезчемоданский метод.
Ваш товарищ устанавливает remastersys,
делает sudo remastersys dist
Отдает образ вам.
Вы запускаете его либо в livecd, либо в виртуальной машине.
Проделываете все тоже самое, т.е. в Синаптике создаете скрипт, сохраняете его и уже потом выполняете его в своей системе.
spyfzm 10.09.09 16:43 # +0
Да уж, круто... >_< Дивиди каждый раз записывать... запускать 64-битную систему на 32-битном компьютере..
Кажется, мы с ним в тупике.
Slip 10.09.09 21:42 # +0
Дааа...Я думал у вас обоих "камни" х64, просто ОС отличаются.
Надо будет еще подумать...

Посты Комментарии
Последние посты
    Посты Комментарии
    Последние комментарии
      Посты Комментарии
      Изменения
        Посты Комментарии Изменения Черновики Избранное
        Черновики (все)
          Посты Комментарии Изменения Черновики Избранное
          Избранное (всё)
            Посты Комментарии Изменения Черновики Избранное
            Лучшие блоги (все)
            Топ пользователей Топ блогов
            Топ пользователей Топ блогов
            Элита (все)
            Топ пользователей Топ блогов
            В сети: predator

            Новенькие: 1ntik, saturnus, arhange1, xcellnt, kindigo
            welinux.ru

            Смотреть видео онлайн

            Онлайн видео бесплатно


            Смотреть русское с разговорами видео

            Online video HD

            Видео скачать на телефон

            Русские фильмы бесплатно

            Full HD video online

            Смотреть видео онлайн

            Смотреть HD видео бесплатно

            School смотреть онлайн