Offline-Repository auf USB-Stick erstellen

Hilfe bei Updates und Installtion von neuen Paketen bzw. Programmen.
Antworten
Benutzeravatar

Themen Author
ManjaroHans
Neues Foren Mitglied
Neues Foren Mitglied
Beiträge: 13
Registriert: Dienstag 8. Januar 2019, 16:12
CPU: Intel Core i5-8600
GPU: Intel Onboard
Kernel: 4.19.6-1
DE: KDE Plasma
GPU Treiber: Intel Open Source Technology Center
Hat sich bedankt: 2 Mal

Offline-Repository auf USB-Stick erstellen

#1

#1 Beitrag von ManjaroHans » Mittwoch 9. Januar 2019, 12:56

Hallo zusammen,
nachdem ich mich nun vorgestellt habe, möchte ich gleich eine Frage stellen.

Die Ausgangslage:
Ich habe meine Manjaro-Test-Installation zu Hause über den Jahreswechsel 3 Wochen lang nicht upgedatet.
Jetzt zeigt mir Octopi ca. 250 Updates mit insgesamt ca. 850MB Datenvolumen zum Download an.
Das ist für meine Installation zu Hause zu viel - ich gehe mobil ins Internet und habe eine eher langsame und vor allem Volumen-tarifierte Verbindung (5GB/Monat).

Mein Wunsch:
Da ich bei der Arbeit eine wirklich fette Internet-Leitung habe, würde ich gerne auf meinem Manjaro-USB-Boot-Stick (den habe ich schon gemacht...) ein offline-Repository installieren, den Stick dann ab und zu nach Hause tragen und dort die Installation so umstellen, dass sie von dem Stick die Updates zieht. Am liebsten wäre mir ein komplettes offline-Repository, so dass ich auch neue Programme von dem Stick ziehen kann und nicht aus dem Internet.

Ich habe dazu schon stundenlang recherchiert und kriege das leider nicht hin.
Unter Andrerem habe ich versucht, das in diesem Beitrag vorgestellte Script auf Manjaro zu bringen, das klappt aber leider nicht.
Die Hinweise bzgl. geteiltem Pacman-Cache verstehe ich nicht bzw. kann sie nicht umsetzen.
Kann mir hierzu jemand Tipps geben, wie ich das realisieren kann?
_______
Grüßle,
Hans

Benutzeravatar

gosia
Forum Held
Forum Held
Beiträge: 715
Registriert: Dienstag 24. Mai 2016, 13:33
CPU: Intel i5-3210M
GPU: Intel HD 4000
Kernel: 4.15
DE: Openbox
GPU Treiber: i915
Hat sich bedankt: 5 Mal
Danksagung erhalten: 61 Mal

Re: Offline-Repository auf USB-Stick erstellen

#2

#2 Beitrag von gosia » Mittwoch 9. Januar 2019, 21:25

Hallo Hans,
ich habe das Skript mal ein wenig an Manjaro angepasst, war im Prinzip nur das ändern des Repos notwendig, der Rest ist ja nicht sehr Arch-spezifisch.

Code: Alles auswählen

#!/bin/bash
#
# The script to sync a local mirror of the Arch Linux repositories and ISOs
#
# Copyright (C) 2007 Woody Gilk <woody@archlinux.org>
# Modifications by Dale Blount <dale@archlinux.org>
# and Roman Kyrylych <roman@archlinux.org>
# Comments translated to German by Dirk Sohler <dirk@0x7be.de>
# Licensed under the GNU GPL (version 2)

# Speicherorte für den Synchronisationsvorgang
SYNC_HOME="/tmp/mirror"
[ -d $SYNC_HOME ] || mkdir $SYNC_HOME
SYNC_LOGS="$SYNC_HOME/logs"
[ -d $SYNC_LOGS ] || mkdir $SYNC_LOGS
SYNC_FILES="$SYNC_HOME/files"
SYNC_LOCK="$SYNC_HOME/mirrorsync.lck"
SYNC_OPT="-rptlv --delete-after --safe-links --max-delete=1000 --copy-links --delay-updates --exclude=i686"

# Auswahl der zu synchronisierenden Repositorys
# Gültige Optionen sind: core, extra, testing, community, iso
# Leer lassen, um den gesammten Mirror zu synchronisieren
# SYNC_REPO=(core extra testing community iso)
SYNC_REPO=(core)

# Server, von dem synchronisiert werden soll
# Nur offizielle, öffentliche Mirrors dürfen rsync.archlinux.org verwenden
SYNC_SERVER=rsync://ftp.halifax.rwth-aachen.de/manjaro/stable
# An dieser Stelle weicht die Lokalisierte Version des Scripts von der
# Originalversion ab, da der Mirror in der Originalversion seit einigen
# Tagen nicht mehr synchronisiert wurde, und daher nur alte Pakete
# bereit stellte. Selfnet hat eine Quota von 50 GB fullspeed am Tag, und
# wird danach auf 16 KByte/s runtergestuft.

# Format des Logfile-Namens
# Das beispiel gibt etwas wie „sync_20091019-3.log“ aus
LOG_FILE="pkgsync_$(date +%Y%m%d-%H).log"

# Logfile anlegen und Timestamp einfügen
touch "$SYNC_LOGS/$LOG_FILE"
echo "=============================================" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> Starting sync on $(date --rfc-3339=seconds)" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> ---" >> "$SYNC_LOGS/$LOG_FILE"

if [ -z $SYNC_REPO ]; then
  # Sync a complete mirror
    rsync $SYNC_OPT $SYNC_SERVER "$SYNC_FILES" \
    >> "$SYNC_LOGS/$LOG_FILE"
else
  # Alle Repositorys synchronisieren, die in $SYNC_REPO angegeben wurden
  for repo in ${SYNC_REPO[@]}; do
    repo=$(echo $repo | tr [:upper:] [:lower:])
    echo ">> Syncing $repo to $SYNC_FILES/$repo" >> "$SYNC_LOGS/$LOG_FILE"

    rsync $SYNC_OPT $SYNC_SERVER/$repo "$SYNC_FILES" \
          >> "$SYNC_LOGS/$LOG_FILE"

    # Erstellt eine Datei „$repo.lastsync“, die den Timestamp der synchronisation
    # beinhaltet (z. B. „2009-10-19 03:14:28+02:00“). Dies kann nützlich sein,
    # um einen Hinweis darauf zu haben, wann der eigene Mirror zuletzt mit
    # dem angegebenen Mirror abgeglichen wurde. Zum Verwenden einkommentieren.
    # date --rfc-3339=seconds > "$SYNC_FILES/$repo.lastsync"

    # Nach jedem Repository fünf Sekunden warten, um zu viele gleichzeitige 
    # Verbindungen zum rsync-Server zu verhindern, fall die Verbindung nach
    # dem synchronisieren des vorherigen Repositorys vom Server nicht
    # zeitig geschlossen wurde
    sleep 5 
  done
fi

# Weiteren Timestamp ins Logfile schreiben, und es schließen
echo ">> ---" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> Finished sync on $(date --rfc-3339=seconds)" >> "$SYNC_LOGS/$LOG_FILE"
echo "=============================================" >> "$SYNC_LOGS/$LOG_FILE"
echo "" >> "$SYNC_LOGS/$LOG_FILE"

# Die lock-Datei zum Sperren des Script-Durchlaufs löschen und das
# Script beenden
rm -f "$SYNC_LOCK"
exit 0
Ich habe es kurz ausprobiert, aber nicht auf alle Eventualitäten getestet. Wäre auch schwierig, weil bei jedem Durchlauf etliche GBytes rübergeschaufelt werden, die ich mir auch nicht leisten kann :( Ist also durchaus verbesserungswürdig.
Zu den wichtigen Details, die Du anpassen musst, bzw. kannst:

Code: Alles auswählen

SYNC_HOME="/tmp/mirror"
hier Pfad zu deinem USB-Stick, klar
die rsync-Optionen habe ich in eine eigene Variable gepackt, lässt sich so besser anpassen, z.B. was ausgeschlossen werden soll, hier der i686-Zweig.

Code: Alles auswählen

SYNC_OPT="-rptlv --delete-after --safe-links --max-delete=1000 --copy-links --delay-updates --exclude=i686"

Code: Alles auswählen

SYNC_SERVER=rsync://ftp.halifax.rwth-aachen.de/manjaro/stable
den Sync-Server habe ich von hier rausgefischt, Aachen passte bei mir ganz gut, kann bei dir natürlich ein anderer Ort sein
https://wiki.manjaro.org/index.php?titl ... ro_Mirrors
auch stable habe ich da reingeschmuggelt, wäre in einem zusätzlichen Parameter besser aufgehoben (stable, unstable oder testing), aber irgendwo muss ja noch was zum dranbasteln übrig bleiben ;)

Code: Alles auswählen

SYNC_REPO=(core)
auch hier zum Testen auf core beschränkt, wenn Du das, wie im Skript beschrieben leer lässt, wird alles gespiegelt, was bei drei nicht auf den Bäumen ist. Wäre sinnvoll, bringt aber auch mit ca. 15 GB die Verbindung zum Glühen. Hat aber auch den Vorteil, daß Du nicht über die Directory-Struktur des Repos nachdenken musst. Bei dem Aachener Repo gibt es z.B. das im Skript erwähnte ISO nicht, zumindest sehe ich es nicht.

Wenn das alles angepasst ist und funktioniert (zumindest bei mir hat es stundenlang gewirbelt), dann kannst Du bei
https://wiki.archlinux.de/title/Eigenen ... von_Pacman
weitermachen. Und gleichzeitig das Skript verbessern...
Ach so, weiss nicht wie schnell deine Betriebsleitung ist, aber je nachdem tut sich scheinbar längere Zeit nichts. Nur wenn Du gleichzeitig irgendeine Statistik-Anzeige über den Download hast (bei mir im Browser der Fritz-Box), kannst Du direkt zusehen, wie die monatliche Datennutzung geradezu in die Höhe schiesst. Auch ein Grund, daß ich das Skript dann nach einiger Zeit abgebrochen habe, ich kenne das Problem der monatlichen 5GB-Begrenzung ;)

viele Grüße gosia

Benutzeravatar

Themen Author
ManjaroHans
Neues Foren Mitglied
Neues Foren Mitglied
Beiträge: 13
Registriert: Dienstag 8. Januar 2019, 16:12
CPU: Intel Core i5-8600
GPU: Intel Onboard
Kernel: 4.19.6-1
DE: KDE Plasma
GPU Treiber: Intel Open Source Technology Center
Hat sich bedankt: 2 Mal

Re: Offline-Repository auf USB-Stick erstellen

#3

#3 Beitrag von ManjaroHans » Donnerstag 10. Januar 2019, 10:25

Hallo gosia,
whow, das ist der Hammer!
Ich habe das Script mal angepasst und gestartet, das scheint jetzt zu funktionieren.
Bei "SYNC_OPT" habe ich noch eine rsync-Option "--progress" eingefügt, um eine Fortschrittsanzeige zu erhalten, aber da wird nichts angezeigt in der Konsole. Na ja, das ist nicht so schlimm. Die Verzeichnisstruktur wird angelegt und das Verzeichnis wächst von der Größe her, d.h. es wird kopiert. Jetzt heißt es warten... ;)
Eine Frage noch zu rsync bzgl. der Datenmenge: Ich habe rsync schon richtig verstanden, dass, wenn einmal kopiert wurde, zukünftig nur noch geänderte Dateien übertragen werden, ja? D.h. wenn ich einmal komplett auf den USB-Stick gesynct habe, müsste es in Zukunft wesentlich schneller durchlaufen, richtig?
Die lokale Umstellung vom Pacman auf meinem Rechner zu Hause mache ich am Wochenende und melde mich nochmal, ob's geklappt hat.
Ich danke Dir ganz herzlich für Deine Mühe.
_______
Grüßle,
Hans

Benutzeravatar

gosia
Forum Held
Forum Held
Beiträge: 715
Registriert: Dienstag 24. Mai 2016, 13:33
CPU: Intel i5-3210M
GPU: Intel HD 4000
Kernel: 4.15
DE: Openbox
GPU Treiber: i915
Hat sich bedankt: 5 Mal
Danksagung erhalten: 61 Mal

Re: Offline-Repository auf USB-Stick erstellen

#4

#4 Beitrag von gosia » Donnerstag 10. Januar 2019, 11:46

Hallo Hans,
ja, bei rsync werden nur geänderte bzw. noch nicht vorhandene Daten übertragen. In Zukunft sollte es also etwas weniger Datenverkehr geben.

viele Grüße gosia

Benutzeravatar

Themen Author
ManjaroHans
Neues Foren Mitglied
Neues Foren Mitglied
Beiträge: 13
Registriert: Dienstag 8. Januar 2019, 16:12
CPU: Intel Core i5-8600
GPU: Intel Onboard
Kernel: 4.19.6-1
DE: KDE Plasma
GPU Treiber: Intel Open Source Technology Center
Hat sich bedankt: 2 Mal

Re: Offline-Repository auf USB-Stick erstellen

#5

#5 Beitrag von ManjaroHans » Donnerstag 17. Januar 2019, 14:31

Hallo in die Runde,
es hat ein bisschen länger gedauert, aber es funktioniert jetzt mit dem offline-Repository und da möchte ich Euch natürlich informieren, wie das geklappt hat :)
Der erste Probelauf ging leider schief - ich habe für den Download einen 64GB-Manjaro-Bootstick genutzt und da war neben dem System leider nicht mehr genug Speicher frei (das hätte ich nicht gedacht, aber so ist es).
Deswegen greife ich jetzt mal mit meinem fertigen Repository etwas vor: Ihr braucht für ein komplettes Repository (Stand 2019/01) ca. 37GB:

Code: Alles auswählen

[hans@meinpc ~]$ du -hd1 /run/media/hans/Manjaro-Mirror/mirror/files/stable/ | sort -hr
37G     /run/media/hans/Manjaro-Mirror/mirror/files/stable/
28G     /run/media/hans/Manjaro-Mirror/mirror/files/stable/community
7,8G    /run/media/hans/Manjaro-Mirror/mirror/files/stable/extra
1,1G    /run/media/hans/Manjaro-Mirror/mirror/files/stable/core
588M    /run/media/hans/Manjaro-Mirror/mirror/files/stable/multilib
OK, also habe ich mir einen extra 64GB-Stick her geholt, diesen natürlich ext4-formatiert (ich will ja schließlich nur noch mit Linux arbeiten :) ), mit "Manjaro-Mirror" benannt, gemountet und dann das Script entsprechend angepasst:

Code: Alles auswählen

#!/bin/bash
#
# The script to sync a local mirror of the Arch Linux repositories and ISOs
#
# Copyright (C) 2007 Woody Gilk <woody@archlinux.org>
# Modifications by Dale Blount <dale@archlinux.org>
# and Roman Kyrylych <roman@archlinux.org>
# Comments translated to German by Dirk Sohler <dirk@0x7be.de>
# Licensed under the GNU GPL (version 2)

# Speicherorte für den Synchronisationsvorgang
# SYNC_HOME="/home/hans/mirror"
SYNC_HOME="/run/media/hans/Manjaro-Mirror/mirror"
# [ -d $SYNC_HOME ] || mkdir $SYNC_HOME
SYNC_LOGS="$SYNC_HOME/logs"
 [ -d $SYNC_LOGS ] || mkdir $SYNC_LOGS
SYNC_FILES="$SYNC_HOME/files"
SYNC_LOCK="$SYNC_HOME/mirrorsync.lck"
SYNC_OPT="-rptl --verbose --progress --delete-after --safe-links --max-delete=1000 --copy-links --delay-updates --exclude=i686"

# Auswahl der zu synchronisierenden Repositorys
# Gültige Optionen sind: core, extra, testing, community, iso
# Leer lassen, um den gesammten Mirror zu synchronisieren
# SYNC_REPO=(core extra testing community iso)
SYNC_REPO=()

# Server, von dem synchronisiert werden soll
# Nur offizielle, öffentliche Mirrors dürfen rsync.archlinux.org verwenden
SYNC_SERVER=rsync://ftp.halifax.rwth-aachen.de/manjaro/stable
# An dieser Stelle weicht die Lokalisierte Version des Scripts von der
# Originalversion ab, da der Mirror in der Originalversion seit einigen
# Tagen nicht mehr synchronisiert wurde, und daher nur alte Pakete
# bereit stellte. Selfnet hat eine Quota von 50 GB fullspeed am Tag, und
# wird danach auf 16 KByte/s runtergestuft.

# Format des Logfile-Namens
# Das beispiel gibt etwas wie „sync_20091019-3.log“ aus
LOG_FILE="pkgsync_$(date +%Y%m%d-%H).log"

# Logfile anlegen und Timestamp einfügen
touch "$SYNC_LOGS/$LOG_FILE"
echo "=============================================" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> Starting sync on $(date --rfc-3339=seconds)" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> ---" >> "$SYNC_LOGS/$LOG_FILE"

if [ -z $SYNC_REPO ]; then
  # Sync a complete mirror
    rsync $SYNC_OPT $SYNC_SERVER "$SYNC_FILES" \
    >> "$SYNC_LOGS/$LOG_FILE"
else
  # Alle Repositorys synchronisieren, die in $SYNC_REPO angegeben wurden
  for repo in ${SYNC_REPO[@]}; do
    repo=$(echo $repo | tr [:upper:] [:lower:])
    echo ">> Syncing $repo to $SYNC_FILES/$repo" >> "$SYNC_LOGS/$LOG_FILE"

    rsync $SYNC_OPT $SYNC_SERVER/$repo "$SYNC_FILES" \
          >> "$SYNC_LOGS/$LOG_FILE"

    # Erstellt eine Datei „$repo.lastsync“, die den Timestamp der synchronisation
    # beinhaltet (z. B. „2009-10-19 03:14:28+02:00“). Dies kann nützlich sein,
    # um einen Hinweis darauf zu haben, wann der eigene Mirror zuletzt mit
    # dem angegebenen Mirror abgeglichen wurde. Zum Verwenden einkommentieren.
    # date --rfc-3339=seconds > "$SYNC_FILES/$repo.lastsync"

    # Nach jedem Repository fünf Sekunden warten, um zu viele gleichzeitige 
    # Verbindungen zum rsync-Server zu verhindern, fall die Verbindung nach
    # dem synchronisieren des vorherigen Repositorys vom Server nicht
    # zeitig geschlossen wurde
    sleep 5 
  done
fi

# Weiteren Timestamp ins Logfile schreiben, und es schließen
echo ">> ---" >> "$SYNC_LOGS/$LOG_FILE"
echo ">> Finished sync on $(date --rfc-3339=seconds)" >> "$SYNC_LOGS/$LOG_FILE"
echo "=============================================" >> "$SYNC_LOGS/$LOG_FILE"
echo "" >> "$SYNC_LOGS/$LOG_FILE"

# Die lock-Datei zum Sperren des Script-Durchlaufs löschen und das
# Script beenden
rm -f "$SYNC_LOCK"
exit 0
Das Script muss natürlich ausführbar gemacht werden.
Dann habe ich das Script gestartet und gewartet. Das Script arbeitet seeeehr langsam. Hier bei mir bei der Arbeit mit einer fetten Internet-Leitung kam ich auf eine maximale Download-Rate von ca. 800MB/Stunde. Woran das liegt, weiß ich nicht, vielleicht am rsync-Protokoll? Downloads per FTP von dem gleichen Server laufen auf jeden Fall deutlich schneller, das habe ich mal zwischendurch getestet.
Das Script gibt keinerlei Rückmeldung, solange alles fehlerfrei läuft. Man guckt also zur Überprüfung (oder wenn man nervös wird, so wie ich... ;) ) vielleicht ab und zu im Dateisystem, ob die Download-Verzeichnisse wachsen.
Wenn das Script erfolgreich durch läuft, quittiert es auch ohne weitere Rückmeldung. Aber es schreibt natürlich fleißig in die Log-Dateien, da kann man auch nachsehen.
Zu Hause habe ich dann noch die /etc/pacman.conf angepasst. Ich habe hier für jedes Repository einen "harten" Link auf das entsprechende Verzeichnis eingefügt. Das lässt sich bestimmt geschickter lösen, aber so weit bin ich noch nicht mit dem Thema "scripten unter Linux":

Code: Alles auswählen

#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir     = /
#DBPath      = /var/lib/pacman/
CacheDir = /var/cache/pacman/pkg/
#LogFile     = /var/log/pacman.log
#GPGDir      = /etc/pacman.d/gnupg/
#HookDir     = /etc/pacman.d/hooks/
HoldPkg      = pacman glibc manjaro-system
# If upgrades are available for these packages they will be asked for first
SyncFirst    = manjaro-system archlinux-keyring manjaro-keyring
#XferCommand = /usr/bin/curl -C - -f %u > %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
#UseDelta    = 0.7
Architecture = auto

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg   =
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
#Color
#TotalDownload
# We cannot check disk space from within a chroot environment
CheckSpace
#VerbosePkgLists

# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel    = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required

# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Manjaro Linux
# packagers with `pacman-key --populate archlinux manjaro`.

#
# REPOSITORIES
#   - can be defined here or included from another file
#   - pacman will search repositories in the order defined here
#   - local/custom mirrors can be added here or in separate files
#   - repositories listed first will take precedence when packages
#     have identical names, regardless of version number
#   - URLs will have $repo replaced by the name of the current repo
#   - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
#       [repo-name]
#       Server = ServerName
#       Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#

# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.

[core]
SigLevel = PackageRequired
# Neuer Eintrag für lokalen Mirror auf USB-Stick
Server = file:///run/media/hans/Manjaro-Mirror/mirror/files/stable/core/x86_64/
#
Include = /etc/pacman.d/mirrorlist

[extra]
SigLevel = PackageRequired
# Neuer Eintrag für lokalen Mirror auf USB-Stick
Server = file:///run/media/hans/Manjaro-Mirror/mirror/files/stable/extra/x86_64/
#
Include = /etc/pacman.d/mirrorlist

[community]
SigLevel = PackageRequired
# Neuer Eintrag für lokalen Mirror auf USB-Stick
Server = file:///run/media/hans/Manjaro-Mirror/mirror/files/stable/community/x86_64/
#
Include = /etc/pacman.d/mirrorlist

# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.

[multilib]
SigLevel = PackageRequired
# Neuer Eintrag für lokalen Mirror auf USB-Stick
Server = file:///run/media/hans/Manjaro-Mirror/mirror/files/stable/multilib/x86_64/
#
Include = /etc/pacman.d/mirrorlist

# An example of a custom package repository.  See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

Danach habe ich mittels "pacman -Sy" die lokale Datenbank aktualisiert. Es wurden mir 250 zu aktualisierende Pakete mit einem Download-Volumen von ca. 850MB angezeigt.
Ich habe sicherheitshalber mal den Netzwerkstecker gezogen und dann die System-Aktualisierung mittels "pacman -Syu" angestoßen. Das lief dann sauber und sehr schnell durch - innerhalb von ca. 1,5 Minuten war mein System aktualisiert.
Damit habe ich jetzt eine Lösung, wie ich mit meiner doch recht schmalen Internet-Leitung zu Hause Manjaro regelmäßig updaten kann. Das ist echt super. Ich schätze mal, dass ich das später im laufenden Betrieb vielleicht ein Mal im Monat oder ein Mal in zwei Monaten anschubsen werde - mal sehen.
Ich bedanke mich bei Gosia für die hilfreichen Tipps.
_______
Grüßle,
Hans

Benutzeravatar

gosia
Forum Held
Forum Held
Beiträge: 715
Registriert: Dienstag 24. Mai 2016, 13:33
CPU: Intel i5-3210M
GPU: Intel HD 4000
Kernel: 4.15
DE: Openbox
GPU Treiber: i915
Hat sich bedankt: 5 Mal
Danksagung erhalten: 61 Mal

Re: Offline-Repository auf USB-Stick erstellen

#6

#6 Beitrag von gosia » Donnerstag 17. Januar 2019, 16:19

Hallo Hans,
danke für die interessante Rückmeldung.
ManjaroHans hat geschrieben:
Donnerstag 17. Januar 2019, 14:31
Das Script arbeitet seeeehr langsam. Hier bei mir bei der Arbeit mit einer fetten Internet-Leitung kam ich auf eine maximale Download-Rate von ca. 800MB/Stunde. Woran das liegt, weiß ich nicht, vielleicht am rsync-Protokoll?
800MB/Stunde? Da hast Du ja ca. 40-50 Stunden die Leitung blockiert ;) Kommt mir sehr langsam vor. rsync ist naturgemäß nicht das schnellste Protokoll, vergleichen, eventuell komprimieren und dann muss noch alles durch ein USB2-Nadelöhr, aber so langsam?
Ich konnte bei meinen Versuchen kaum so schnell den Stöpsel ziehen, wie die GB reinflogen, damit es nicht mein monatliches Limit überflutet.
Aber gut, das schlimmste hast Du hinter dir, von jetzt ab geht nur noch um einstellige GB-Zahlen, bei einmal im Monat, schätze ich mal.

viele Grüße gosia

Antworten