
{"id":149,"date":"2015-03-21T05:54:33","date_gmt":"2015-03-21T05:54:33","guid":{"rendered":"http:\/\/192.168.1.32\/?p=149"},"modified":"2024-09-08T15:52:35","modified_gmt":"2024-09-08T14:52:35","slug":"installer-un-miroir-local","status":"publish","type":"post","link":"https:\/\/tty.tartux.net\/?p=149","title":{"rendered":"Installer un miroir local"},"content":{"rendered":"<p>Autant commencer par le serveur apache vu que c'est lui qui, au final, travaillera le plus.<\/p>\n<p>Donc un serveur apache fonctionnel, je reviendrai sur la configuration du VirtualHost.<\/p>\n<p>J'essaye avec mon user mais pour bien faire, il faudrait un utilisateur sans pouvoir et sans home:<\/p>\n<blockquote><p>#adduser --home=\/pub\/mirror --no-create-home --disabled-password mirror<\/p><\/blockquote>\n<p>On installe git si \u00e7a n'est pas fait :<\/p>\n<blockquote><p>#apt install git<\/p><\/blockquote>\n<p>puis :<\/p>\n<blockquote><p>git clone https:\/\/salsa.debian.org\/mirror-team\/archvsync.git \/home\/mirror<\/p><\/blockquote>\n<p>On change les droits de \/home\/mirror :<\/p>\n<blockquote><p>#chown -R user:user \/home\/mirror<\/p><\/blockquote>\n<p>On va dans \/home\/mirror\/etc et on copie l'exemple de config de ftpsync :<\/p>\n<blockquote><p>cp ftpsync.conf.sample ftpsync-main.conf<\/p><\/blockquote>\n<p>puis on edite et\/ou d\u00e9commente les lignes suivantes de cette fa\u00e7on :<\/p>\n<blockquote><p><code>MIRRORNAME=\"mirror.tartux.net\"<br \/>\nTO=\"\/home\/mirror\/debian\/\"<br \/>\nRSYNC_PATH=\"debian\"<br \/>\nRSYNC_HOST=\"ftp.fr.debian.org\"<br \/>\nMAILTO=\"user\"<br \/>\nERRORSONLY=\"true\"<br \/>\nFULLLOGS=\"true\"<br \/>\nEXCLUDE=\"\"<br \/>\nARCH_EXCLUDE=\"alpha arm arm64 armel armhf hppa hurd-i386 i386 ia64 kfreebsd-amd64 kfreebsd-i386 m68k mipsel mips powerpc ppc64el s390 s390x sh sparc\"<br \/>\nLOGROTATE=14<br \/>\nLOCK=\"${TO}\/Archive-Update-in-Progress-debian-${MIRRORNAME}\"<br \/>\nRSYNC_OPTIONS1=\"--exclude=Packages* --exclude=Sources* --exclude=Release* --exclude=InRelease --exclude=i18n\/* --exclude=ls-lR*\"<br \/>\n#RSYNC_OPTIONS2=\"--max-delete=40000 --delay-updates --delete --delete-after --delete-excluded\"<\/code><\/p><\/blockquote>\n<p>La ligne RSYNC_OPTIONS2 est \u00e0 d\u00e9commenter \u00e0 la seconde passe, de m\u00eame, j'ai comment\u00e9 la ligne \u00a0RSYNC_OPTIONS1 avant cette passe.<\/p>\n<p>On lance ensuite la commande<\/p>\n<blockquote><p>\/home\/mirror\/bin\/ftpsync sync:archive:main<\/p><\/blockquote>\n<p>Je n'ai pas r\u00e9ussi \u00e0 scinder squeeze, wheezy et jessie (oldstable, stable et testing). Les d\u00e9p\u00f4ts Sid et experimental sont l\u00e0 \u00e9galement. Il faut compter une quarantaine d'heure (avec 1 Go de RAM) de t\u00e9l\u00e9chargement et environ 310 Go pour les d\u00e9p\u00f4ts principaux debian, debian-update, debian-proposed-updates et debian-backports.<\/p>\n<p>Pour security.debian.org, une vingtaine de Go et 2h30 de t\u00e9l\u00e9chargement, le module est debian-security (RSYNC_PATH).<\/p>\n<p>Pour deb-multimedia.org, le module s'appelle deb, le d\u00e9p\u00f4t fait 5\u00a0Go soit 40 minutes\u00a0de t\u00e9l\u00e9chargement.<\/p>\n<p><strong>\u00a0Serveur apache :<\/strong><\/p>\n<p>la configuration apache que j'ai mise est celle-ci:<\/p>\n<blockquote><p>&lt;VirtualHost *:80&gt;<br \/>\nServeurName mirror.tartux.net<br \/>\nDocumentRoot \/home\/mirror<br \/>\n&lt;Directory \/home\/mirror&gt;<br \/>\nOptions +Indexes +SymlinksIfOwnerMatch<br \/>\nIndexOptions NameWidth=* +SuppressDescription<br \/>\n#?AllowOverride none<br \/>\nRequire all granted<br \/>\nOrder allow,deny<br \/>\nAllow from all<br \/>\n&lt;\/Directory&gt;<br \/>\n&lt;\/VirtualHost&gt;<\/p><\/blockquote>\n<p>Un red\u00e9marrage apache et le miroir est fonctionnel.<\/p>\n<p>Reste le sources.list \u00e0 configurer :<\/p>\n<blockquote><p>deb http:\/\/mirror.tartux.net jessie main contrib non-free<br \/>\ndeb-src http:\/\/mirror.tartux.net jessie main contrib non-free<\/p><\/blockquote>\n<p>Et le cron \u00e0 \u00e9crire, les d\u00e9p\u00f4ts sont mis \u00e0 jour toutes les 6 heures chez Debian, je d\u00e9cale le tout d'une heure :<\/p>\n<blockquote><p>30 4\/6 * * * \/home\/user\/Git\/bin\/ftpsync sync:archive:security<br \/>\n0 4\/6 * * * \/home\/user\/Git\/bin\/ftpsync\u00a0sync:archive:debian<\/p><\/blockquote>\n<p>Je ne vois rien \u00e0 ajouter mais on ne sait jamais !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Autant commencer par le serveur apache vu que c'est lui qui, au final, travaillera le plus. Donc un serveur apache fonctionnel, je reviendrai sur la configuration du VirtualHost. J'essaye avec mon user mais pour bien faire, il faudrait un utilisateur sans pouvoir et sans home: #adduser --home=\/pub\/mirror --no-create-home --disabled-password mirror On installe git si \u00e7a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[69,30],"tags":[51,68,71,39,67],"class_list":["post-149","post","type-post","status-publish","format-standard","hentry","category-depots","category-paquet","tag-apache","tag-apt","tag-cron","tag-depots","tag-miroir"],"_links":{"self":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=149"}],"version-history":[{"count":12,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/149\/revisions"}],"predecessor-version":[{"id":760,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/149\/revisions\/760"}],"wp:attachment":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}