Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Raspberry pi (4 / 4g) et Gentoo (en cours)
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
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Fri Sep 13, 2019 2:40 pm    Post subject: Raspberry pi (4 / 4g) et Gentoo (en cours) Reply with quote

Bonjour !

Je viens d'acquérir le Raspberry Pi 4 (version 4 G de ram) pour m'en faire un serveur web à la maison.
Pour ce faire j'ai acheté une carte sd (Carte MicroSD 128Go Classe 10 SanDisk) afin de pouvoir y mettre un OS, et j'ai choisi Gentoo :mrgreen:

Après quelques recherches j'ai pû mettre assez facilement en place un serveur web, via le travail de Sakaki, encore merci à lui/elle !

Mais maintenant que c'est en place ben je remarque que j'ai carrément zappé la phase tests du Raspberry, et actuellement je me demande si hormis la technique officielle Gentoo (à laquelle je ne comprend strictement rien !) il n'y aurait pas moyen d'installer Gentoo autrement (surtout de manière compilée).
Il y a bien cette information que j'ai trouvé, mais sans plus...
J'imagine que certains s'y sont mit, si vous pouviez échanger s'il vous plait... :roll:

Je vous remercie.

Cordialement, Skwal.


Last edited by Skwal on Tue Sep 24, 2019 1:25 pm; edited 3 times in total
Back to top
View user's profile Send private message
YetiBarBar
Guru
Guru


Joined: 23 Dec 2005
Posts: 500

PostPosted: Fri Sep 13, 2019 6:12 pm    Post subject: Reply with quote

Bonjour,

Les docs que tu pointes me semble plutôt bons pour ce type de cross-compilation et d'installation.

Essaie de les comprendre un maximum et n'hésite pas à poser des questions sur les points que tu comprends pas (c'est quoi crossdev, ça sert à quoi un .dto). Il y a des différences dans la construction d'un linux pour arm qu'il va falloir comprendre et rien que formuler la question et "googler" la question vont t'aider à comprendre cette philosophie.

Un point à noter cependant, la cross-compilation depuis ta machine x86_64, tu n'as pas envie de t'en passer (ou alors tu as quelques années devant toi avant d'utiliser ta belle RPI).
Back to top
View user's profile Send private message
xaviermiller
Administrator
Administrator


Joined: 23 Jul 2004
Posts: 8081
Location: ~Brussels - Belgique

PostPosted: Fri Sep 13, 2019 7:05 pm    Post subject: Reply with quote

Hello,

Un autre point à prendre en considération : une carte SD va mourir en moins de deux si tu l'utilises pour compiler. Une carte SD ne permet pas autant de réécritures qu'un disque dur mécanique ou SSD.
Je te conseilles de monter /var/tmp/portage en tmpfs (surtout si tu as 4 G de ram, c'est énorme), ou sur un disque externe (USB, nfs, ...).

La cross-compilation est très intéressante, je le fais déjà pour un raspberry pi 1 (256M de RAM) et un Helios4 (même si là je compile nativement tellement cette machine a un bon processeur et I/O's)

Bonne (cross-)compilation !
_________________
Kind regards,
Xavier Miller
Back to top
View user's profile Send private message
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Sun Sep 15, 2019 5:09 pm    Post subject: Reply with quote

Bonjour :D

Je vous remercie pour vos conseils et recommandations !

Je prend bien note que la carte SD serat moins performante qu'un ssd / sata, du coup je vais suivre allègrement vos conseils au niveau tmpfs.
Je vais me renseigner pour monter tout ça et viendrait en faire un retour. :wink:

Encore merci !

Cordialement, Skwal.

Edition:


N'arrivant pas et passant beaucoup de temps sur la cross-compilation j'abandonne pour le moment. Possédant 2 cartes sd je m'entrainerai plus tard, pour le moment l'excellent travail de Sakaki me permet de mettre rapidement en place Gentoo.
Encore merci pour votre aide ! ;)

Cordialement, Skwal.
Back to top
View user's profile Send private message
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Tue Sep 24, 2019 1:51 pm    Post subject: Reply with quote

Et bonjour !

Après quelques jours sur le serveur faisant tourner Gentoo via le travail de Sakaki j'ai eu une mauvaise surprise ce matin en voulant me connecter à mon site web tournant dessus:
Quote:
Attention : un problème technique (serveur SQL) empêche l’accès à cette partie du site. Merci de votre compréhension.


Du coup je me connecte en ssh et tente simplement de relancer MariaDB:
Quote:
* Checking mysqld configuration for mysql ...
/usr/sbin/mysqld: /usr/lib/gcc/aarch64-unknown-linux-gnu/8.3.0/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /usr/sbin/mysqld)
* mysql config check failed [ !! ]
* ERROR: mysql failed to start

J'en ai fait un sujet: https://forums.gentoo.org/viewtopic-t-1102178.html
Ne trouvant pas de solution à mon problème j'en ai discuté avec Palatin sur le chat IRC #gentoofr:

Quote:

[14:03]<Skwal> Bonjour
[14:05] <Skwal> Je suis actuellement bloqué sur une installation serveur (Raspberry pi 4 / sakaki) par GCC. Est-ce que quelqu'un aurait une idée s'il vous plait ? https://forums.gentoo.org/viewtopic-t-1102178.html
[14:05] <Skwal> J'ai beau cherché mais je n'ai rien trouvé qui puisse m'orienter...
[14:08] <palatin> quelles versions de gcc, glibc d'installées ?
[14:09] <palatin> gcc-config -l donne quoi
[14:09] <Oleti> c'est pas de l'arm le pi 4 ?
[14:12] <Skwal> Merci de vous pencher sur mon cas ! Alors gcc est la version 8.3.0, glibc est en version 2.29-r4 et oui Raspberry c'est de l'arm64 ^^
[14:12] <palatin> arm64 je suppose
[14:12] <palatin> t'utilise un distcc ?
[14:13]<Skwal> Franchement je ne saurais dire... Je regarde
[14:14]<Skwal> Apparement non, un "emerge --info" me sort (parmi d'autres) cette ligne: distcc 3.3.3 aarch64-unknown-linux-gnu [disabled]
[14:16]<Skwal> C'est depuis une mise à jour hier que ça me fait ça, avant je n'avais pas ce problème : /
[14:18] <Case_Of> que contenait cette mise à jour?
[14:19]<Skwal> Je n'ai pas fait attention...
[14:20] <Case_Of> /var/log/emerge.log si tu cherches
[14:20] <Skwal> Merci, je regarde
[14:22] <Skwal> Apparement y a plus, j'ai ré-emergé le système plusieurs fois aujourd'hui en espérant résoudre le problème via les commandes conseillées sur le wiki
[14:22] <Skwal> emerge --ask --emptytree --usepkg=n @system
[14:22] <Skwal> emerge --ask --emptytree --usepkg=n @world
[14:24] <palatin> t'as installé des packages précompilés à un moment ?
[14:24] <Skwal> Oui, cette installation n'est faite que de binaires quasiment
[14:26] <Skwal> J'ai chopé l'image de sakaki: https://github.com/sakaki-/gentoo-on-rpi-64bit
[14:26] <palatin> t'as réinstallé mysqld aussi ?
[14:27] <Skwal> Non, je ne pensais pas en avoir besoin
[14:27] <palatin> t'as pas le choix
[14:27] <Skwal> Comme y a aussi eix qui me sort cette erreur je dois également l'emerger ?
[14:28] <Skwal> Ah ben je ne peux pas, il n'est pas dans la liste des paquets
[14:28] <palatin> tous tes softs binaire en c++ dépendent d'un vieux gcc dont la libstdc++ a changé d'abi
[14:28] <Skwal> Ah : /
[14:28] <palatin> oui eix c'est du c++ aussi
[14:29] <palatin> de toute façon, gentoo c'est pas fait pour utiliser quasiment que du binaire, ça va passer son temps à pêter
[14:29] <Skwal> D'accord, merci Palatin ! Donc le mieux ce serait pas passer par Raspian du coup ?
[14:30] <palatin> à priori faudrait lancer une commande du style: revdep-rebuild --library 'libstdc++.so.6' -- --exclude gcc --usepkg=n -a
[14:30] <palatin> mais avec l'arbre portage officiel
[14:31] <Skwal> Donc il me faudrait modifier le make.conf ? Y ajouter les dépôts officiels et effectué la commande que tu me communiques ?
[14:31] <palatin> le pi4 est assez puissant non ? t'as combien de RAM ?
[14:31] <Skwal> Il a 4 GB
[14:31] <Skwal> Mais il tourne sur une carte sd
[14:31] <palatin> arf, tu peux utiliser une vraie gentoo là dessus à priori. ou une raspbian
[14:31] <palatin> compile sur un tmpfs alors
[14:32] <palatin> sur ma cubox avec 1Go de RAM c'est ce que je fais. c'est un armv7a 1 cœur à 800Mz qui a 6 ans
[14:33] <Skwal> Ben j'ai installé pas mal de trucs dessus (nginx, dns,mariadb...), j'adore Gentoo donc je preferai la garder mais si ça me fait pouvoir disposer du serveur dans plusieurs mois... :p
[14:33] <Skwal> D'accord, pour compiler dans la ram alors ?
[14:33] <palatin> et seuls glibc, gcc, go en gentoo-sources ne passent pas en tmpfs
[14:34] <palatin> nginx c'est léger à compiler. Moins de 10 min sur mon arm
[14:34] <Skwal> Sur le Raspberry avec 4G de RAM ça pourrait passer tu penses ?
[14:35] <palatin> oui je pense
[14:35] <palatin> la seule inconnue pour moi c'est mariadb/mysql, je sais pas si c'est du lourd à compiler
[14:35] <Skwal> Je suis largué du coup ^^ Est-ce qu'il est possible de garder cette installation tout en la remettant d'applomb ?
[14:35] <palatin> oui à priori
[14:36] <palatin> mais si tu le sens pas, passe à raspbian
[14:36] <Skwal> J'ai désactivé bindist pour pouvoir installer des paquets, ça pourrait avoir un rapport ?
[14:36] <palatin> non
[14:37] <Skwal> Ben j'adore Gentoo mais j'aimerai bien me remettre sur mes projets perso assez rapidement
[14:37] <palatin> part sur une raspbian alors, un serveur est pas censé être le projet perso mais un outil
[14:38] <Skwal> Un outil d'apprentissage déjà, tout allait bien avant ce problème hier
[14:39] <palatin> perso je pense que c'est "solutions" binaires pour gentoo c'est pas rentable. Ça marche peut-être plus vite au début mais après c'est la galère. Tu perds l'intérêt principal de Gentoo qui est une constitence garantie des abi
[14:40] <Skwal> Je m'y suis mit car je n'arrivai pas à comprendre la cross compilation, mais du coup je pense que je vais retenter de me pencher dessus
[14:41] <palatin> Ça a été facile d'obtenir un rPi4 ? tout le monde a dû se jeter dessus
[14:41] <Skwal> Je l'ai acheté au début du mois sur Kubii, je l'ai eu rapidement, ça a été facile oui ^^
[14:42] <Skwal> Ils n'étaient pas en rupture, même sur la version 4G
[14:43] <Skwal> Si je te communique le make.conf, est-ce que tu penses stp pouvoir me passer les informations nécessaires pour faire les changements et tout recompiler en tmpfs ? Ca pourrait regler le problème et avoir une Gentoo compilée ?
[14:44] <palatin> ça se passe dans /etc/portage/repos.conf maintenant
[14:44] <palatin> le tmpfs c'est un réglage dans le fstab
[14:45] <Skwal> Ah... Je me suis mit à Gentoo y a quelques mois et j'ai toujours travaillé sur le make.conf, c'est ce qu'indiquai le wiki
[14:45] <Skwal> pour le tmpf s j'ai rajouté ca dans mon /etfstab: /dev/shm /tmp tmpfs defaults,nosuid,nodev,noexec 0 0
[14:45] <palatin> mets ça dans le fstab: tmpfs /var/tmp/portage tmpfs nr_inodes=1M,noatime,nodiratime,mode=0775,uid=portage,gid=portage 0 0
[14:46] <palatin> ta ligne c'est pour le dossier temporaire
[14:46] <Skwal> Merci, je peux la garder dans le fstab en rajoutant la tienne ?
[14:46] <palatin> oui
[14:47] <Skwal> Je fais ça et je redémarre le serveur ^^
[14:47] <palatin> tiens, regarde cet article : https://wiki.gentoo.org/wiki/Portage_TMPDIR_on_tmpfs
[14:47] <palatin> ça permet d'épargner la carte SD
[14:48] <Skwal> Ah ben elle a dû bien morfler alors
[14:49] <palatin> j'ai un SSD sur mon arm perso
[14:49] <Skwal> J'y pense mais j'ai pas les moyens pour le moment ^^
[14:49] <palatin> et repos.conf : https://wiki.gentoo.org/wiki//etc/portage/repos.conf
[14:50] <Skwal> Merci encore, je tiens à sauver/réparer cette installation car j'ai beaucoup travaillé dessus
[15:08] <Skwal> Merci Palatin, j'en conclus que si je veux Gentoo sur mon Raspberry ben pas le choix je dois me mettre à la cross compilation...
[15:09] <Skwal> https://wiki.gentoo.org/wiki/User:NeddySeagoon/Raspberry_Pi4_64_Bit_Install
[15:09] <palatin> non
[15:10] <palatin> ça n'a quasiment aucun intérêt la cross compilation x86 vers arm. C'est lent, ça bug et chiant à gérer car ça pête sur pas mal de packages
[15:10] <Skwal> Ah
[15:10] <palatin> par contre si t'as un cluster de plusieurs arm identiques, le distcc c'est bien
[15:11] <Skwal> Je lis, mais je ne connais pas
[15:11] <Skwal> Ok j'ai la page du wiki
[15:12] <Skwal> Et en base pour le distcc tu me conseilles de garder le systme Gentoo actuel que j'ai sur le pi ou une base plus "saine " ?
[15:14] <Skwal> Je regarde dans ce sens alor
[15:15] <palatin> distcc faut oublier si t'as qu'un seul rpi4
[15:15] <Skwal> C'est ce que je viens de lire
[15:16] <palatin> même avec un i7 à côté c'est pas rentable pour moi en tout cas
[15:17] <Skwal> J'ai l'impression d'avoir un problème insoluble du coup
[15:17] <Skwal> Oublier Gentoo sur le RPI ?
[15:17] <palatin> non, avec distcc
[15:19] <Skwal> Alors j'avais préparé mon pc de bureau avec un environnement de cross compilation, un eselect binutils list me donne:
[15:19] <Skwal> [1] aarch64-unknown-linux-gnu-2.32 *
[15:19] <Skwal> [2] x86_64-pc-linux-gnu-2.32 *
[15:19] <Skwal> sur le pc de bureau, sur le pi un eselect binutils list me donne : [1] aarch64-unknown-linux-gnu-2.32 *
[15:20] <Skwal> J'en déduis que du coup le seul pc que j'ai en dehors du rpi peut, grâce à cet environnement, me permettre d'utiliser distcc. Je comprend bien ?
[15:23] <Skwal> Je ne vais plus essayer de comprendre pour aujourd'hui, je vais m’aérer la tête car là je sature. Je te remercie pour les informations, je vais creuser dans ce sens là plus tard
[15:23] <Skwal> Merci encore, je repasserai plus tard ;)


Et maintenant je suis complètement largué !
Que puis-je faire pour avoir Gentoo sur mon RPi ? Passer par la cross compilation, distcc ?
Si encore je pouvais démarrer du livecd (usb) ca me semblerait bien plus propre, en tout cas ce serait une installation personnalisée selon mes besoins avec un noyau compilé sur mesure.
Est-il possible de juste installer le noyau arm64 sur la carte sd et se connecter en ssh au Raspberry pour faire une installation minimaliste ?
En espérant que vous puissiez m'aider à y voir plus claire...

Je vous remercie, cordialement.

Skwal.
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1699
Location: 127.0.0.1

PostPosted: Thu Sep 26, 2019 9:06 am    Post subject: Reply with quote

La question est : pourquoi veux-tu absolument gentoo sur ton Rasp ?

Je n'ai pas de Rasp, j'ai une cubieboard2.
À une époque j'avais gentoo dessus et oui, j'utilisais principalement la cross-compilation + distcc pour y parvenir.
Cela fonctionnait, mais par moment c'était énormément de travail pour la maintenir. Tous les paquets ne peuvent pas se cross-compiler, et certains même ne peuvent pas utiliser distcc. Sans compter les 2 ou 3 bugs rigolos sur lesquels je suis tombé. J'ai maintenu ce système pendant quelques années, jusqu'à la goutte qui fasse déborder le vase : une mise à jour kernel que je n'ai jamais réussi à effectuer. Depuis, j'ai passé ce système sur arch.

As-tu de l'expérience avec Gentoo ? Si non, je ne te conseille pas de commencer Gentoo en faisant de la cross-compilation pour un tel système. Cela risquerait de te décourager.

xaviermiller wrote:

Un autre point à prendre en considération : une carte SD va mourir en moins de deux si tu l'utilises pour compiler. Une carte SD ne permet pas autant de réécritures qu'un disque dur mécanique ou SSD.
Je te conseilles de monter /var/tmp/portage en tmpfs (surtout si tu as 4 G de ram, c'est énorme), ou sur un disque externe (USB, nfs, ...).

Et j'ajouterai ceci : pour les partitions montées sur cartes SD, si vous utilisez le système de fichier ext4, dans le fstab, utiliser l'option commit (moi j'utilise commit=600) :
Quote:

commit=nrsec (*) Ext4 can be told to sync all its data and metadata
every 'nrsec' seconds. The default value is 5 seconds.
This means that if you lose your power, you will lose
as much as the latest 5 seconds of work (your
filesystem will not be damaged though, thanks to the
journaling). This default value (or any low value)
will hurt performance, but it's good for data-safety.
Setting it to 0 will have the same effect as leaving
it at the default (5 seconds).
Setting it to very large values will improve
performance.
Back to top
View user's profile Send private message
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Thu Sep 26, 2019 9:55 am    Post subject: Reply with quote

Bonjour :)

Quote:
La question est : pourquoi veux-tu absolument gentoo sur ton Rasp ?


Ben c'est pour avoir un système aux petits oignons, ne faire tourner que ce qui m'est nécessaire, sans plus.
De plus Gentoo est la seule distribution sans systemd: je n'en veux pas.

Quote:
À une époque j'avais gentoo dessus et oui, j'utilisais principalement la cross-compilation + distcc pour y parvenir.

Actuellement je suis en phase d'apprentissage sur la cross compilation, je compte bien évidement me mettre également à utiliser distcc.

Quote:
Cela fonctionnait, mais par moment c'était énormément de travail pour la maintenir. Tous les paquets ne peuvent pas se cross-compiler, et certains même ne peuvent pas utiliser distcc. Sans compter les 2 ou 3 bugs rigolos sur lesquels je suis tombé. J'ai maintenu ce système pendant quelques années, jusqu'à la goutte qui fasse déborder le vase : une mise à jour kernel que je n'ai jamais réussi à effectuer. Depuis, j'ai passé ce système sur arch.


Je te tente le coup, ça me ferait super plaisir d'y arriver ! Au pire je me loupe et verrai d'autres alternatives mais je tiens absolument à avoir Gentoo.

Quote:
Et j'ajouterai ceci : pour les partitions montées sur cartes SD, si vous utilisez le système de fichier ext4, dans le fstab, utiliser l'option commit (moi j'utilise commit=600) :


Je te remercie pour le conseil. ;)
Je pense que la seule façon d'avoir ce que je souhaite est de passer par la cross-compilation/distcc. En attendant c'est très formateur.
:mrgreen:
Back to top
View user's profile Send private message
xaviermiller
Administrator
Administrator


Joined: 23 Jul 2004
Posts: 8081
Location: ~Brussels - Belgique

PostPosted: Thu Sep 26, 2019 10:15 am    Post subject: Reply with quote

Personnellement, j'évite distcc car plusieurs paquets ne passent pas. Je préfère utiliser un chroot QEMU, qui permet de compiler "nativement" ton système, créer les paquets binaires et les pousser dans ton raspi (perso, le raspi démarre sur NFS, donc le chroot est celui du raspi).
et crossdev pour générer gcc/glibc, le reste a aussi des soucis avec crossdev (des binaires dans le format de la machine hôte)
_________________
Kind regards,
Xavier Miller
Back to top
View user's profile Send private message
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Thu Sep 26, 2019 1:20 pm    Post subject: Reply with quote

Bonjour xaviermiller,

Merci pour les recommandations ! Actuellement je suis en plein apprentissage dans ce sens, j'ai survolé QEMU mais pour l'instant je n'arrive pas à comprendre son fonctionnement, j'apprends déjà à installer Gentoo sur le rpi via la cross-compilation (https://wiki.gentoo.org/wiki/User:NeddySeagoon/Raspberry_Pi4_64_Bit_Install).

Ca a l'air super intéressant tout ça !

Edition:
Bon pour l'instant j'arrive à rien via la cross-compilation, ma faute... Je jete un oeil à QEMU !
Back to top
View user's profile Send private message
Skwal
n00b
n00b


Joined: 07 Jun 2019
Posts: 49

PostPosted: Fri Sep 27, 2019 5:31 pm    Post subject: Reply with quote

Bonsoir :)

Bon ben c'est cool, la cross compilation fonctionnait, le problème venait de la partition de boot pour je ne sais quelle raison...
Je me penche maintenant sur QEMU mais j'ai pour l'instant du mal à en comprendre le principe.

En gros on compile sur le pc avec le client QEMU qui va l'envoyer sur le serveur source ?

Merci en tout cas j'y vois plus clair et c'est cool !
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