Cette espace vous permet de voir toutes les Voir les messages réalisées par ce membre. Vous ne pouvez voir que les Voir les messages réalisées dans les espaces auxquels vous avez accès.
zypper se python3 | less # Recherche + navigation dans la liste zypper if python3 # Affiche des informations zypper info --requires python3 # Liste les dépendances
je ́n’utilise jamais sudo, je me connecte en su - Un petit conseil: consulter le manuel,man zypper. C’est le meilleur endroit pour voir entre autre toutes les multiples possibilités de zypper.
C'est une option et une pratique assez diverses chez les utilisateurs de Linux. Certaines distributions préconise : su ou sudo.
Dans mes connaissances, sudo permet une intervention complète du système et su uniquement l'environnement de l'utilisateur.
Mais d'une manière générale , l'utilisation de sudo est recommandée.
Concernant le manuel "ManZypper", très peu de personnes ne l'ont consulté en entier, voir approndi. Mais c'est une source.
Je souhaiterais lancer une discussion sur les commandes zypper que nous utilisons le plus au quotidien, y compris les options et les astuces que vous trouvez particulièrement utiles.
L'objectif est de recenser les pratiques des utilisateurs d'openSUSE, afin que chacun puisse s'en inspirer et améliorer notre utilisation de ZYPPER
- tu es sur quel kernel ? - Il y a une légère incohérence dans l'utilisation de lsusb pour un écran connecté en DP-DP (mais certainement, il y a une raison, lsusb est utilisé pour lister les périphériques USB, mais les choses évoluent, peut-être que c'est faisable.. je ne maitrise pas) - Les commandes lsusb, lspci, et dmesg n'ont pas révélé d'informations spécifiques sur ta carte graphique ? (piste a explorer c'est quoi ta carte graphique ? - as-tu des sorties USB, et HDMI sur ton écran, les as tu testé ? - Quelle est le model de ton écran , ses caractéristiques ?
Voilà quelques points , (pour moi..) afin de mieux t'aider....
C'est juste quelques pistes pour le moment, pour dégrossir ta problématique.
Presque 1 an, en message privé sur le forum, on m'avait sollicité pour aborder le sujet de la configuration de pare-feu sur Linux.
J'avais répondu que le pare-feu le pratiquant depuis pas mal de temps, j'en avais que les bases pour les besoins de la maison : NAS, accès depuis l'extérieur, transfert automatique des donnés vers home. La gestion de pare-feu étant très complexe on ne peut que se cultiver selon les besoin du moment. Mais par-contre les bases, il fallait au moins les connaitre (pas les maitriser) , mais les connaitre pour savoir de quoi on parle et comment configurer un pare-feu le cas échéant.
Ayant un peu de temps, et étant en pleine configuration de pare-feu avec Neftables (j'ai abandonné FirewallD), je partage avec vous ma mise jour de la connaissance d'un pare-feu, avant de partager dans un autre poste ma configuration Neftables.
1. Définition d'un parefeu software & Netfilter Un pare-feu logiciel Linux est un programme qui contrôle le trafic réseau entrant et sortant sur un système d'exploitation Linux, en se basant sur des règles de sécurité prédéfinies. Il s'intègre directement au noyau Linux et utilise le framework Netfilter pour filtrer les paquets. Netfilter est donc le framework de filtrage de paquets intégré au noyau Linux depuis la version 2.4
2. Architecture de base de Netfilter L'architecture de Netfilter comprend plusieurs composants clés :
Hooks (points d'accroche)
Tables
Chaînes
Règles
3. Hooks Netfilter Les hooks sont des points d'interception dans la pile réseau du noyau. Les cinq hooks principaux sont :
NF_IP_PRE_ROUTING : Avant le routage
NF_IP_LOCAL_IN : Pour les paquets entrants destinés au système local
NF_IP_FORWARD : Pour les paquets routés
NF_IP_LOCAL_OUT : Pour les paquets générés localement
NF_IP_POST_ROUTING : Après le routage
4. Tables Les tables regroupent les règles selon leur fonction. Les tables principales sont :
filter : Pour le filtrage de paquets (pare-feu)
nat : Pour la traduction d'adresses réseau
mangle : Pour la modification des paquets
raw : Pour la configuration d'exemptions de suivi de connexion
5. Chaînes Les chaînes sont des séquences de règles attachées aux hooks. Les chaînes standard sont :
PREROUTING (hook PRE_ROUTING)
INPUT (hook LOCAL_IN)
FORWARD (hook FORWARD)
OUTPUT (hook LOCAL_OUT)
POSTROUTING (hook POST_ROUTING)
6. Règles Les règles sont des instructions spécifiques pour le traitement des paquets. Chaque règle comprend :
Des critères de correspondance (adresse IP, port, protocole, etc.)
Une action à effectuer (voir la liste des actions ci-dessous)
7. Actions (Verdicts) de Netfilter
ACCEPT : Accepte le paquet
DROP : Rejette silencieusement le paquet
QUEUE : Envoie le paquet vers l'espace utilisateur
RETURN : Arrête le traitement dans la chaîne actuelle et retourne à la chaîne appelante
REJECT : Rejette le paquet et envoie une réponse
LOG : Journalise les informations sur le paquet
MARK : Marque le paquet
DNAT : Modifie l'adresse de destination du paquet
SNAT : Modifie l'adresse source du paquet
MASQUERADE : Forme spéciale de SNAT pour les interfaces dynamiques
REDIRECT: Redirige le paquet vers un port local
TEE: Copie le paquet vers une autre destination
CONNMARK : Marque la connexion associée au paquet
8. Flux de traitement des paquets
Le paquet arrive à un hook.
Les chaînes associées à ce hook sont parcourues dans l'ordre.
Les règles de chaque chaîne sont évaluées séquentiellement.
La première règle correspondante détermine l'action à effectuer.
Si aucune règle ne correspond, la politique par défaut de la chaîne est appliquée.
9. Connection Tracking Netfilter inclut un système de suivi de connexion qui permet de maintenir l'état des connexions réseau, facilitant le filtrage basé sur l'état.
10. Interaction avec l'espace utilisateur Netfilter fournit des interfaces pour permettre aux outils en espace utilisateur (comme iptables ou nftables) de configurer les règles de filtrage et de NAT.
En Conclusion :
Cette présentation offre une vue d'ensemble complète & détaillée de Netfilter, couvrant ses composants principaux, son fonctionnement hiérarchique et ses capacités au niveau du noyau Linux.
C'est sur cette base que l'on utilise à partir du point : (4):
iptables
neftables
ufw
FirewallD
etc ect .... La base est Netfilter dans le noyau Linux
Comprendre et Gérer le "Out of Memory" (OOM) dans Linux
I. Concept de l'OOM dans Linux
1. Définition de l'OOM Killer • Mécanisme intégré au noyau Linux • Intervient lors d'un manque critique de mémoire (RAM ou swap) • Sélectionne et termine des processus pour libérer de la mémoire
2. Pourquoi l'OOM se produit-il ? • Linux utilise un modèle de surallocation de mémoire • Le noyau peut allouer plus de mémoire que disponible physiquement • Fonctionne bien car les applications n'utilisent pas toujours toute la mémoire demandée • Problème survient quand plusieurs applications utilisent toute leur mémoire allouée
II. Fonctionnement de l'OOM Killer
1. Processus de sélection automatique • Le noyau détecte une situation de mémoire critique • Évalue tous les processus en cours d'exécution • Attribue un score (oom_score) à chaque processus • Termine automatiquement le processus avec le score le plus élevé
2. Calcul du score OOM • Basé principalement sur l'utilisation de la mémoire • Tient compte d'autres facteurs (temps d'exécution, privilèges, etc.)
3. Paramètres dans linux pouvant gérer OOM
vm.overcommit_memory
vm.oom_kill_allocating_task
kernel.shmmax
kernel.shmall
vm.min_free_kbytes
III. Applications et outils pour gérer l'OOM
✅ À privilégier : • earlyoom : Tue les processus avant l'intervention de l'OOM Killer du noyau • systemd-oomd : Gestion OOM plus fine via systemd • cgroups v2 : Gestion granulaire des ressources, incluant la mémoire
⚠️ À tester : • nohang : Alternative à earlyoom avec fonctionnalités supplémentaires • oomd : Démon OOM de Facebook, puissant mais complexe • zram : Compression de la mémoire en RAM, retarde l'OOM
❌ À éviter : • Désactiver complètement l'OOM Killer • Régler vm.overcommit_memory à 2
IV. Pourquoi utiliser des applications tierces pour gérer l'OOM ?
Bien que Linux dispose d'un mécanisme OOM intégré, il existe plusieurs raisons d'utiliser des applications tierces :
1. Surveiller régulièrement l'utilisation de la mémoire 2. Optimiser les applications pour une meilleure gestion de la mémoire 3. Utiliser des outils comme earlyoom pour une intervention précoce 4. Ajuster les scores OOM des processus critiques 5. Considérer l'augmentation de la RAM ou du swap si les OOM sont fréquents
Conclusion Comprendre et gérer efficacement l'OOM est crucial pour maintenir la stabilité et les performances des systèmes Linux. Bien que le noyau Linux offre une gestion de base de l'OOM, l'utilisation d'outils tiers peut apporter une flexibilité et une efficacité supplémentaires, particulièrement dans des environnements complexes ou avec des exigences spécifiques.
Ce scénario réaliste illustre comment j'ai pu éviter le blocage de TW dans une situation d'utilisation intensive (OOM). La combinaison de la RAM physique, zram, du swap traditionnel, et d'earlyoom m'a permis de :
1. Exécuter simultanément des applications gourmandes en mémoire (VM, Kodi en 4K). 2. Maintenir une navigation web fluide avec certains onglets. 3. Effectuer des tâches système lourdes (mises à jour) sans compromettre la stabilité. 4. Éviter les blocages système et les pertes de données potentielles.
Photographie des mémoires activées : • 12 Go de RAM physique • 19 Go de swap total (incluant zram) • zram activé • earlyoom installé et configuré sysctl : * m.swappiness = 10 * vm.vfs_cache_pressure = 50 * vm.dirty_ratio = 10 * vm.dirty_background_ratio = 5
Scénario : J'utilise mon OS openSUSE Tumbleweed pour diverses tâches.
Situation Générale :
• Multimédia • Navigateur web avec 5 - 10 onglets • 2 instances de terminal (monitoring, maj, téléchargement iso..) • Applications récurrente Kvm , OnflyOffice
Total utilisé : environ 6-7 Go de RAM physique
Le Scénario progressif :
1. Phase 1 : Ouverture de mon navigateur • Utilisation de RAM : ~2 Go / 12 Go • Le swap et zram ne sont pas encore sollicités.
2. Phase 2 : Lancement de KVM • La VM Lite Linux est allouée avec 4 Go de RAM. • Utilisation de RAM : ~6 Go / 12 Go • zram commence à être légèrement utilisé pour les pages moins actives.
3. Phase 3 : Youtube adrien linuxtricks et Kodi ouvert film training day en pause • Youtube / Kodi ~2 Go. • Utilisation de RAM : ~8 Go / 12 Go • zram est modérément utilisé, offrant un espace de swap rapide en mémoire.
4. Phase 4 : ouverture 5-7 onglets en plus • La consommation des onglets supplémentaires ~3 Go. • Utilisation de RAM : ~11 Go / 12 Go • zram est fortement sollicité, compressant les pages mémoire moins utilisées.
5. Phase 5 : Terminal MAJ + reprise film training day sur kodi • Les processus de mise à jour consomment ~1 Go supplémentaire. • La RAM physique est presque entièrement utilisée. • Le système commence à utiliser le swap sur disque en plus de zram. • earlyoom détecte que la mémoire disponible approche du seuil critique (5%). • Une notification d'avertissement est envoyée.
6. Phase 6 : Intervention d'earlyoom Je constate que mon navigateur et moins réactif et que Kodi active la mise en cache du film. • La mémoire disponible atteint le seuil critique. • earlyoom identifie les processus les plus gourmands en mémoire. • Il termine certains onglets de mon navigateur, (comme configuré dans les préférences). • Le système libère de la mémoire et redevient réactif, pas de blocage de l'OS
Installation et configuration d'earlyoom sur openSUSE Tumbleweed
Qu'est-ce qu'earlyoom ? earlyoom est un démon léger qui améliore la réactivité du système en surveillant l'utilisation de la mémoire et en intervenant avant que le système ne devienne non réactif. Il termine les processus gourmands en mémoire pour éviter les blocages.
Installation d'earlyoom 1. Ouvrez un terminal. 2. Installez earlyoom avec la commande :
Configuration d'earlyoom cf manpage earlyoom 1. Modifiez le fichier de configuration situé à /etc/sysconfig/earlyoom. 2. Utilisez votre éditeur préféré pour ajuster les paramètres :
- -r 60 : Vérifie la mémoire toutes les 60 secondes. - -m 5,3 -s 5,3 : Envoie un SIGTERM à 5% de mémoire/swap libre et un SIGKILL à 3%. - -n : Active les notifications.
Surveillance d'earlyoom via terminal 1. Après modification, rechargez systemd et redémarrez earlyoom :
gsettings set com.github.unrud.VideoDownloader automatic-subtitles "[]"
Utilisation en Images :
Voilà une alternative à 4k videodownloader qui n'existe pas en RPM.[/list]
1 Si vous utilisez KDE et que vous souhaitez éviter que ce dépôt prenne le dessus lors des mises à jour, il est conseillé de lui attribuer une priorité plus basse (par exemple 120). ↵