Outils pour utilisateurs

Outils du site


linux-vrac

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux-vrac [2019/11/12 08:38]
sebsauvage
linux-vrac [2020/12/10 08:47] (Version actuelle)
sebsauvage
Ligne 35: Ligne 35:
  - Extract files matching a pattern:  - Extract files matching a pattern:
    tar xf {{source.tar}} --wildcards {{"*.html"}}</code>    tar xf {{source.tar}} --wildcards {{"*.html"}}</code>
 +
 +  * **Votre Wifi ne fonctionne pas bien ?** Vous avez peut-être oublié de régler la région "France" pour les fréqences (du coup, les canaux 11/12/13 sont peu ou pas accessibles).
 +    * Vérifier la valeur: ''iw reg get''. Si vous ne voyez pas ''Country: FR'' c'est que ce n'est pas correctement réglé.
 +    * Modifier le réglage à la volée: ''sudo iw reg set FR'', mais cela ne persiste pas au redémarrage.
 +    * Pour que la valeur persiste, modifiez le paramètre ''REGDOMAIN'' dans le fichier ''/etc/default/crda''. Mettez:<code>REGDOMAIN=FR</code>
  
   * **Voir la progression d'une longue commande en cours**:   * **Voir la progression d'une longue commande en cours**:
     * Vous avez lancé un //dd// ou un //tar// très long, et vous ne savez pas où il en est ? Lancez:<code bash>sudo progress -m</code>     * Vous avez lancé un //dd// ou un //tar// très long, et vous ne savez pas où il en est ? Lancez:<code bash>sudo progress -m</code>
     * //progress// fonctionne avec cp,mv,dd,tar,gzip,7z,rsync...     * //progress// fonctionne avec cp,mv,dd,tar,gzip,7z,rsync...
 +    * Si vous utilisez ''-M'', progress ne quittera pas et attendra un autre processus.
  
   * **Créer des archives compressées** : Créer une archive compressée c'est simple, mais c'est toujours bon de se rappeler la syntaxe:   * **Créer des archives compressées** : Créer une archive compressée c'est simple, mais c'est toujours bon de se rappeler la syntaxe:
Ligne 67: Ligne 73:
     * Pour **«** et **»**, c'est <key>AltGr-z</key> et <key>AltGr-x</key>     * Pour **«** et **»**, c'est <key>AltGr-z</key> et <key>AltGr-x</key>
  
-  * **Entrer des caractères Unicode**: <key>C</key>+<key>⇧ Maj</key>+<key>u</key> et tapez la valeur Unicode en héxadécimal.+  * **Entrer des caractères Unicode**: <key>C</key>+<key>⇧ Maj</key>+<key>'U'</key> et tapez la valeur Unicode en héxadécimal.
     * Essayez ! <key>C</key>+<key>⇧ Maj</key>+<key>u</key>+2705+<key>ESPACE</key> : ✅     * Essayez ! <key>C</key>+<key>⇧ Maj</key>+<key>u</key>+2705+<key>ESPACE</key> : ✅
  
Ligne 83: Ligne 89:
     * Faire:<code bash>sudo bash -c 'echo "vm.swappiness=10" >> /etc/sysctl.conf'</code>     * Faire:<code bash>sudo bash -c 'echo "vm.swappiness=10" >> /etc/sysctl.conf'</code>
     * Rebooter pour prendre en compte, ou faire ''sudo sysctl -p''     * Rebooter pour prendre en compte, ou faire ''sudo sysctl -p''
-    * Cela va réduire la propension du système à swapper. Par défaut ce paramètre est souvent à 60, mais en la passant à 10 le système attendra d'avoir 90% de RAM utilisée avant de commencer à swapper.+    * Cela va réduire la propension du système à swapper. Par défaut ce paramètre est souvent à 60, mais en le passant à 10 le système attendra beaucoup plus avant de commencer à swapper.
   * **Réduction de l'utilisation du swap (2)**   * **Réduction de l'utilisation du swap (2)**
-    * ''sudo apt install zram-config'' et c'est tout. Les segments de mémoire compressés seront utilisés en priorité sur le swap disque. (Vous pouvez voir les ''/dev/zramX'' quand vous faites ''cat /proc/swaps'').+    * ''sudo apt install zram-config'', rebootez, et c'est tout. Les segments de mémoire compressés seront utilisés en priorité sur le swap disque. (Vous pouvez voir les ''/dev/zramX'' quand vous faites ''cat /proc/swaps'').
     * C'est tellement efficace, que sur une machine avec 4 Go de RAM sur laquelle on lance plein de programmes au point d'atteindre 1,1 Go de swap utilisé, //aucun octet n'a commencé à être écrit dans le swap sur disque !//     * C'est tellement efficace, que sur une machine avec 4 Go de RAM sur laquelle on lance plein de programmes au point d'atteindre 1,1 Go de swap utilisé, //aucun octet n'a commencé à être écrit dans le swap sur disque !//
     * zram est utile quelle que soit la quantité de RAM que vous avez en réduisant à néant les lectures/écritures dans le swap disque. Le swap zram est infiniment plus rapide qu'un swap disque (quel que soit votre type de disque) et cela réduit l'usure des SSD.     * zram est utile quelle que soit la quantité de RAM que vous avez en réduisant à néant les lectures/écritures dans le swap disque. Le swap zram est infiniment plus rapide qu'un swap disque (quel que soit votre type de disque) et cela réduit l'usure des SSD.
Ligne 100: Ligne 106:
   * **Partage rapide de fichiers par HTTP** : Un serveur web en 10 secondes.   * **Partage rapide de fichiers par HTTP** : Un serveur web en 10 secondes.
     * Ouvrez un terminal dans le répertoire à partager.     * Ouvrez un terminal dans le répertoire à partager.
-    * Tapez:<code bash>python -m SimpleHTTPServer 9988</code> +    * Tapez (pour Python3) :<code bash>python3 -m http.server 5555</code> 
-    * Et c'est tout. Le répertoire sera accessible par ''http://adresseip:9988/''+      * Si vous n'avez que Python2, c'est ''python -m SimpleHTTPServer 5555'' 
 +    * Et c'est tout. Le répertoire sera accessible par ''http://adresseip:5555/''
     * Pressez <key>Ctrl-c</key> pour arrêter le partage.     * Pressez <key>Ctrl-c</key> pour arrêter le partage.
  
Ligne 107: Ligne 114:
     * Ajoutez à votre ''.bashrc'':<code bash>alias ni='nice -n 19 ionice -c3'</code>     * Ajoutez à votre ''.bashrc'':<code bash>alias ni='nice -n 19 ionice -c3'</code>
     * Puis lancez n'importe quel programme en le préfixant par ''ni'':<code bash>ni tar cvfz monarchive.tgz monrepertoire/</code>     * Puis lancez n'importe quel programme en le préfixant par ''ni'':<code bash>ni tar cvfz monarchive.tgz monrepertoire/</code>
 +
 +  * Mettre automatiquement un programme en arrière plan quand il est lancé: Par exemple pour ''7z'' ouvrez un terminal, lancez cette commande et laissez le terminal ouvert:<code>watch "renice 19 -p $(pgrep 7z)"</code>
 +
  
   * Un programme prend trop de CPU ? Vous voulez lui limiter le pourcentage de CPU qu'il consomme ? Utilisez **cpulimit**: <code>cpulimit -e nomDuProgramme -l 25 -b</code>   * Un programme prend trop de CPU ? Vous voulez lui limiter le pourcentage de CPU qu'il consomme ? Utilisez **cpulimit**: <code>cpulimit -e nomDuProgramme -l 25 -b</code>
Ligne 428: Ligne 438:
             * Là où il y a ''RESUME=UUID=388a79ac-27b7-42f5-ac13-...'' remplacez par ''RESUME=none''             * Là où il y a ''RESUME=UUID=388a79ac-27b7-42f5-ac13-...'' remplacez par ''RESUME=none''
             * puis faites: ''sudo update-initramfs -u''             * puis faites: ''sudo update-initramfs -u''
 +
 +  * **Désactiver l'hibernation** (c'est à dire suspend-to-disk et suspend-to-ram):
 +    * Désactiver:<code bash>sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
 +sudo systemctl restart systemd-logind.service</code>
 +    * Réactiver:<code bash>sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target</code>
 +    * Et pour empêcher l'hibernation quand l'écran est rabattu, dans le fichier ''/etc/systemd/logind.conf'', décommenter les deux lignes suivantes:<code>HandleLidSwitch=ignore
 +HandleLidSwitchDocked=ignore</code>
  
   * **Allonger l'autonomie**   * **Allonger l'autonomie**
Ligne 502: Ligne 519:
       * Sauvegarde:<code bash>partclone.ext4 -c -d -s /dev/sda2 | pigz | split -d -b 4000M - image.partclone.gz.</code>Cela va créer des fichiers ''image.partclone.gz.00'', ''image.partclone.gz.01'', etc.       * Sauvegarde:<code bash>partclone.ext4 -c -d -s /dev/sda2 | pigz | split -d -b 4000M - image.partclone.gz.</code>Cela va créer des fichiers ''image.partclone.gz.00'', ''image.partclone.gz.01'', etc.
       * Pour restaurer:<code bash>cat image.partclone.gz.* | pigz -d | sudo partclone.restore -d -o /dev/sda2</code>       * Pour restaurer:<code bash>cat image.partclone.gz.* | pigz -d | sudo partclone.restore -d -o /dev/sda2</code>
 +    * **Avec fsarchiver** 
 +      * ''dd'' et ''partclone'' ne peuvent travailler que sur des partitions démontées. ''fsarchiver'' peut travailler sur des fs montés, et (tout comme partimage) il garde tous les fichiers avec leurs attributs. Voici les différences: 
 +        * Tout comme partimage, il garde tous les attributs des fichiers, mais il travaille au niveau //fichiers//, ce qui lui permet de restaurer les fichiers vers une partition d'un type différent (alors que, par exemple, partimage ne peut restaurer une sauvegarde ext4 que dans un partition ext4). 
 +        * Il est beaucoup plus rapide. 
 +        * La compression est intégrée (compression zstd très rapide) 
 +        * Les archives ainsi créées peuvent être transférées vers des disque plus gros ou plus petits. 
 +        * Si une archive fsarchiver est corrompue, vous ne perdez que les fichiers endommagés de l'archive, pas toute l'archive. 
 +        * De par sa vitesse, **fsarchiver est un excellent choix pour faire un backup préventif sur un disque externe** avant une réinstallation du système, par exemple.
   * Besoin de voir si votre joystick ou manette fonctionne bien ? Utilisez **jstest-gtk** (''sudo apt install jstest-gtk'')   * Besoin de voir si votre joystick ou manette fonctionne bien ? Utilisez **jstest-gtk** (''sudo apt install jstest-gtk'')
     * PS: Même si //jstest// fonctionne, il se base sur ''/dev/input/jsX'' qui sont en principe obsolètes. Vous pouvez passer à //evtest// qui se base sur ''/dev/input/eventXX''. La version graphique, //[[https://gitlab.com/evtest-qt/evtest-qt|evtest-qt]]// n'est sans doute pas dispo pour votre distribution. Vous devrez la compiler ou prendre les packages [[https://launchpad.net/~grumbel/+archive/ubuntu/ppa/+packages?field.name_filter=evtest-qt&field.status_filter=published|sur Launchpad]].     * PS: Même si //jstest// fonctionne, il se base sur ''/dev/input/jsX'' qui sont en principe obsolètes. Vous pouvez passer à //evtest// qui se base sur ''/dev/input/eventXX''. La version graphique, //[[https://gitlab.com/evtest-qt/evtest-qt|evtest-qt]]// n'est sans doute pas dispo pour votre distribution. Vous devrez la compiler ou prendre les packages [[https://launchpad.net/~grumbel/+archive/ubuntu/ppa/+packages?field.name_filter=evtest-qt&field.status_filter=published|sur Launchpad]].
Ligne 591: Ligne 615:
  
   * **Trouver les machines sur une plage d'IP**:<code>nmap -sP 192.168.0.1-255</code>   * **Trouver les machines sur une plage d'IP**:<code>nmap -sP 192.168.0.1-255</code>
 +    * ou plus rapide avec ''arp-scan'' (''sudo apt install arp-scan''): <code>sudo arp-scan 192.168.0.0/24</code>
 +    * ou lister rapidement les machines du LAN: <code>arp -an</code>
  
   * **Capturer une image avec la webcam**:<code>ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 -y "/tmp/`date -Iseconds`.jpg"</code>   * **Capturer une image avec la webcam**:<code>ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 -y "/tmp/`date -Iseconds`.jpg"</code>
Ligne 616: Ligne 642:
   * ** Qui est connecté ?** : <code>w</code>   * ** Qui est connecté ?** : <code>w</code>
   * **Date de dernière connexion** de chaque utilisateur:<code>lslogins -u</code>   * **Date de dernière connexion** de chaque utilisateur:<code>lslogins -u</code>
 +  * **Liste des connexions et déconnexions utilisateur, et temps de connexion**:<code>last</code>
  
   * **Synchroniser un répertoire local vers un répertoire distant par FTP**:   * **Synchroniser un répertoire local vers un répertoire distant par FTP**:
Ligne 639: Ligne 666:
  
   * Tapez ''export TMOUT=30'' et votre terminal se fermera au bout de 30 secondes (sauf si un processus est en cours. Dans ce cas, il attendra la fin du processus).   * Tapez ''export TMOUT=30'' et votre terminal se fermera au bout de 30 secondes (sauf si un processus est en cours. Dans ce cas, il attendra la fin du processus).
 +
 +  * Voir tous les mots de passe stockés dans le trousseau de clés Gnome (mots de passe de partages, Wifi, Vpn...): ''sudo apt install seahorse'' et lancez-le.
 +
 +  * **flatpak**:
 +    * FIXME Section à compléter
 +    * Voir la liste des pack installés:<code>flatpak list</code>
 +    * Retirer les packs inutilisés:<code>flatpak uninstall --unused</code>
 +
 +  * **snap**
 +    * FIXME Section à compléter
 +    * Retirer les snaps inutilisés:
 +      * créer le script suivant ([[https://www.linuxuprising.com/2019/04/how-to-remove-old-snap-versions-to-free.html|source]]):<file bash remove-old-snaps>#!/bin/bash
 +# Removes old revisions of snaps
 +# CLOSE ALL SNAPS BEFORE RUNNING THIS
 +set -eu
 +
 +LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
 +    while read snapname revision; do
 +        snap remove "$snapname" --revision="$revision"
 +    done</file>
 +      * rendre le script exécutable ''chmod +x remove-old-snaps''
 +      * lancer: ''sudo ./remove-old-snaps''
 +
 +  * S'installer rapidement un serveur web avec apache:<code>sudo apt install apache2 php7.2 libapache2-mod-php7.2</code>
 +    * Le répertoire du serveur web est ''/var/www/html/''.
 +
 +  * Pour NextCloud, //pour tester en local, pas pour une prod//, ajoutez:<code>sudo apt install php7.2-zip php7.2-xml php7.2-gd php7.2-curl php7.2-mbstring php7.2-sqlite3 php7.2-imagick php7.2-intl 
 +sudo phpenmod intl
 +sudo a2enmod rewrite
 +sudo service apache2 restart</code>    
 +    * Dans ''/etc/apache2/apache2.conf'', dans la section ''<Directory /var/www/>'', remplacez ''AllowOverride None'' par ''AllowOverride All''.
 +    * Dans le répertoire racine de votre serveur web, créez un fichier ''.htaccess'' contenant: ''php_value memory_limit 2048M''
 +
 +  * Votre répertoire de fichiers temporaires (''/tmp'') se vide tout seul à chaque redémarrage, mais pas le cache d'impression de cups: Tout ce que vous avez imprimé s'accumule dans ''/var/cache/cups''. Pour le vider faites:<code bash>sudo service cups stop
 +sudo rm -r /var/cache/cups/
 +sudo service cups start</code>
 +
 +  * Si vous avez des problèmes dépendance pour installer un paquet, il arrive souvent que **aptitude** trouve des solutions un peu plus poussées qui résoudront les problèmes.<code bash>sudo apt install aptitude
 +sudo apt install MonPaquet</code>
 +
 +  * Des soucis pour installer, configuer ou utiliser Wine ?  Voir [[wine|cette page]].
 +
 +  * **Réparer des fichiers**
 +    * par2 permet de réparer des fichiers. (Version courte de l'explication: Imaginez que vous ayez 10 Go de fichiers. Si vous préparez à l'avance 1 Go de fichiers //par2//, vous pourrez réparer/reconstituer (au plus) 1 Go de données endommagées ou perdues dans ces 10 Go, quel que soit l'endroit où les données sont endommagées dans ces 10 Go).
 +    * **Créer** des fichiers //par2// sur un groupe de fichiers, avec 10% de redondance (Donc 10 Go de données créera 1 Go de fichiers par2):<code>par2 c -r10 protection *</code>
 +      * Cela va créer le fichier //protection.par2//, ainsi que des fichiers //protection.volxxx+xx.par2//
 +        * Le fichier //protection.par2// seul est utile pour **vérifier** l'intégrité de vos fichiers.
 +        * Les fichiers //protection.volxxx+xx.par2// servent à **réparer** les données. Un fichier //.par2// de 2,3 Mo permettra de réparer jusqu'à 2,3 Mo de données perdues/endommagées.
 +      * Ajoutez l'option ''-R'' si vous voulez aussi prendre en compte les sous-répertoires.
 +    * **Vérifier** des fichiers: <code>par2 v protection.par2</code>
 +      * Message affiché à la fin:
 +        * //All files are correct, repair is not required.// : Tout va bien, vos données sont saines.
 +        * //Repair is required. / Repair is possible. // : Vos fichiers sont endommagés, mais vous pouvez les réparer. Passez à l'étape suivante.
 +        * //Repair is required. / Repair is not possible. // : Vos fichiers sont endommagés, mais mauvaise nouvelle, ce n'est pas réparable (vous n'avez pas assez de blocs de réparation pour tout réparer.)
 +    * **Réparer** les fichiers:<code>par2 r protection.par2</code>
 +      * Et attendez (cela peut être assez long).
 +      * Si vous voyez //Repair complete.//, c'est tout bon. Vos données sont réparées.
 +
 +  * Dans **LibreOffice**, vous voulez une barre d'outils comme dans Microsoft Office ?
 +    * Allez dans le menu //Outils// > //Options...// > //LibreOffice// > //Avancé// > Cochez //Activer les fonctions expérimentales//
 +    * Redémarrez LibreOffice.
 +    * Allez dans le menu //Affichage// > //Dispositio des barres d'outils// > //Métabarre//
 +
 +  * **Savoir à quel paquet appartient un fichier**
 +    * Par exemple vous lancez un programme qui se plaint qui lui manque un fichier:<code>error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory</code>
 +    * Comment savoir dans quel paquet aller chercher ce fichier ? Commencez par installer ''apt-file'':<code>sudo apt install apt-file</code>
 +    * <code>sudo apt-file update</code>
 +    * Ensuite cherchez votre fichier<code>>apt-file search libcrypto.so.1.0.0
 +google-earth-pro-stable: /opt/google/earth/pro/libcrypto.so.1.0.0
 +libssl1.0.0: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0</code>
 +    * Voilà, vous savez qu'il ne vous reste plus qu'à installer le paquet manquant: ''sudo apt install libssl1.0.0''
 +
 +  * La clé USB live d'Ubuntu Mate 20.04 a la sale manie de vérifier tout le média avant de booter. Pour éviter ça, dans le fichier ''/boot/grub/grub.cfg'', ajouter l'option ''fsck.mode=skip''.
 +    * Et pour avoir le clavier français, ajouter ''locales=fr_FR.UTF-8 keyboard-layouts=fr''
 +
 +  * Votre Ubuntu n'en a rien à foutre du délai ''GRUB_TIMEOUT'' que vous avez mis dans ''/etc/default/grub'' ? Essayez ''GRUB_RECORDFAIL_TIMEOUT'' à la place (suivi d'un ''sudo update-grub'').
 +
 +  * Besoin de désactiver le clavier interne ou le touchpad de votre ordinateur portable ?
 +    * Pour lister les périphériques:<code>xinput list</code>
 +    * Pour désactiver le clavier:<code>xinput disable "AT Translated Set 2 keyboard"</code>
 +    * Pour réactiver le clavier:<code>xinput enable "AT Translated Set 2 keyboard"</code>
 +
 +  * Si quand vous lancez un jeu ou programme vous avez l'erreur ''System.Exception: Magic number is wrong: 542'', lancez le programme comme suit:<code>export 'TERM=roxterm' && ./LeProgramme.bin</code>
  
   * Vous avez un Raspberry Pi ? [[raspi3:raspbian|cette page]] pourra vous être utile.   * Vous avez un Raspberry Pi ? [[raspi3:raspbian|cette page]] pourra vous être utile.
Ligne 644: Ligne 754:
   * D'autres astuces ? Voir [[mint_customization|cette page]].   * D'autres astuces ? Voir [[mint_customization|cette page]].
  
 +  * Vous avez des soucis pour faire reconnaître votre imprimante sous Ubuntu/Linux Mint ?  Il faut savoir que par défaut tous les pilotes ne sont pas installés. Jetez un coup d'oeil dans les paquets ''printer-driver-*'' Par exemple, installez le paquet ''printer-driver-escpr'' pour les imprimantes Epson (qui n'est pas installé par défaut).
  
linux-vrac.1573547934.txt.gz · Dernière modification: 2019/11/12 08:38 de sebsauvage