Skip navigation

Category Archives: Libre

Lorsque l’on a un serveur, la mise à jour se passe en ligne de commande. En général cela se passe en modifiant le fichier de source pour APT. Il suffit de se tromper dans le fichier source.list pour avoir des problèmes.

ATTENTION ! Une mise à jour du système et surtout le changement de version reste une manipulation dangereuse sur un serveur de production! Faites des sauvegardes avant.

Sous Ubuntu il existe un outil en ligne de commande qui effectue les même vérification que l’utilitaire graphique update-manager.

Pour pouvoir utiliser la commande de mise à jour de version d’Ubuntu en ligne de commande il faut que le paquet update-manager-core

Mise à jour vers la version stable suivante encore supportée:

do-release-upgrade

Il est aussi possible de lui rajouter des paramètres:

  • -p: met à jour vers la dernière version stable disponible
  • -d: permet de mettre à jour vers la version de développement en cours
  • -c: met à jour vers la dernière version Release

Exemples:

22:33 motarion@[cyber-workstation]:~$ do-release-upgrade
Checking for a new ubuntu release
No new release found
23:07 motarion@[cyber-workstation]:~$ do-release-upgrade -p
Checking for a new ubuntu release
No new release found
23:08 motarion@[cyber-workstation]:~$ do-release-upgrade -d
 
Checking for a new ubuntu release
 
Done Upgrade tool signature
 
Done Upgrade tool
 
Done downloading
 
extracting 'karmic.tar.gz'
 
authenticate 'karmic.tar.gz' against 'karmic.tar.gz.gpg'
 
[sudo] password for motarion:
 
Lecture du cache
 
Vérification du gestionnaire de paquets
 
Reading package lists: Donejaunty-security/multiverse Packages: 95
 
Reading state information: Done
 
Reading state information: Done
 
Reading state information: Done
 
Done downloading
 
Vérification du gestionnaire de paquets
 
Reading package lists: Donekarmic-security/multiverse Packages: 95
 
Reading state information: Done
 
Reading state information: Done
 
Reading state information: Done
 
Calcul des modifications
 
Voulez-vous commencer la mise à niveau ?
 
18 paquets vont être supprimés. 161 nouveaux paquets vont être
 
installés. 1056 paquets vont être mis à jour.
 
Vous devez télécharger un total de 818M. Ce téléchargement
 
prendra environ 12 minutes avec votre connexion.
 
La récupération et l'installation de la mise à niveau peuvent
 
prendre plusieurs heures. Un fois le téléchargement terminé,
 
l'opération ne peut plus être annulée.
 
_Continuer [oN]  Détails [d]

Suite à un problème avec mon environnement Trac pour gérer mes sources, celui ci était envahi de ticket SPAM envoyé par des bots car j’avais mal configuré les permissions. Maintenant que les permissions sont bonnes, il ne reste plus qu’à supprimer les ticket SPAM.

Ma version de Trac est celle de la Dapper (6.06 LTS) d’Ubuntu Server, donc la version 9.3. Il n’existe pas de plugin pour cette version qui permette de supprimer des tickets en masse. J’avais 300 ticket à supprimer.

La base de donnée étant en SQLite, j’ai écrit un petit script qui permet de supprimer les tickets.

Ce script doit être lancé avec un utilisateur qui a les droits décriture sur la base de donnée de Trac.

Paramètres:

  1. Chemin de la base de donnée SQLite de trac
  2. Premier ticket à supprimer
  3. Dernier ticket à supprimer

Script trac_del_ticket.sh :

#
#    Mass removing tickets from Trac environnement
#
#    Motarion <motarion@gmail.com>
#    Creation date: 12/07/2009
#    Last modification: 12/07/2009
#
#    History:
#    v0.1: <12/07/2009> Initial release.
#
 
# Variables
NB_PARAM="$#"
DB_PATH="$1"
FIRST_TICKET="$2"
LAST_TICKET="$3"
 
# Programs
SQLITE_CLIENT=`which sqlite3`
 
# Tests
if [ $NB_PARAM -gt 3 ] || [ $NB_PARAM -lt 3 ];
then
echo "Error: Usage $0 PATH_TO_TRAC.DB FIRST_TICKET LAST_TICKET"
exit 1
fi
 
if [ $SQLITE_CLIENT == "" ]
then
echo "Error: This script require Sqlite3 client to work. Please install it."
exit 1
else
echo "Info: Sqlite client dependancy satisfied. ($SQLITE_CLIENT)"
fi
 
if [ ! -d $DB_PATH ]
then
echo "Error: The path to the trac.db file is not correct."
exit 1
else
echo "Info: Path to the trac.db is correct."
fi
 
# Main loop
for i in `seq $FIRST_TICKET $LAST_TICKET`
do
TICKET_ID=$i
$SQLITE_CLIENT $DB_PATH"trac.db" "DELETE FROM ticket WHERE id=$TICKET_ID"
$SQLITE_CLIENT $DB_PATH"trac.db" "DELETE FROM ticket_change WHERE ticket=$TICKET_ID"
$SQLITE_CLIENT $DB_PATH"trac.db" "DELETE FROM attachment WHERE type='ticket' and id=$TICKET_ID"
$SQLITE_CLIENT $DB_PATH"trac.db" "DELETE FROM ticket_custom WHERE ticket=$TICKET_ID"
done

Après avoir eu un serveur de piraté j’ai pu voir les commande qu’avait passé le pirate, sans pouvoir savoir exactement quand il les avait utilisées (Il n’avait pas nettoyé l’historique). J’ai donc cherché sur Internet une solution sans trouver grand chose pour Bash.

Cette modification est totalement anodine pour le système et ne peut entraîner de perte de donnée.

Après avoir acheter un livre sur Bash j’ai trouvé mon bonheur. Il faut absolument avoir la version 3.0 ou plus de bash. Ubuntu Dapper Drake et les version suivante intègre d’office une version supérieur à la 3.0.

motarion@cyber-workstation:~$ bash --version
GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.

Pour activer la date dans l’historique il suffit de lancer la commande suivante:

export HISTTIMEFORMAT="%Y/%m/%d @ %T "

Voici le résultat:

  456  2009/04/18 @ 13:58:32 ping free.fr
  457  2009/04/18 @ 13:58:35 ls
  458  2009/04/18 @ 13:58:48 spas
  459  2009/04/18 @ 13:58:55 history

Attention: cette modification n’est pas persistente et si vous fermez le SHELL actuel la modification sera perdue!

Pour rendre cette modification persistente il y a deux solutions:

  • Modifier le fichier .bashrc de chaque utilisateur
  • Modifier la configuration Globale de Bash

    I – Pour la première solution, il faut savoir que les nouveaux utilisateur ne profiteront pas de la modification. Si vous êtes le seul à vous connecter dans ce cas c’est la solution la plus simple. Lancez l’éditeur de texte que vous préférez puis copier la ligne suivante en fin de fichier:

    export HISTTIMEFORMAT="%Y/%m/%d @ %T "

    Édition du fichier:

    nano .bashrc

    II – La seconde solution permet de l’activer pour tout le système, même pour les nouveaux utilisateurs:

    sudo nano /etc/bash.bashrc

    Puis copiez en fin de fichier la commande suivante:

    HISTTIMEFORMAT="%Y/%m/%d @ %T "

    Vous pourrez alors constater que la modification est active pour tous les nouveaux Shell que vous ouvrirez.

    PS: Cette astuce fonctionne aussi sur Debian depuis la version Etch bien que le chemin de configuration de bash puisse changer.

    En utilisant le logiciel spécifique (hplip) de HP pour installer les imprimantes multifonctions, il est possible de configurer en un seul coup l’impimante ainsi que le scanner en réseau. Si l’on passe par l’assistant standard, il ne trouve que l’imprimante.

    1 – Installation des dépendances:

    sudo apt-get install python-qt3

    2 – Lancement du programme:

    sudo hp-setup

    3 – Suivre les étapes:

    Étape 1Configuration de la connexion

    Découverte de l’imprimante sur le réseauDécouverte de l’imprimante sur le réseau

    Choix du profil imprimanteChoix du profil imprimante

    Information sur l’imprimante Information sur l’imprimante

    Installation de l’imprimante Installation de l’imprimante

    Voilà il ne reste plus qu’à tester votre nouellle imprimante. Les pilotes des imprimantes HP sont développer sous licence libre, vous pouvez trouver les derniers pilotes sur le site dédié à hplip .

    J’ai lu un article sur Génération Libre que je trouve très interressant, il est intitulé "Pourquoi les logiciels libres ?", il parle autant du coté économique que du coté idéologique. En sommes il est à lire !

    La tant attendue version 0.3 de ReactOS vient de sortir ! Si vous ne connaissez pas cet OS c’est normal car il n’est pas encore très diffusé pour le grand public. Son objectif est toujours le même, offrir un système libre compatible nativement avec les application Win32, d’ailleurs ils travaillent main dans la main avec Wine, qui je le rappel n’est pas un émulateur.

    La plus grosse amélioration de cette version est l’ajout du réseau et on peut enfin aller sur le net avec et surfer ou alors télécharger Firefox !

    J’aimerais bien essayer cette version mais je ne crois pas que j’aurai le temps.

    L’annonce

    Compatibility Database pour voir si votre matériel est compatible, je n’ai pas trouvé les pilotes nvidia de ma carte mère