linux-vrac
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
linux-vrac [2018/11/09 14:05] – sebsauvage | linux-vrac [2019/04/18 09:41] – sebsauvage | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Linux: Le gros bloc-note ====== | ====== Linux: Le gros bloc-note ====== | ||
- | Je note dans cette page, **en vrac**, diverses astuces pour Linux. Oui, // | + | Je note dans cette page, **en vrac**, diverses astuces pour Linux. Certaines évidentes, d' |
- | < | + | < |
+ | |||
+ | * **// | ||
+ | * Voir les outils concernant pdf présents sur votre système ? <code bash> | ||
+ | * Et **//tldr// aussi**:< | ||
+ | tar | ||
+ | Archiving utility. | ||
+ | Often combined with a compression method, such as gzip or bzip. | ||
+ | |||
+ | - Create an archive from files: | ||
+ | tar cf {{target.tar}} {{file1 file2 file3}} | ||
+ | |||
+ | - Create a gzipped archive: | ||
+ | tar czf {{target.tar.gz}} {{file1 file2 file3}} | ||
+ | |||
+ | - Extract an archive in a target folder: | ||
+ | tar xf {{source.tar}} -C {{folder}} | ||
+ | |||
+ | - Extract a gzipped archive in the current directory: | ||
+ | tar xzf {{source.tar.gz}} | ||
+ | |||
+ | - Extract a bzipped archive in the current directory: | ||
+ | tar xjf {{source.tar.bz2}} | ||
+ | |||
+ | - Create a compressed archive, using archive suffix to determine the compression program: | ||
+ | tar caf {{target.tar.xz}} {{file1 file2 file3}} | ||
+ | |||
+ | - List the contents of a tar file: | ||
+ | tar tvf {{source.tar}} | ||
+ | |||
+ | - Extract files matching a pattern: | ||
+ | tar xf {{source.tar}} --wildcards {{" | ||
+ | |||
+ | * **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:< | ||
+ | * // | ||
+ | |||
+ | * **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 une archive: | ||
+ | * Mais si vous voulez un **tar survitaminé** qui va // | ||
+ | * ou:<code bash>tar cvf archive.tgz -I pigz dossier/</ | ||
+ | * //pigz// est comme //gzip//, mais qui fonctionne en multi-coeurs. | ||
+ | * Exemple pratique: 1,1 Go de données à compresser. Avec le tar/cvfz: 43,7 secondes. Avec le tar/pigz: 16,3 secondes (!). | ||
+ | * Décompresser:< | ||
+ | * Exclure des types de fichiers: <code bash>tar cvfz archive.tgz dossier/ --exclude=*.mp3</ | ||
+ | * Exclure des répertoires: | ||
+ | |||
+ | * **gzip/ | ||
+ | * '' | ||
+ | * pigz/pbzip2 ont une syntaxe compatible avec gzip/ | ||
+ | * Dans '' | ||
+ | alias bzip2=' | ||
+ | |||
+ | * **Besoin de compresser un répertoire le plus rapidement possible ?** | ||
+ | * Au lieu d' | ||
+ | * Compresser:< | ||
+ | * Décompresser:< | ||
+ | * lzo compresse un peu moins bien que gzip, mais il est 5 fois plus rapide (à tel point que le goulot d' | ||
+ | * (lz4 est en théorie un peu plus rapide que lzo, mais pas forcément disponibles partout.) | ||
* **Taper un É majuscule ?** : Appuyez sur < | * **Taper un É majuscule ?** : Appuyez sur < | ||
* Pour **«** et **»**, c'est < | * Pour **«** et **»**, c'est < | ||
+ | |||
+ | * **Entrer des caractères Unicode**: < | ||
+ | * Essayez ! < | ||
* **Déplacer une fenêtre**: Faites < | * **Déplacer une fenêtre**: Faites < | ||
- | * **Voir les points de montage**: C'est beaucoup plus lisible comme ça: '' | + | * **Voir les disques montés**: C'est beaucoup plus lisible comme ça: '' |
+ | * Encore plus lisible ? Essayez '' | ||
+ | * **Voir les disques/ | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | * **Réduction de l' | ||
+ | * Faire:< | ||
+ | * Rebooter pour prendre en compte, ou faire '' | ||
+ | * 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' | ||
+ | * **Réduction de l' | ||
+ | * '' | ||
+ | * C'est tellement efficace, que sur une machine avec 4 Go de RAM sur laquelle on lance plein de programmes au point d' | ||
+ | * zram est utile quelle que soit la quantité de RAM que vous avez en réduisant à néant les lectures/ | ||
+ | |||
+ | * **/tmp en tmpfs**: | ||
+ | * Afin d' | ||
+ | * N' | ||
+ | * Si les applications ont vraiment besoin de plus de RAM, tmpfs leur laissera la place en swappant ses données. | ||
+ | |||
+ | * **Voir les ports ouverts** et quelles applications les ont ouverts: | ||
+ | * <code bash> | ||
+ | * ou:<code bash> | ||
* **Partage rapide de fichiers par HTTP** : Un serveur web en 10 secondes. | * **Partage rapide de fichiers par HTTP** : Un serveur web en 10 secondes. | ||
Ligne 21: | Ligne 106: | ||
* Ajoutez à votre '' | * Ajoutez à votre '' | ||
* Puis lancez n' | * Puis lancez n' | ||
+ | |||
+ | * Un programme prend trop de CPU ? Vous voulez lui limiter le pourcentage de CPU qu'il consomme ? Utilisez **cpulimit**: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
* **Lancer un script au démarrage du système**: | * **Lancer un script au démarrage du système**: | ||
Ligne 26: | Ligne 116: | ||
* **Tracer tous les accès d'une application à mes fichiers perso** (remplacez // | * **Tracer tous les accès d'une application à mes fichiers perso** (remplacez // | ||
+ | * Plus puissant que strace ? **sysdig** ('' | ||
+ | |||
+ | * **Savoir quelle application verrouille un fichier ou un répertoire**:< | ||
* **Gestion des services par System-V, Upstart et systemd**: | * **Gestion des services par System-V, Upstart et systemd**: | ||
Ligne 44: | Ligne 137: | ||
* **Astuce rapide**: | * **Astuce rapide**: | ||
* Si vous n' | * Si vous n' | ||
+ | * Si au démarrage vous avez un long message " | ||
+ | sudo update-initramfs -ukall</ | ||
* **Isoler un logiciel** : Pour lancer une application en laquelle je n'ai pas confiance, en ne lui laissant **pas** accès à mon répertoire perso: | * **Isoler un logiciel** : Pour lancer une application en laquelle je n'ai pas confiance, en ne lui laissant **pas** accès à mon répertoire perso: | ||
* J' | * J' | ||
- | * Je créé un répertoire pour cette application dans lequel je met le script shell lanceur (qui utilise firejail):< | + | * Si je veux lancer un programme en lui interdisant d' |
+ | * Si je veux lancer un programme en lui interdisant l' | ||
SCRIPT=$(readlink -f " | SCRIPT=$(readlink -f " | ||
DIR=$(dirname " | DIR=$(dirname " | ||
Ligne 54: | Ligne 150: | ||
firejail --noprofile --private=. bash -c "/ | firejail --noprofile --private=. bash -c "/ | ||
* Le programme enregistrera ses fichiers de config dans ce répertoire, | * Le programme enregistrera ses fichiers de config dans ce répertoire, | ||
- | * Si je veux interdire au programme d' | ||
- | |||
- | * **Mini-mémo tar** (bah oui, quoi !) | ||
- | * Créer une archive: '' | ||
- | * Créer une archive //beaucoup plus vite// : '' | ||
- | * Pensez à installer: '' | ||
- | * Décompresser: | ||
- | * Exclure des types de fichiers: '' | ||
- | * Exclure des répertoires: | ||
* **Calculer la MD5 de fichiers avec sous-répertoires** | * **Calculer la MD5 de fichiers avec sous-répertoires** | ||
Ligne 83: | Ligne 170: | ||
* Copier dans '' | * Copier dans '' | ||
* Faire: '' | * Faire: '' | ||
- | |||
- | * **gzip/ | ||
- | * '' | ||
- | * Dans mon .bashrc, mettre:< | ||
- | alias bzip2=' | ||
- | |||
- | * **Image/ | ||
- | * '' | ||
- | * Créer une image (compressée): | ||
- | * Restaurer une image: <code bash> | ||
- | * Et partclone supporte aussi ext2, ext3, ntfs, etc.: Faire '' | ||
- | * '' | ||
* **Plus de son ?** Relancer pulseaudio: '' | * **Plus de son ?** Relancer pulseaudio: '' | ||
Ligne 277: | Ligne 352: | ||
* **Du mal à lire une clé USB, un disque externe ou une carte mémoire ?** Elle est peut-être en [[https:// | * **Du mal à lire une clé USB, un disque externe ou une carte mémoire ?** Elle est peut-être en [[https:// | ||
* Faites: '' | * Faites: '' | ||
- | |||
- | * **Réduction de l' | ||
- | * Faire:< | ||
- | * Rebooter pour prendre en compte, ou faire '' | ||
- | * **Réduction de l' | ||
- | * '' | ||
* **Faire du ménage dans vos fichiers**: | * **Faire du ménage dans vos fichiers**: | ||
Ligne 295: | Ligne 364: | ||
* Installez //gdmap//: '' | * Installez //gdmap//: '' | ||
* Il permet de repérer visuellement les fichiers les plus volumineux: À l' | * Il permet de repérer visuellement les fichiers les plus volumineux: À l' | ||
+ | * Dans le même genre: // | ||
* Vous pouvez aussi utiliser (en terminal) l' | * Vous pouvez aussi utiliser (en terminal) l' | ||
* En recherchant les **répertoires volumineux**: | * En recherchant les **répertoires volumineux**: | ||
Ligne 314: | Ligne 384: | ||
* Liste des processus actuellement en train de faire des I/O: '' | * Liste des processus actuellement en train de faire des I/O: '' | ||
* En cas de gros blocage, pour voir les processus en sont en attente des I/O: < | * En cas de gros blocage, pour voir les processus en sont en attente des I/O: < | ||
- | * Voir aussi: '' | + | * Si vous faites:<code bash> |
+ | * //Cached// : La quantité de mémoire vive utilisée pour le cache disque (pris dans l'espace mémoire libre, celui non utilisé par les applications). | ||
+ | * //Dirty// : La quantité de données en cache en attente d'être écrite sur disque (Cela peut être utile quand vous copiez des fichiers sur clé USB pour voir où il en est). | ||
* Installer le logiciel Captvty sous Linux ? C'est [[captvty_linux|possible]] ! | * Installer le logiciel Captvty sous Linux ? C'est [[captvty_linux|possible]] ! | ||
* Convertir un dossier de *.flac (et ses sous-répertoires) en mp3:< | * Convertir un dossier de *.flac (et ses sous-répertoires) en mp3:< | ||
+ | * Il y a plein d' | ||
* Changer la luminosité au clavier: | * Changer la luminosité au clavier: | ||
Ligne 362: | Ligne 435: | ||
* Désactiver temporairement un utilisateur: | * Désactiver temporairement un utilisateur: | ||
* Déloguer de force un utilisateur: | * Déloguer de force un utilisateur: | ||
- | |||
- | * Un programme prend trop de CPU ? Vous voulez lui limiter le pourcentage de CPU qu'il consomme ? Utilisez **cpulimit**: | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | |||
- | * Si vous avez un disque *.img (par exemple une image destinée à cette saloperie d' | ||
* **Monter un fichier *.img** (comme, par exemple, un fichier img de RecalBox) | * **Monter un fichier *.img** (comme, par exemple, un fichier img de RecalBox) | ||
+ | * Dans l' | ||
* Un fichier img peut contenir plusieurs partitions. Pour connaître les partitions faites: '' | * Un fichier img peut contenir plusieurs partitions. Pour connaître les partitions faites: '' | ||
Disque recalbox.img : | Disque recalbox.img : | ||
Ligne 382: | Ligne 449: | ||
recalbox.img1 | recalbox.img1 | ||
recalbox.img2 | recalbox.img2 | ||
- | * On voir qu'il y a 2 partition. La partition Linux commence à 132335. Le blocksize est de 512. La partition commence donc à 132335*512=67755520. On peut la monter en indiquant l' | + | * On voit qu'il y a 2 partition. La partition Linux commence à 132335. Le blocksize est de 512. La partition commence donc à 132335*512=67755520. On peut la monter en indiquant l' |
sudo mount -o loop, | sudo mount -o loop, | ||
+ | |||
+ | * Si vous avez un disque *.img (par exemple une image destinée à cette saloperie d' | ||
+ | |||
+ | * **Monter un disque .vdi dans votre système** : Il est possible de monter dans votre système un disque VirtualBox (*.vdi): | ||
+ | * Installer les outils: '' | ||
+ | * Activer le module: '' | ||
+ | * Monter le device: '' | ||
+ | * Vous pouvez voir les partitions du disque (/ | ||
+ | [...] | ||
+ | Périphérique Amorçage | ||
+ | / | ||
+ | / | ||
+ | * Vous pouvez monter une partition: < | ||
+ | sudo mount /dev/nbd0p2 part/</ | ||
+ | * Quand vous avez terminé:< | ||
+ | qemu-nbd -d / | ||
+ | |||
+ | |||
+ | * **Faire des images de partitions ou de disque** (pour garder une copie d'une partition ou d'un disque complet: disque dur, clé USB, carte MicroSD...) | ||
+ | * Si votre disque est /dev/sda, les partitions seront /dev/sda1, /dev/sda2, etc. Pour voir les partitions: '' | ||
+ | * **Avec dd**: Vous pouvez sauvegarder partitions ou disques complets. | ||
+ | * '' | ||
+ | * Sauvegarder une partition ou un disque (en compressant): | ||
+ | * (mettre /dev/sda pour sauvegarder TOUTES les partitions, y compris le MBR). | ||
+ | * Restaurer: <code bash> | ||
+ | * **Avec partclone**: | ||
+ | * '' | ||
+ | * '' | ||
+ | * Vous devez utiliser le partclone correspondant au système de fichier de la partition que vous voulez sauvegarder (ext4 --> partclone.ext4). | ||
+ | * Voir '' | ||
+ | * Pour FAT (fat12/ | ||
+ | * Sauvegarder une partition ext4 (en compressant): | ||
+ | * Restaurer: <code bash> | ||
+ | * Voir les informations d'une image partclone:< | ||
+ | * Vérifier une image partclone:< | ||
+ | * Conseil: Nommez le fichier pour vous y retrouver. Moi j' | ||
+ | * N' | ||
+ | * Si vous avez sauvegardé les partitions individuellement, | ||
+ | * Sauvegarder:< | ||
+ | * Restaurer:< | ||
+ | * **Astuce**: Pour sauvegarder sur un disque FAT32 (dont la taille limite de fichier est 4 Go), on peut découper par fichiers de 4 Go: | ||
+ | * Sauvegarde:< | ||
+ | * Pour restaurer:< | ||
+ | |||
+ | * Besoin de voir si votre joystick ou manette fonctionne bien ? Utilisez **jstest-gtk** ('' | ||
+ | * PS: Même si //jstest// fonctionne, il se base sur ''/ | ||
+ | |||
+ | * Besoin d' | ||
+ | |||
+ | * **Faire un backup de votre smartphone Android par ssh+rsync**: | ||
+ | * À partir du moment où votre smartphone et votre ordinateur sont sur le même réseau local, //rsync// est très efficace pour synchroniser des répertoires. Heureusement pour nous, il existe sous Android des serveurs ssh incluant un serveur rsync, comme [[https:// | ||
+ | * Voici un exemple de script de sauvegarde (avec dans l' | ||
+ | # Backup de la mémoire interne du téléphone: | ||
+ | sshpass -p ' | ||
+ | # Backup de la carte MicroSD | ||
+ | sshpass -p ' | ||
+ | </ | ||
+ | |||
+ | * Il est assez facile de [[linux-partage-ethernet|partager une connexion Ethernet en WiFi]] ou se créé un hotspot WiFi (par exemple juste entre votre smartphone et votre ordinateur). | ||
+ | |||
+ | * Vous êtes chez FreeMobile ? Voici comment [[linux-sms|envoyer automatiquement (et gratuitement) des SMS lors de certains événements dans les logs]]. | ||
+ | |||
+ | * **Backup ?** [[borgbackup|BorgBackup]] est un logiciel de backup remarquablement efficace. Je l' | ||
+ | |||
+ | * Je n'ai pas encore pris le temps de mettre le nez dedans, mais // | ||
+ | * Autre alternative à explorer: // | ||
+ | |||
+ | * **flock** permet de vous assurer qu'un programme n'est pas lancé plusieurs fois en même temps, ou que deux tâches ne sont pas lancées simultanément. | ||
+ | * Exemple: Si vous lancez séparément ces deux commandes (par exemple dans des terminaux différents), | ||
+ | flock / | ||
+ | |||
+ | * Lancer une application graphique en tant qu'un autre utilisateur ?< | ||
+ | > su autrecompte | ||
+ | > gimp</ | ||
+ | * Penser à faire '' | ||
+ | |||
+ | * **Connaître la qualité d'un JPEG.** | ||
+ | * Malheureusement, | ||
+ | |||
+ | * **Convertir un PDF en images**: | ||
+ | * < | ||
+ | * Pour sortir dans un autre format: '' | ||
+ | * Par défaut la résolution en sortie est 150dpi. Vous pouvez la changer avec '' | ||
+ | |||
+ | * **Coloriser les logs.** | ||
+ | * '' | ||
+ | * ccze supporte syslog, vsftpd, php... tapez '' | ||
+ | |||
+ | * Compter combien vous avez d' | ||
+ | |||
+ | * **Youtube-dl** est un fantastique logiciel pour télécharger une vidéo qui vous intéresse. Il supporte YouTube, Vimeo et des centaines de sites (arte.tv, etc.). | ||
+ | * Exemple: Mettez juste l'URL de la page, et il vous télécharge la vidéo dans la meilleure qualité: < | ||
+ | * Mais souvent, les distributions Linux n'ont que de vieilles versions, donc je vous recommande d' | ||
+ | * Dé-installez celle fournie avec votre distribution ('' | ||
+ | * Installez la dernière version:< | ||
+ | sudo chmod a+rx / | ||
+ | * De temps en temps, pensez à la mettre à jour:< | ||
+ | |||
+ | * Récupérer l' | ||
+ | |||
+ | * Si au démarrage vous préférez voir les logs de démarrage plutôt que le logo animé, modifiez le fichier ''/ | ||
+ | * Changez la ligne < | ||
+ | * en: < | ||
+ | * puis faites: '' | ||
* D' | * D' |
linux-vrac.txt · Dernière modification : 2024/01/30 14:32 de sebsauvage