View previous topic :: View next topic |
Author |
Message |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 5:57 am Post subject: [emerge] Creer son propre package... [résolu] |
|
|
Salut a tous.
Alors voila, au Taf j'install beaucoup de server, tous sous gentoo.
J'ai pas mal de package a installer, toujours de la meme maniere... et bien souvent peu importe la version (sauf gros changement)
J'ai par exemple toujours apache, mysql, php5, freeradius...
Ensuite j'ai toujours la meme conf, donc j'ai mes fichiers sur mon server principal, toujours au meme endroit...
Je me disai donc qu'il serait peut etre possible que je cree un package, ou script qui me permettrai d'installer tout ca en 2 fois plus rapide... enfin au moins pour moi !
Si quelqu'un a deja fait, j'aimerai bien un peu d'aide histoire de me lancer...
Merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Last edited by MaKKrO on Tue Jul 04, 2006 1:55 pm; edited 1 time in total |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
kwenspc Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/60652782845d9438939a35.jpg)
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Tue Jul 04, 2006 6:32 am Post subject: |
|
|
L'option "--buildpkg" d'emerge est ton ami
Enfin pour en savoir plus, ce thread assez récent peut t'aider (la méthode du BINHOST) : https://forums.gentoo.org/viewtopic-t-475282.html
En gros, une machine sert à la mise à jour, compilatiom et création des packages, et les autres viennent s'y connecter afin de récupérer les dis paquets binaires. _________________ membre officieux du SAV Ati GEntoo |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
yoyo Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/1382399841473c166bf2c72.jpg)
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Jul 04, 2006 7:02 am Post subject: |
|
|
Tu peux également utiliser la technique du stage4 : http://en.gentoo-wiki.org/HOWTO_Custom_Stage4. Quelques scripts sont fournis.
Enjoy ! _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 7:21 am Post subject: |
|
|
Je pense que ce qui me convient le plus est le buildpkg...
Peut etre changerai-je d'avis plus tard...
Logiquement, si je build mon pkg, que je le met sur un server de chez moi, en runnant un :
Code: |
emerge --usepkg --getbinpkg <mon_pkg>
|
avec dans le make.conf :
Code: |
PORTAGE_BINHOST="http://mon_server/path"
|
Ca devrai rouler... ca me plait bien ca en tout cas.
Le seul petit hic, est-il possible de faire un seul packake tout ???
Parce que je pige pas bien le truc... si je fais
Code: | buildpkg mysql freeradius |
Ca me fait un tbz2 pour chaque package... dans /usr/portage/packages/All
Merci pour vos réponses !
@ yoyo : Le stage 4, je pense que c'est un peu trop lourd pour ce que je veux faire pour l'instant... apres je me trompe peut etre / surment... _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
kwenspc Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/60652782845d9438939a35.jpg)
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Tue Jul 04, 2006 7:30 am Post subject: |
|
|
En effet emerge avec --buildpkg va te créer des archive .tbz2 pour chaque paquet. ça n'en créera pas un seul qui contiendra tous les paquets.
C'est logique car lorsque tu vas utiliser emerge -gK <paquet> il va tout de même vérifier l'atomicité du paquet (sa version, etc...) et l'installer proprement, et ce afin de pouvoir l'unmerger tout aussi proprement par la suite si besoin est.
C'est pour le bien de la machine car même si ce sont des paquets binaires, portage les installe et continu de les gérer comme des paquets qu'il aurait emergé normalement (compilé etc...).
C'est, entre autres, un des nombreux aspects qui fait de portage un outil ultra performant, enfin je trouve. _________________ membre officieux du SAV Ati GEntoo |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 7:59 am Post subject: |
|
|
En fait, si je comprend bien, l'interet va etre : pas de unpack, pas de configure, pas de compil ni install....
Je vais testé ca et vous dire !
En tout cas merci ! _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 1:06 pm Post subject: |
|
|
Bon ba alors la y'a un truc que je ne comprend pas...
tout ca est sensé gagné du temps ou tout ca... mais ca DL quand meme les tar.gz !!!!
Je comprend pas trop la !
J'ai mes .tbz2 sur mon server, j'ai modifié mon make.conf avec l'URL qui va bien...
je pige pas... _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
yoyo Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/1382399841473c166bf2c72.jpg)
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Jul 04, 2006 1:12 pm Post subject: |
|
|
Peut-être pour les digests ... C'est vraiment curieux ...
Enfin, partage ton distfiles (via nfs par exemple) et le tour sera joué !
Mes 0.02 cents
ps : /me qui reste persuadé que la soluce du stage4 aurait été plus simple (pour l'install, pas les mises à jour). ![Razz :P](images/smiles/icon_razz.gif) _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
kwenspc Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/60652782845d9438939a35.jpg)
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Tue Jul 04, 2006 1:12 pm Post subject: |
|
|
tu as bien ces deux variables?:
Code: |
PORTAGE_BINHOST="ton_binhost"
PKGDIR="/usr/portage/packages"
|
utilises emerge -g <le_paquet> pour voir.
Hum sinon vérifis que tu ais bien sur ton binhost le rep /usr/portage/packages avec dedans un rep All et tous les autres rep de catégories portage. Si oui, alors mets en place une procédure qui sur les autres machines récupères le contenu de /usr/portage/packages du binhost pour le mettre chez elles.
à partir de là ça devrait aller. Sinon demande de l'aide à la personne qui a créer un binhost dans le liens que je t'ai fournit plus haut.
[edit] +1 pour le partage de portage via nfs [/edit] _________________ membre officieux du SAV Ati GEntoo |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 1:22 pm Post subject: |
|
|
Bon, je viens de rajouter dans mon make.conf :
Code: |
PKGDIR="/usr/portage/packages" |
Mais je ne comprend toujours pas l'interet !
A quoi sert le PORTAGE_BINHOST si je dois avoir les tbz2 dans /usr/portage/packages/All de mon server local (celui ou y'a encore rien)??????
Je n'avais pas le /usr/portage/packages/All sur le BIN HOST. Mais je pensais que si je mettai le path qui allait bien dans le make.conf, ca devrai rouler nan ??????????
je vous met tout :
make.conf :
Code: |
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
USE=" -X mysql apache freeradius pam ssl xml -kde -gnome xml2"
ACCEPT_KEYWORDS="~x86"
PORTAGE_BINHOST="http://<mon_server/Package-Bin/"
PKGDIR="/usr/portage/packages"
|
Sur mon BIN_HOST :
Code: |
linowave Package-Bin # ls -l
total 21180
-rw-r--r-- 1 root root 1177794 Jul 4 14:54 apache-2.0.58.tbz2
-rw-r--r-- 1 root root 108095 Jul 4 14:54 chillispot-1.0.tbz2
-rw-r--r-- 1 root root 1145797 Jul 4 14:54 freeradius-1.1.1-r1.tbz2
-rw-r--r-- 1 root root 274975 Jul 4 14:54 iptables-1.3.5-r1.tbz2
-rw-r--r-- 1 root root 15030777 Jul 4 14:54 mysql-4.1.20.tbz2
-rw-r--r-- 1 root root 1215499 Jul 4 14:54 ntp-4.2.0.20040617-r3.tbz2
-rw-r--r-- 1 root root 2700159 Jul 4 14:54 php-5.1.4.tbz2
|
Essai :
Code: | localhost ~ # emerge -g mysql
Fetching binary packages info...
Loaded metadata pickle.
cache miss: 'x' --- cache hit: 'o'
ooooooo
-- DONE!
Calculating dependencies ...done!
>>> emerge (1 of 1) dev-db/mysql-5.0.22 to /
>>> Downloading http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
--17:26:59-- http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
=> `/usr/portage/distfiles/mysql-5.0.22.tar.gz'
Resolving distfiles.gentoo.org... 64.50.236.52, 64.50.238.52, 216.165.129.135, ...
Connecting to distfiles.gentoo.org|64.50.236.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 19,542,405 (19M) [application/x-gzip]
2% [> ] 393,565 200.91K/s
|
?? Any suggestions ? ![Confused :?](images/smiles/icon_confused.gif) _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
blasserre Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/2197240445d8c83fc02fc.jpg)
Joined: 10 Feb 2004 Posts: 1362 Location: Lille, Vlaanderen
|
Posted: Tue Jul 04, 2006 1:37 pm Post subject: |
|
|
MaKKrO wrote: |
Code: |
linowave Package-Bin # ls -l
total 21180
-rw-r--r-- 1 root root 1177794 Jul 4 14:54 apache-2.0.58.tbz2
-rw-r--r-- 1 root root 108095 Jul 4 14:54 chillispot-1.0.tbz2
-rw-r--r-- 1 root root 1145797 Jul 4 14:54 freeradius-1.1.1-r1.tbz2
-rw-r--r-- 1 root root 274975 Jul 4 14:54 iptables-1.3.5-r1.tbz2
-rw-r--r-- 1 root root 15030777 Jul 4 14:54 mysql-4.1.20.tbz2
-rw-r--r-- 1 root root 1215499 Jul 4 14:54 ntp-4.2.0.20040617-r3.tbz2
-rw-r--r-- 1 root root 2700159 Jul 4 14:54 php-5.1.4.tbz2
|
Essai :
Code: | localhost ~ # emerge -g mysql
Fetching binary packages info...
Loaded metadata pickle.
cache miss: 'x' --- cache hit: 'o'
ooooooo
-- DONE!
Calculating dependencies ...done!
>>> emerge (1 of 1) dev-db/mysql-5.0.22 to /
>>> Downloading http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
--17:26:59-- http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
=> `/usr/portage/distfiles/mysql-5.0.22.tar.gz'
Resolving distfiles.gentoo.org... 64.50.236.52, 64.50.238.52, 216.165.129.135, ...
Connecting to distfiles.gentoo.org|64.50.236.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 19,542,405 (19M) [application/x-gzip]
2% [> ] 393,565 200.91K/s
|
?? Any suggestions ? ![Confused :?](images/smiles/icon_confused.gif) |
essaye de demander la même version emerge -av mysql-4.1.20
si emerge voit que mysql-5.0.22 est la dernière version et que tu ne l'as pas dans tes packages, il va emerger la dernière normalement sans se soucier des packages précompilés
enfin c'est une supposition je n'ai jamais tenté le coup _________________ benj
technicien professionnel, ascendant winner |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 1:45 pm Post subject: |
|
|
Bon et bien ca a l'air de marcher.
Le problème semble etre la version... A priori si le bin pkg est plus vieux que celui de portage, il ne check pas les packages précompilés...
Je pense que c'est ca...
Je vais voir avec tous les packages et testé le système !
Merci a vous !
[edit]
J'ai ca :
Code: |
>>> emerge (2 of 2) dev-lang/php-5.1.4 to /
>>> extracting info
/usr/lib/portage/bin/ebuild.sh: line 1765: /var/db/pkg/dev-lang/php-5.1.4/php-5.1.4.ebuild: No such file or directory
!!! ERROR: dev-lang/php-5.1.4 failed.
!!! Function , Line 1765, Exitcode 1
!!! error sourcing ebuild
!!! If you need support, post the topmost build error, NOT this status message.
>>> extracting php-5.1.4
>>> Merging dev-lang/php-5.1.4 to /
--- /etc/
--- /etc/php/
--- /etc/php/apache2-php5/
|
Ca a l'air de marcher quand meme.....
[/edit] _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
MaKKrO Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
![](images/avatars/12930895184393ed4b449ad.jpg)
Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Jul 04, 2006 1:56 pm Post subject: |
|
|
Ca marche parfaitement...
Merci beaucoup a vous : kwenspc, blasserre et yoyo _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
|