View previous topic :: View next topic |
Author |
Message |
pti-rem Guru
Joined: 14 Oct 2011 Posts: 482
|
Posted: Sat Aug 03, 2024 9:25 am Post subject: [miroirs en rsync://] supprimer le MOTD (résolu) |
|
|
Bonjour,
J'ai des adresses de miroirs qui commencent avec rsync:// ; aussi bien pour GENTOO_MIRRORS dans /etc/portage/make.conf que pour sync-uri dans /etc/portage/binrepos.conf/gentoobinhost.conf ; le serveur rsync en question me salue gentiment à chaque emerge mais je voudrais maintenant éviter ce MOTD d'accueil.
J'ai cherché un peu dans le manuel de rsync et je trouve les options :
Quote: | --quiet, -q suppress non-error messages
--no-motd suppress daemon-mode MOTD |
J'ai cherché sur la toile mais je suis noyé dans des résultats relatifs à emerge qui ne m'aident pas. Je vais continuer de chercher et il n'y a pas urgence. Je voudrais trouver la petite modification subtile à faire dans mon système pour y procurer du silence ; je cherche peut-être à utiliser les deux options.
Merci
Code: | rem@nef ~ $ emerge -pq test
Welcome,
This server provides access to free software mirrors. You can access it using
FTP, HTTP or HTTPS.
If you have any unusual problems, or questions please report them via e-mail
to <mirrormaster@ircam.fr>.
You can use rsync for mirroring; if you do so, please contact us beforehand.
Packages
6.624.256 100% 10,56MB/s 0:00:00 (xfr#1, to-chk=0/1)
sent 43 bytes received 6.625.949 bytes 4.417.328,00 bytes/sec
total size is 6.624.256 speedup is 1,00
emerge: there are no ebuilds to satisfy "test".
emerge: searching for similar names...
emerge: Maybe you meant any of these: dev-ml/qtest, dev-cpp/gtest, net-analyzer/tptest?
rem@nef ~ $ |
Code: | rem@nef ~ $ grep -i mirror /etc/portage/make.conf
GENTOO_MIRRORS="rsync://mirrors.ircam.fr/pub/gentoo-distfiles/ \
http://212.27.60.27/mirrors/ftp.gentoo.org/ \
http://ftp.free.fr/mirrors/ftp.gentoo.org/"
rem@nef ~ $ |
Code: | rem@nef ~ $ grep -i sync-uri /etc/portage/binrepos.conf/gentoobinhost.conf
sync-uri = rsync://mirrors.ircam.fr/pub/gentoo-distfiles/releases/amd64/binpackages/23.0/x86-64
rem@nef ~ $ |
_________________ Traduction : le wiki a besoin de vous !
Last edited by pti-rem on Mon Aug 05, 2024 1:45 pm; edited 1 time in total |
|
Back to top |
|
|
netfab Veteran
Joined: 03 Mar 2005 Posts: 1958 Location: 127.0.0.1
|
Posted: Mon Aug 05, 2024 12:42 pm Post subject: |
|
|
Salut,
La sortie que tu voies est générée lorsqu'emerge met à jour le fichier d'index du dépôt des binaires distant (ton gentoobinhost).
C'est le fichier Packages, situé à l'endroit suivant :
Quote: |
/var/cache/edb/binhost/mirrors.ircam.fr/pub/gentoo-distfiles/releases/amd64/binpackages/23.0/x86-64/Packages
|
La commande de téléchargement par défaut pour le protocole rsync est la suivante :
Code: |
rsync -LtvP "${URI}" "${DISTDIR}/${FILE}"
|
Pour arriver à ton but, il suffit de modifier la commande de téléchargement du dépôt.
À ton fichier /etc/portage/binrepos.conf/gentoobinhost.conf, ajoutes --quiet à cette commande par défaut :
Code: |
fetchcommand = rsync -LtvP --quiet "${URI}" "${DISTDIR}/${FILE}"
|
Si tu utilises --no-motd à la place de --quiet tu auras toujours le rapport de téléchargement du fichier :
Code: |
Packages
6.624.256 100% 10,56MB/s 0:00:00 (xfr#1, to-chk=0/1)
|
Last edited by netfab on Wed Aug 07, 2024 5:26 pm; edited 1 time in total |
|
Back to top |
|
|
pti-rem Guru
Joined: 14 Oct 2011 Posts: 482
|
Posted: Mon Aug 05, 2024 1:44 pm Post subject: |
|
|
Salut netfab
Bravo et merci ! C'est exactement ce que je voulais ; tu me laisses (presque) sans voix
Est-ce que avoir la fetchcommand comme tu as indiqué ferait échouer la mise à jour si la sync-uri est modifiée après en utilisant un autre protocole ?
Je me réponds en mettant une sync-uri en http :
Code: | rem@nef ~ $ sudo emerge -qp test
ssh: Could not resolve hostname https: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(231) [Receiver=3.3.0]
Fetcher exited with a failure condition.
Traceback (most recent call last):
File "/usr/lib/python-exec/python3.12/emerge", line 57, in main
retval = emerge_main()
^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/_emerge/main.py", line 1309, in emerge_main
return run_action(emerge_config)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/_emerge/actions.py", line 3506, in run_action
mytrees["bintree"].populate(
File "/usr/lib/python3.12/site-packages/portage/dbapi/bintree.py", line 959, in populate
self._populate_remote(
File "/usr/lib/python3.12/site-packages/portage/dbapi/bintree.py", line 1526, in _populate_remote
raise OSError(f"{setting} failed")
^^^^^^^
UnboundLocalError: cannot access local variable 'setting' where it is not associated with a value
rem@nef ~ $ |
_________________ Traduction : le wiki a besoin de vous ! |
|
Back to top |
|
|
netfab Veteran
Joined: 03 Mar 2005 Posts: 1958 Location: 127.0.0.1
|
Posted: Mon Aug 05, 2024 2:22 pm Post subject: |
|
|
pti-rem wrote: |
Est-ce que avoir la fetchcommand comme tu as indiqué ferait échouer la mise à jour si la sync-uri est modifiée après en utilisant un autre protocole ?
|
Il faut adapter la fetchcommand au protocole utilisé.
Pour http(s) :
Code: |
wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"
|
Les paramètres par défaut utilisés par emerge et qui sont modifiables dans le make.conf sont définis dans /usr/share/portage/config/make.globals. |
|
Back to top |
|
|
pti-rem Guru
Joined: 14 Oct 2011 Posts: 482
|
Posted: Mon Aug 05, 2024 4:31 pm Post subject: |
|
|
J'ai enlevé la fetchcommand spécifique de /etc/portage/binrepos.conf/gentoobinhost.conf
J'ai utilisé quelques paramètres de /usr/share/portage/config/make.globals pour les reporter et les modifier dans le make.conf
Ce qui fait que les protocoles rsync, http et https seront acceptés sans modification à faire.
Je n'ai pas modifié les séquences d'échappement d'origine.
Les FETCHCOMMAND_SSH et FETCHCOMMAND_SFTP sont probablement plus complexes à adapter.
Il ne faut pas lire /etc/portage/make.conf overwrite /usr/share/portage/config/make.globals mais override.
Code: | rem@nef ~ $ grep -i command /etc/portage/make.conf
# Fetching command (3 tries, passive ftp for firewall compatibility)
FETCHCOMMAND="wget -t 3 -T 60 --quiet --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
RESUMECOMMAND="wget -c -t 3 -T 60 --quiet --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
FETCHCOMMAND_RSYNC="rsync -LtvP --quiet \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
RESUMECOMMAND_RSYNC="rsync -LtvP --quiet \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
rem@nef ~ $ |
_________________ Traduction : le wiki a besoin de vous ! |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|