Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[miroirs en rsync://] supprimer le MOTD (résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 488

PostPosted: Sat Aug 03, 2024 9:25 am    Post subject: [miroirs en rsync://] supprimer le MOTD (résolu) Reply with quote

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 ! - #Nepasdéranger #Nefaitesrien Îlotdenature.fr


Last edited by pti-rem on Mon Aug 05, 2024 1:45 pm; edited 1 time in total
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1958
Location: 127.0.0.1

PostPosted: Mon Aug 05, 2024 12:42 pm    Post subject: Reply with quote

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
View user's profile Send private message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 488

PostPosted: Mon Aug 05, 2024 1:44 pm    Post subject: Reply with quote

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 ! - #Nepasdéranger #Nefaitesrien Îlotdenature.fr
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1958
Location: 127.0.0.1

PostPosted: Mon Aug 05, 2024 2:22 pm    Post subject: Reply with quote

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
View user's profile Send private message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 488

PostPosted: Mon Aug 05, 2024 4:31 pm    Post subject: Reply with quote

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 ! - #Nepasdéranger #Nefaitesrien Îlotdenature.fr
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
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