Задумал, и сделал локальный репозитарий свой.
Ассинхронный - в смысле любой из участников локальной сети,
кому мы предоставляем доступ к нему, имеет возможность устанавливать пакеты и влиять на содержимое архива /var/cache/apt, а так же на список доступных репозитариев.
Что удобно на мой взгляд, для отдела компании, где люди объеденены одной профессией,и используют практически один и тот же софт,и одни и те же репозитарии.
Отказался от флешек, сд-дисков - проблема с синхронизацией,и потеря времени во время записи-перезаписи оных.
Отказался от samba - "вражеская" технология, нечего делать венде, в репозитариях Ubuntu.
Отказался от массовой скачки пакетов и создания глобального локального репозитария - пусть на диске, хранятся лишь те пакеты, которые нужны.
За основу был взят
NFS.
В форуме,буквально подобное писалось,
захотелось обобщить + упростить,так что сильно не пинать,
все мысли и идеи подчёрпнуты из разных тем нашего форума.
Пишу и для себя тоже, чтобы когда понадобиться вернуться к заметке.
Оглавление :
1. Подготовка.
2. Установка и настройка сервера NFS3. Установка и настройка клиента NFS.--------------------------
1. Подготовка.Для начала нужно настроить на всех машинах,
чтобы пакеты не удалялись из архивов apt, а сохранялись там.
Шаг 1ый.Заходим в Приложения->Стандартные->Терминал (далее просто Терминал)
и набираем следующее:
gksudo gedit /etc/apt/apt.conf.d/20archive
и в открывшемся файле заменяем все строчки на :
APT::Archives::MaxAge "0";
APT::Archives::MinAge "0";
APT::Archives::MaxSize "0";
сохраняем изменение и закрываем gedit.
Тем самым мы сказали apt-у, что максимальный и минимальный срок хранения пакетов неограничен,и максимальный размер архива пакетов тоже.
2ым шагом,будет настройка Синаптика, чтобы и он не удалял архивы.
Заходим в Система->Администрирование->Менеджер Пакетов Synaptic (далее просто Synaptic )
и в Synaptic выбираем :
Настройки->Параметры->вкладка Файлы
отмечаем во вкладке:
Хранить все загружаемые файлы в кэше
Сохранять историю.
Шаг 3й, настройка доменов.
Набираем в Терминале :
gksudo gedit /etc/hosts
и прописываем имена компов, которые будут подключены к локальному репозитарию,
и их ip, пример :
192.168.1.11 comp1
192.168.1.19 vasya
(примечание, дабы избежать путаниц я в роутере adsl модема, каждому компу присвоил статический ip)
На этом подготовительная работа закончена.
Внимание! Проделывать Подготовку,нужно обязательно на всех компьютерах которые мы будем подключать к локальному репозитарию.2. Установка и настройка сервера NFS.Шаг 1ый установка.На компьютере, котором будут храниться все пакеты заходим в Synaptic
и набираем там в поиске nfs.
Перед нами возникнет список пакетов, отмечаем для установки:
nfswatch
nfs-kernel-server
nfs-common
libnfsidmap2
portmap
(описание этих пакетов вы найдете там же в Synaptic или в гугле)
Устанавливаем выбранные пакеты.
Шаг 2ой, организация доступа к серверу nfs.
в Терминале :
gksudo gedit /etc/hosts.allow
там вписываем :
portmap ypserv ypbind : 192.168.1.11 192.168.1.19
(примечание,
192.168.1.11 - комп где поднят nfs сервер и планирует размещение репозитария локального.
а 192.168.1.19 - комп Васьки соседа,который будет устанавливать софт используя репозитарий наш,
у вас могут быть,иные ip адреса.смотрите в админке модема,и желательно присвойте статичные всем, для удобства.)
Шаг 3й, настройка nfs сервера
в Терминале :
gksudo gedit /etc/exports
там дописываем :
/etc/apt vasya(rw,sync,no_subtree_check)
/var/cache/apt/archives vasya(rw,sync,no_subtree_check)
и сохраняем.
То есть мы компу vasya - разрешили через nfs цепляться к папкам :
/etc/apt
/var/cache/apt/archives
на которые нужно выставить права для записи и удаления файлов.
(так как репозитарий ассинхронный, чтобы все участники в равной мере могли управлять репозитарием - пополнять его, добавлять новые репозитарии и т.д)
Шаг 4й, выставляем права :
sudo chmod 777 -R /etc/apt
sudo chmod 757 -R /var/cache/apt/archives
Шаг 5й, ребутим nfs сервер :
sudo /etc/init.d/nfs-kernel-server restart
NFS сервер готов, к тому чтобы комп с доменом vasya, устанавливал пакеты из локального репозитария.
Теперь осталось настроить клиента vasya.
3. Установка и настройка клиента NFS.
После того как вы выполнили Подготовку компа-клиента (см пункт 1.Подготовка),
1ый шаг ,
устанавливаем nfs клиент на компьютер.
Synaptic
и набираем там в поиске nfs.
Перед нами возникнет список пакетов, отмечаем для установки:
nfs-common
portmap
устанавливаем.
настройка хостов :
gksudo gedit /etc/hosts.allow
там добавляем :
portmap : 192.168.1.11
(примечание, это айпи моего компа где поднят локальный репозитарий и nfs сервер,
у вас он скорей всего другой. Пропишите как у вас)
Далее заходим и предворительно скопировав куда нибудь (на всякий случай),
удаляем содержимое директорий
/etc/apt
/var/cache/apt/archives
Внимание! Сами директории не удаляйте, туда будем монтировать с nfs сервера,
файлы.
Просто содержимое удалите.
Сделать это можно к примеру запуская nautilus под root
пример в терминале :
gksudo nautilus /etc/apt
там копируем, архивируем,удаляем..
и
gksudo nautilus /var/cache/apt/archives
те же операции.
Шаг 2й, монтируем файлы с nfs сервера.
в терминале:
gksudo gedit /etc/fstab
там прописываем правила для монтирования,дописав пару строчек :
192.168.1.11:/etc/apt /etc/apt nfs rw,hard,intr,rsize=8192,wsize=8192 0 0
192.168.1.11:/var/cache/apt/archives /var/cache/apt/archives nfs rw,hard,intr,rsize=8192,wsize=8192 0 0
(Примечание, 192.168.1.11 это ip моего nfs сервера.
у вас он может быть другим)
и монтируем,
в Терминале :
sudo mount -a
всё должно начать работать.
если не получилось,попробуйте перезагрузить сперва сервер потом комп-клиент.
установка уже существующих пакетов проходит быстро и на ура.
не нужны флешки и диски.
с помощью
nfs можно без всяких
samba расшаривать папки, по аналогии с репозитариями,
и обмениваться файлами.
критика и замечания приветствуется.