Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Linux : mesurer le temps de démarrage

systemd-analyze peut être utilisé pour déterminer les statistiques de performance au démarrage du système et récupérer d’autres informations sur l’état et le suivi du système et du gestionnaire de services, ainsi que pour vérifier l’exactitude des fichiers unitaires.

Dans ce tutoriel, je vous montre comment mesurer le temps de démarrage Linux et trouver ce qui allonge le démarrage de votre appareil.

Comment mesurer le temps de démarrage Linux

Introduction

Lorsqu’un système Linux est démarré, le processus de démarrage est géré par systemd. La première étape du processus de démarrage consiste à charger le noyau Linux, qui est le cœur du système d’exploitation. Une fois le noyau chargé, il initialise le matériel, puis lance le processus systemd, qui est le premier processus à s’exécuter sur le système.

À partir de là, systemd prend le relais et commence à lancer les autres services système nécessaires à la mise en route du système. Il s’agit notamment du service de mise en réseau, du gestionnaire de connexion et de tout autre service nécessaire au fonctionnement du système. Systemd démarre ces services en parallèle, plutôt que de manière séquentielle comme avec le système init traditionnel, ce qui permet au système de démarrer plus rapidement et d’être plus réactif.

Une fois que tous les services nécessaires ont été lancés, le système est prêt à être utilisé et le gestionnaire de connexion s’affiche, permettant à l’utilisateur de se connecter et de commencer à utiliser le système. Systemd continue de fonctionner en arrière-plan, en gérant et en contrôlant les services du système en fonction des besoins. Cela permet au système de rester stable et réactif même lorsque les services du système sont démarrés, arrêtés ou modifiés.

Comment mesurer le temps de démarrage Linux

Cette commande affiche le temps passé dans le noyau avant que l’espace utilisateur ne soit atteint, le temps passé dans l’initrd avant que l’espace utilisateur du système normal ne soit atteint, et le temps que l’espace utilisateur du système normal a pris pour s’initialiser.
Notez que ces mesures ne font que mesurer le temps passé jusqu’au moment où tous les services du système ont été lancés, mais pas nécessairement jusqu’à ce qu’ils aient terminé leur initialisation ou jusqu’à ce que le disque soit inactif.

systemd-analyze

Le temps de démarrage s’affiche de la manière suivante = 1min 10.363s

Startup finished in 6.324s (firmware) + 13.418s (loader) + 36.079s (kernel) + 14.541s (userspace) = 1min 10.363s 
graphical.target reached after 14.488s in userspace.
Comment mesurer le temps de démarrage Linux

Mesurer le temps de démarrage de chaque service (unit) Linux

Pour connaître le temps de démarrage de chaque unit, ajoutez l’option critical-chain comme ceci :

systemd-analyze critical-chain

Cela imprime un arbre de la chaîne d’unités critiques en termes de temps (pour chacune des unités spécifiées ou pour la cible par défaut dans le cas contraire).
L’heure à laquelle l’unité est active ou démarrée est imprimée après le caractère « @ ». Le temps nécessaire au démarrage de l’unité est imprimé après le caractère « + »

graphical.target @14.488s
└─multi-user.target @14.488s
└─plymouth-quit-wait.service @11.175s +3.310s
└─systemd-user-sessions.service @11.165s +6ms
└─[email protected] @11.135s +28ms
└─network-online.target @11.080s
└─NetworkManager-wait-online.service @6.029s +5.049s
└─NetworkManager.service @3.863s +2.149s
└─dbus.service @3.767s +92ms
└─basic.target @3.758s
└─sockets.target @3.758s
└─libvirtd-ro.socket @3.758s
└─libvirtd.socket @3.756s +1ms
└─sysinit.target @3.751s
└─systemd-resolved.service @3.667s +84ms
└─systemd-tmpfiles-setup.service @2.626s +1.024s
└─local-fs.target @2.617s
└─run-snapd-ns.mount @12.341s
└─swap.target @1.015s
└─dev-zram0.swap @3.865s
└─dev-zram0.device @3.834s
Mesurer le temps de démarrage de chaque service (unit) Linux

Créer un graphique d’analyse du processus de démarrage

L’utilitaire system-analyse peut aller encore plus loin en générant un graphique SVG, détaillant quels services système ont été démarrés à quelle heure, en mettant en évidence le temps qu’ils ont passé à l’initialisation, soit des données temporelles brutes au format JSON ou tableau. l’initialisation, soit les données temporelles brutes au format JSON ou tableau.

Pour créer un graphique SVG détaillant les services du système qui ont été démarrés et à quel moment, en indiquant le temps total passé à l’initialisation.

systemd-analyze plot >/tmp/bootup.svg
Créer un graphique d'analyse du processus de démarrage sur Linux

Cette commande génère un arbre de dépendance graphique. ne soit passé, le graphique généré graphique généré montrera à la fois les dépendances d’ordre et les dépendances d’exigences.

sudo apt install graphviz
systemd-analyze dot | dot -Tsvg > /tmp/systemd-boot-gv-system.svg

Ajoutez les options –order ou –require

Obtenir les détails complet de chaque démarrage unit

Sans paramètre, cette commande produit une sérialisation (généralement très longue) lisible par l’homme de l’état complet du gestionnaire de service. Un modèle peut être spécifié, ce qui limite la sortie aux unités dont le nom correspond à l’un des motifs. Le format de sortie est sujet à des Le format de sortie est susceptible d’être modifié sans préavis et ne doit pas être analysé par les applications. Cette commande est limitée en taux pour les utilisateurs non privilégiés.

Trouver ce qui ralentit le démarrage du système

Cette commande permet d’afficher une liste de toutes les unités en fonctionnement, classées en fonction du temps qu’il leur a fallu pour s’initialiser. Ces informations peuvent être utilisées pour optimiser les temps de démarrage.

systemd-analyze blame
systemd-analyze blame
1min 22.645s fstrim.service
24.437s apt-daily.service
14.743s apt-daily-upgrade.service
6.510s systemd-suspend.service
5.049s NetworkManager-wait-online.service
3.310s plymouth-quit-wait.service
2.677s nvidia-suspend.service
2.149s NetworkManager.service
1.093s uml-utilities.service
1.050s systemd-binfmt.service
1.031s apparmor.service
1.024s systemd-tmpfiles-setup.service
930ms boot-efi.mount
836ms logrotate.service
752ms docker.service
668ms fwupd.service
528ms udisks2.service
449ms apport.service
300ms dev-nvme0n1p5.device
257ms [email protected]
230ms man-db.service
224ms gpu-manager.service
186ms systemd-udev-trigger.service
180ms accounts-daemon.service
180ms systemd-fsck@dev-disk-by\x2duuid-196c2ab8\x2d7e5b\x2d4979\x2dbb98\x2dc1b940e8a2d2.service
171ms gnome-remote-desktop.service
168ms media-mak-DATA.mount
165ms rsyslog.service
161ms nmbd.service
160ms power-profiles-daemon.service
Trouver ce qui ralentit le démarrage Linux

Vous pouvez alors désactiver les services non essentiels :

systemctl disable <nom du service>
systemctl mask <nom du service>

Commandes de system-analyse

CommandeDescription
timeIndique le temps nécessaire au système pour que l’espace utilisateur soit entièrement chargé et initialisé (= jusqu’à ce que le système puisse être « utilisé »). La sortie est divisée en firmware, loader (= chargement de l’initrd), kernelanduserspace
blameProduit une liste de toutes les unités de systemd en cours d’exécution, triées en fonction du temps dl’initialisation.
critical-chainIndique le temps nécessaire au système pour que l’espace utilisateur soit entièrement chargé et initialisé (= jusqu’à ce que le système puisse être « utilisé »). La sortie est divisée en firmware, loader (= chargement de l’initrd), kernelanduserspace
plotTrace les débuts du système sous la forme d’un diagramme au format SVG. Le temps est indiqué sur l’axe X du graphique et les unités sur l’axe Y. La sortie doit être directe dans un fichier redirigé vers, par exemple systemd-analyze plot > graph.svg.
dotGénère un graphe de dépendance des unités au format point de Graphviz.
dumpAffiche en détail l’état de chaque unité chargée. Comme la liste est très longue – généralement plusieurs dizaines de milliers de lignes – la sortie doit être redirigée vers un fichier ou filtrée directement avec grep ou quelque chose de similaire.
verify [unitédate]Vérifie l’exactitude de toutes les unités actives. Si un fichier d’unité est également spécifié dans UNITDATEI, seules cette unité et les unités nécessaires au démarrage de cette unité sont vérifiées. Pour ce faire, des droits d’accès à la racine sont requis.

Liens

L’article Linux : mesurer le temps de démarrage est apparu en premier sur malekal.com.

Slidev – Vous ne ferez jamais aussi bien avec Powerpoint

Hier, je vous parlais de mdBook, avec un petit reminder de Deckset et aujourd’hui, je suis tombé sur Slidev, un outil très sympa pour vous aider à concevoir vos présentations style Powerpoint.

Sauf qu’avec cet outil, fini les heures perdues à galérer sur la mise en forme et la disposition de vos slides. Grâce à sa syntaxe intuitive basée sur Markdown, vous pourrez vous concentrer vraiment sur le contenu et laisser Slidev s’occuper du reste. En plus de son éditeur intégré, Slidev propose même une extension pour VS Code qui vous permettra de profiter d’une expérience de développement optimale, avec tous les avantages de votre IDE préféré.

Mais attention, Slidev ne se contente pas d’être un simple convertisseur Markdown vers des slides. Il propose des tas de fonctionnalités super cools comme une coloration syntaxique impeccable, et même la possibilité d’exécuter du code, peu importe le langage, en direct pendant votre présentation. Je vous invite à regarder cet exemple pour vous rendre compte du délire. Il y en a plein des comme ça.

Slidev vous offre également un choix de thèmes varié et professionnels, que vous pourrez personnaliser à votre guise ou même créer de toutes pièces. Votre présentation aura alors un look unique qui reflètera votre style personnel. ! Il offre également des fonctionnalités avancées comme le mode présentateur, l’enregistrement vidéo, l’exportation vers différents formats (PDF, PNG, SPA), et bien plus encore

Et grâce à son intégration parfaite avec Vue.js, vous pourrez même créer des composants interactifs directement dans vos slides pour afficher par exemple des graphiques dynamiques, des quiz, des sondages en temps réel, et bien plus encore. Bref, vous l’aurez compris, c’est un super projet open source, totalement hackable qui vous fera gagner bien du temps.

Pour démarrer un nouveau projet Slidev, utilisez la commande :

npm init slidev@latest

Et si vous préférez utiliser l’interface en ligne, rendez-vous sur sli.dev.

Je suis sûr que ça vous plaira !

A vous de jouer maintenant et n’oubliez pas, la seule limite est votre créativité !

Les ennuis guettent Facebook après sa décision polémique sur les données des utilisateurs

Facebook s'expose à une offensive juridique en Europe, à l'initiative de l'association autrichienne NOYB. Celle-ci, véritable bête noire des géants américains de la tech, a déposé plainte dans onze pays. En ligne de mire : la décision du réseau social d'exploiter les données de ses membres sans leur consentement pour nourrir son intelligence artificielle.

Linux : Comment créer une arborescence de répertoires avec mkdir ?

I. Présentation

Dans ce tutoriel, nous allons apprendre à créer une arborescence de répertoires sous Linux avec la commande mkdir. Autrement dit, nous allons créer plusieurs répertoires avec leurs répertoires parents en une seule ligne de commande.

Nous pourrions imaginer l'arborescence suivante, sur plusieurs niveaux. Elle sera créée dans la racine "/DEMO" de la machine Linux.

  • Partage
    • Utilisateurs
      • Florian
        • Perso
        • Documents
      • Mickael
        • Perso
        • Documents
      • Guy
        • Perso
        • Documents
      • Jean
        • Perso
        • Documents

Remarque : la méthode présentée dans cet article ne s'applique pas avec l'utilisation de mkdir sous Windows.

Version originale de l'article : 22 décembre 2012.

II. Créer un ensemble de répertoires avec mkdir

Pour répondre à ce besoin, nous allons utiliser l'option "-p" de la commande mkdir. Cette option signifie "parents" et elle va nous permettre de créer une arborescence complète de répertoires imbriqués, en créant tous les dossiers manquants.

De plus, nous allons devoir utiliser la commande mkdir de la façon suivante :

mkdir -p /<dossier racine>/{dossier 1, dossier 2, dossier 3}

Le fait d'utiliser des accolades sert à spécifier plusieurs répertoires de même niveau à créer en une seule commande mkdir. L'exemple ci-dessus permettrait de créer les 3 dossiers dans le dossier racine au même niveau. De plus, l'option "-p" est également essentiel sinon nous allons obtenir une erreur si le dossier racine n'existe pas (ou n'importe quel répertoire du chemin).

Donc, pour répondre à notre cahier des charges initial, voici la commande magique à exécuter :

mkdir -p /DEMO/Partage/Utilisateurs/{Florian,Mickael,Guy,Jean}/{Perso,Documents}

Après ça, quelques secondes, voir même quelques millisecondes plus tard, tous les dossiers sont créés sur la machine. La commande tree permet de voir que l'arborescence générée correspond exactement à notre besoin !

Linux - Créer arborescence de répertoires avec mkdir

Par la suite, si nous avons besoin de créer les répertoires pour un nouvel utilisateur, il suffira d'exécuter la commande ci-dessous en précisant un autre nom d'utilisateur.

mkdir -p /DEMO/Partage/Utilisateurs/Jacques/{Perso,Documents}

Remarque : l'option "-m" de la commande mkdir sert à spécifier les permissions au moment de la création d'un dossier.

III. Conclusion

Simple et efficace : en appliquant cette méthode, vous pouvez facilement gagner du temps et des lignes de commandes ! En effet, sans cette syntaxe et cette option, nous serions obligés d'utiliser la commande mkdir pour chaque dossier à créer (soit une dizaine de commandes dans le cas présent).

Pour finir, sachez que pour la gestion des répertoires, et notamment déplacer ou renommer un répertoire, la commande mv de Linux est également à connaître.

The post Linux : Comment créer une arborescence de répertoires avec mkdir ? first appeared on IT-Connect.

La Xbox portable dévoilée lors du prochain showcase, le Game Pass sera-t-il omniprésent ?

La potentielle console portable de Microsoft pourrait se montrer lors du prochain Xbox showcase. Ce serait l’occasion pour l’entreprise de présenter officiellement cette machine ainsi que son fonctionnement encore mystérieux.

L’article La Xbox portable dévoilée lors du prochain showcase, le Game Pass sera-t-il omniprésent ? est apparu en premier sur Tom’s Hardware.

full

thumbnail

Kali Linux 2024.2 : 18 nouveaux outils et correction du bug de l’an 2038

L'Offensive Security a publié la deuxième version de l'année 2024 de sa distribution Kali Linux ! L'occasion de faire le point sur les changements apportés à Kali Linux 2024.2, ainsi que sur les 18 nouveaux outils !

Le bug de l'an 2038

Le bug de l'an 2038 a été corrigé dans Kali Linux ! Il s'agit d'un problème similaire au bug de l'an 2000 qui affecte les systèmes informatiques qui comptent le temps en secondes depuis le 1er janvier 1970. C'est notamment le cas de différents systèmes d'exploitation et logiciels, dont les systèmes Linux.

Ce bug doit se déclencher le 19 janvier 2038 à 3 heures 14 minutes et 8 secondes, et à ce moment-là, les systèmes affectés par le bug considéreront alors être le 13 décembre 1901 à 20 heures 45 minutes et 52 secondes. Un retour en arrière brutal et problématique, bien entendu.

Ceci est appelé la transition "t64" : "Pour éviter le problème de l'an 2038, la taille du type time_t a dû être modifiée pour être de 64 bits sur les architectures où elle était de 32 bits.", peut-on lire sur le site de Kali Linux.

Les nouveaux outils de Kali Linux 2024.2

Cette nouvelle version est très riche en nouveaux outils, puisqu'il y a eu 18 nouveaux outils ajoutés à la distribution Kali Linux 2024.2.

Voici la liste de ces outils :

  • autorecon - Outil de reconnaissance réseau multi-thread, pour énumérer les services.
  • coercer - Un script Python pour forcer un serveur Windows à s'authentifier sur une machine arbitraire.
  • dploot - Réécriture en Python de SharpDPAPI.
  • getsploit - Utilitaire en ligne de commande pour rechercher et télécharger des exploits.
  • gowitness - Utilitaire de capture d'écran web utilisant Chrome Headless, écrit en Golang.
  • horst - Outil de balayage radio pour le Wi-Fi.
  • ligolo-ng - Outil de tunneling/pivoting avancé et utilisant une interface TUN.
  • mitm6 - Pwning IPv4 via IPv6 (réponse aux messages DHCPv6).
  • netexec - Outil d'exploitation de services réseau aidant à évaluer la sécurité des grands réseaux.
  • pspy - Surveiller les processus Linux sans permissions root.
  • pyinstaller - Compile les programmes Python en exécutables autonomes.
  • pyinstxtractor - Extracteur PyInstaller.
  • sharpshooter - Framework de génération de payload.
  • sickle - Outil de développement de payload.
  • snort - Système de détection d'intrusion réseau.
  • sploitscan - Rechercher des informations sur les CVE, à partir de plusieurs bases officielles.
  • vopono - Exécuter des applications via des tunnels VPN avec des espaces de noms réseau temporaires.
  • waybackpy - Accéder à l'API de la Wayback Machine en utilisant Python.

Enfin, l'équipe de Kali Linux a mis à jour les environnements de bureau Xfce et GNOME. Ceci se traduit par le passage à GNOME 46, ainsi qu'une mise à jour de Xfce particulièrement pour les modes Kali-Undercover et HiDPI.

Kali Linux 2024.2 - GNOME 46
Source : Kali.org

Pour obtenir des informations supplémentaires, consultez l'annonce officielle sur le site de Kali.

The post Kali Linux 2024.2 : 18 nouveaux outils et correction du bug de l’an 2038 first appeared on IT-Connect.

Rmlint – Pour optimiser votre espace disque sous Linux

Si votre disque dur se rempli à vue d’œil et que vous ne savez pas comment faire le ménage, rmlint peut vous aider. Cet outil open source, disponible sur la plupart des distributions Linux, va vous permettre d’optimiser votre espace disque en un rien de temps.

Contrairement à d’autres outils du même genre, il se distingue par sa rapidité d’exécution en scannant vos disques en un clin d’œil pour dénicher tous les fichiers qui encombrent inutilement votre précieux espace de stockage. Au menu des fonctionnalités, rmlint est capable de détecter :

  • Les fichiers dupliqués et les répertoires en double
  • Les binaires non strippés (c’est-à-dire avec des symboles de débogage)
  • Les liens symboliques brisés
  • Les fichiers et répertoires vides
  • Les fichiers avec des ID utilisateur ou groupe invalides

Mais ce n’est pas tout puisqu’il propose également un mode paranoïa pour ceux qui veulent être sûrs à 100% de ne pas supprimer de fichiers importants par erreur. Il offre également de multiples options pour s’adapter à vos besoins et peut même se limiter aux fichiers plus récents qu’une certaine date.

Pour les fans de systèmes de fichiers modernes comme btrfs, sachez que rmlint les gère comme un chef et peut tirer parti des fonctionnalités avancées de ce dernier pour vous faire gagner encore plus d’espace disque.

Pour l’installer sous Debian / Ubuntu, un petit

sudo apt install rmlint

fera l’affaire. Ensuite pour le lancer, tapez simplement la commande rmlint suivie du répertoire que vous voulez analyser. Par exemple :

rmlint /home/utilisateur/dossier-bordel

Vous pouvez ajouter des options pour affiner l’analyse, comme -o pour spécifier un format de sortie ou

--paranoid

pour activer le mode paranoïa si vous ne faites pas confiance aux hashs retournés par l’outil et que vous craignez que des fichiers non-duplicate soient supprimés.

Et voilà, en quelques secondes (ou minutes selon la taille du répertoire), rmlint vous pondra un joli rapport listant tous les fichiers qui méritent de passer à la trappe. Il ne vous restera plus qu’à les supprimer d’un coup de rm bien placé et à profiter de vos gigaoctets fraîchement libérés !

Foncez sur https://rmlint.readthedocs.io/en/latest/ pour télécharger rmlint et découvrir toutes ses options. Votre disque dur vous dira merci !

❌