Skocz do zawartości

lakalne repo na Synology NAS


andrew

Rekomendowane odpowiedzi

Ze względu na słaby i limitowany dostęp do internetu pomyślałem o stworzeniu lokalnego repozytorium dla kilku kompów w sieci domowej (wszyscy korzystają z Fedory :) ).

Oszczędziło by to czas aktualizacji na kompach i wymagało tylko jednorazowgo ściągnięcia aktualizacji z internetu, a następne kompy korzystały by z lokalego repozytorium.

Aktualizuję praktycznie tylko z dnf w konsoli.

A więc po kolei:

1. Stworzyłem katalog współdzielony na Synology NAS, udostępniłem dla wszystkich kompów w sieci lokalne.

2. Zamontowałem ten katalog na kompach przez NFS

3. Na wybranym komputerze zainstalowałem libdnf5 Actions plugin

4. Wykorzystując ten plugin, w pliku moja.actions:

# Prints the date and time and information about the end of the transaction.
# Since package_filter is empty, it executes the commands once.
post_transaction::::/usr/local/bin/CreateLocalRepo.sh

wywołuję skrypt CreateLocalRepo.sh:

W tym pliku kopiowałem wszystkie pakiety z cache`a lokalego kompa na katalog współdzielony NAS`a i wywoływałem createrepo na tym katalogu.

Niestety wiązało się to z ponownym przesyłaniem plików z NAS do kompa celem stworzenia plików repo.

Trochę usprawniłem proces createrepo instalując Fedora w dockerze na NAS i wywołując zdalnie createrepo na dokerze z Fedorą na Synology NAS.

Zawartość skryptu poniżej: 

#!/bin/sh 
echo "Coping packages to localRepo" > /dev/stdout
cp -n /var/cache/libdnf5/*/packages/* /srv/fedoraLocalRepo/packages/
date > /dev/stdout
echo "Docker Create localRepo" > /dev/stdout
sshpass -p "xxxxxxxx" ssh [email protected] "/usr/local/bin/docker exec 45a498a4bdad createrepo /home/Repo" > /dev/stdout

 

Teraz proces działa poprawnie, nie ma potrzeby ponownego przesyłania plików z NAS`a do kompa.

Proszę o pomoc w usprawnieniu procesu, chciałbym przede wszystkim widzieć komunikaty ze skryptu CreateLocalRepo.sh na konsoli, z której wywołuję #dnf upgrade.

Może wypadałoby korzystać z jakiś zmiennych, które wskazują cache`a libdnf5 ?

Dzięki za wszelkie uwagi i pomoc.

Tak na marginesie to działa :) . Pominąłem opis konfiguracji nowego repo na pozostałych komputerach.

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Dwa słowa: dnf reposync. To tworzy lokalną kopię  repozytorium, którą można potem przyrostowo aktualizować. Mam kilkanaście maszyn wirtualnych z CentOS 10 i oszczędza to kupę czasu. Pobrane pliki najlepiej wystawić w sieci lokalnej po http i poprawiać konfigurację dnf przed każdą cotygodnoową aktualizacją. Ja mam do tego prace ansiblowe: podmian konfiguracji dnf na wszystkich hostach, wyczyszenie cache dnf i aktualizacja na wszystkich hostach.

Na reposync Fedory będziesz potrzebował z 500 gigabajtów przetrzeni dyskowej. Może więcej. Dawno nie sprawdzałem. 

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...