Archives par mot-clé : système

Commande non sauvegardée dans l’historique de bash

Peut-être vous arrive-t’il de copier-coller des lignes de commande dans une console linux, de l’exécuter, de vouloir la relancer et de ne pas la trouver dans l’historique ?

La raison est simple, par défaut sous linux bash ignore les commandes en double et les commandes commençant par des espaces.
Ce comportement est paramétrable avec la variable d’environnement HISTCONTROL.

Pour information, cette variable est vide sous macos.

Vérifier votre paramétrage :

$ echo $HISTCONTROL
ignoredups:ignorespace

ignoredups: ignore les commandes dupliquées

ignorespace: ignore les commandes commençant par des espaces.

la solution:

$ export HISTCONTROL=ignoredups

ajouter cette ligne à votre .bashrc ou au niveau système /etc/bash.bashrc pour rendre ce réglage permanent.

DEBIAN: Créer des paquets debian vides pour palier aux problèmes de dépendances

Comme beaucoup, je suis sous Ubuntu.

Cet OS est très bien conçu, par contre certains paquets ont quelques fois des dépendances un peu farfelues, voir qui vous bouffent des ressources inutilement.

Si comme moi, vous n’utilisez pas le bluetooth, le supprimer est difficile.
Il faudrait, entre autre, se priver de unity-desktop…

Bref, fin du Blabla…

Pour forcer la suppression d’un paquet sans désinstaller les paquets en dépendant:

$ sudo dpkg -r --force-depends package

Par exemple:

$ sudo dpkg -r --force-depends rfkill gnome-bluetooth bluez bluez-alsa gnome-orca network-manager-pptp network-manager-pptp-gnome speech-dispatcher indicator-bluetooth

Maintenant vous avez plein de paquets cassés… pas bien Alexandre!

Pour remédier à ce problème, une solution consiste à installer des paquets résolvant ces dépendances perdues, mais ces derniers seront vides, en gros des « dummy packages ».

Pour créer ces paquets, vous devrez par exemple utiliser equivs-control et equivs-build ou mon script.

La commande:

$ ./gen-dummy-package.sh --install|i [packageName]+
# Par exemple:
$ ./gen-dummy-package.sh -i rfkill nome-bluetooth bluez

Le « -i » va effectuer une installation du paquet nouvellement créé.

Le script complet: