Aller au contenu. | Aller à la navigation

Outils personnels
Sections
Vous êtes ici : Accueil Blog

Blog

03/09/2010

Chrome 6 en version définitive fait son entrée

by Didier — last modified 03/09/2010 16:32
Classé sous :

Top top et en plus il intégre un lecteur PDF très rapide. Ce dernier est désactivé par défaut, mais un petit tour sur la page « chrome://plugins/ » permettra de corriger ce problème.

30/08/2010

Ces vidéos You Tube que personne ne regarde jamais

by Didier — last modified 30/08/2010 14:17
Classé sous :

Alors Forfait ou Régie?

by Didier — last modified 30/08/2010 11:58
Classé sous :

Que choisir enter le forfait ou la régie ?

Le forfait
Le principe: vous définissez avec le client le périmètre du projet et convenez ensemble du temps imparti et donc du prix pour ce projet.
Plusieurs problèmes peuvent se poser avec la réalisation d’un projet au forfait:
- sous-estimation de la charge de travail

- sur-estimation de la charge de travail

- changement dans la volumétrie du projet

La régie
le principe: vous définissez un prix horaire ou journalier par poste et vous vous mettez à disposition du client pour réaliser son projet (que ce soit sur site ou en télé-travail).
Là aussi plusieurs types de problèmes peuvent surgir:
- inadéquation poste/prix avec le prix

- suivi à la culotte

Alors? Régie ou forfait?
Je dirais que dans l’absolue il n'y a pas de type de facturation parfaite. Le forfait est plus adapté à des petits projets, ou des projets avec des problématiques déjà traitées alors que la régie est beaucoup plus adaptée pour des projets de grande envergure (où les problématiques et la volumétrie de travail à fournir peut évoluer rapidement) ainsi qu’aux projets inconnus. Dans le cas de la régie, prenez un soin tout particulier à étudier le projet en détail et à effectuer une estimation des coûts des plus précise.

Installation de chkrootkit

by Didier — last modified 30/08/2010 11:58
Classé sous :

chkrootkit est un outil permettant de détecter les traces d'une attaque et rechercher la présence d'un rootkit sur un système Unix/Linux.
Vous devez effectuer l'installation en tant que root.
On recupère la derniere version de chkrootkit :

# cd /usr/local/src
# wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz


On décompresse et compile l'application:

# cd /usr/local
# tar -zxvf src/chkrootkit.tar.gz
# cd chkrootkit-*/
# make sense


Pour executer chkrootkit il suffit de d'utiliser la commande suivant :

# ./chkrootkit

Une petite tâche cron qui vous envoit les résultats par mail ca vous tente ? 
il suffit de rajouter dans /etc/crontab :
0 3 * * * root (cd /usr/local/chkrootkit-*; ./chkrootkit 2>&1 | mail VOTRE_ADRESSE_EMAIL -s "Résultats de chkrootkit")


Pour que chkrootkit s'execute tous les jours à 3h du matin et vous envoit les résultats par mail.
N'oubliez pas de remplacer VOTRE_ADRESSE_EMAIL par votre adresse email (logique non ?).

18/08/2010

Un site de photo sympa de Damien aKa neron92

by Didier — last modified 18/08/2010 16:13
Classé sous :

15/08/2010

Quelques recettes

by Didier — last modified 15/08/2010 13:07
Classé sous :

12/08/2010

Les utilisateurs d’iPhone ont une vie sexuelle plus remplie ?

by Didier — last modified 12/08/2010 08:55
Classé sous :

Marrant !!!

En voici un graphique totalement “WTF” qui montre que les utilisateurs d’iPhone auraient une vie sexuelle bien plus remplie que les utilisateurs d’un smartphone Blackberry et encore plus que ceux ayant un téléphone sous Android ! Ces chiffres sortent d’une étude sur la photo numérique, menée par le site OK Cupidon sur 9785 personnes et après avoir traité 552 000 photos !

//troll on// Bah voilà pourquoi l’iPhone fonctionne si bien ! //troll off// (rhooo ça va c’est les vacances hein)

phone-sex


SexAndSmartPhonesByAge

Comment démonter votre iPhone V1/EDGE

by Didier — last modified 12/08/2010 08:47
Classé sous :

Tutoriel trouvé sur http://forum.frenchiphone.com/index.php/topic,6633.0.html

En préamblue, sachez que évidement vous perdrez votre garantie Apple, sachez aussi que le démontage / remontage laisse pratiquement toujours des traces sur la coque de l'iPhone, et bien évidement qu'a la moindre fausse manip votre iPhone sera bon pour la poubelle.

Donc procédez à vos risques et périls !!!

Outils :
Un petit tournevis cruciforme
un cutter ou scalpel
un médiator ou un plastique fin très rigide (évitez les objets métalliques vous pourriez faire des rayures)

Vous avez le temps, vous êtes bien détendu, votre iPhone est éteint ? OK c'est parti

0- sortez le tiroir de la carte sim.

1- Virer le cap noir en bas de l'iPhone, chacun a sa technique mais au final on galère
inserez une lame de cutter entre la prise de branchement et le cap noir (il y a 2 clips derrière) puis attaquez par le coté entre le bord argenté et le cap noir. il faut forcer un peu :-/



2- Voila l'étape la plus compliqué, enlever la coque arrière sans l'abîmer.
pour cela enlevez déjà les 3 petites vis alignées en bas de la coque.



C'est là que ça se complique, en fait la coque est juste emboîtée sur l'iPhone mais elle tient super bien !!  Attaquez par un coté, glissez un petit tournevis derrière la coque et sur le coté avec le médiator essayez de l'insérer entre le bord argenté et la coque et élargissez la fente petit a petit jusqu'en haut... on ne s'énerve pas... c'est super galère mais surtout trés fragile donc prennez votre temps.. la même chose de l'autre coté et hop c'est bon la coque vient, détachez le connecteur de la carte mère.



3- Déconnectez délicatement les 3 fils blancs, ils sont juste clippés (attention sur celui entre la carte mère et la batterie il y a souvent un pâté de colle isolante).

4-  Dévissez les 3 vis qui tienne la carte mère. Sortez la batterie doucement a l'aide d'un petit tournevis (elle est un peu collée) puis déconnectez les 4 connecteurs sous la carte mère dont une languette en la tirant doucement. En sortant la carte mere, la camera viendra avec, elle est juste emboîtée et tenue par un connecteur.



5- Dévissez les 10 vis autour du cadre, vous aller pouvoir ainsi sortir le pourtour argenté qui tient l'écran. (une des vis est un peu cachée en bas au niveau du HP)

6- L'écran tiens par 3 clip de chaque coté de l'iPhone, commencez par un coté et décollez l'écran doucement a l'aide d'un cutter par le bas de l'iPhone, Attention il est bien collé et surtout fragile ! Arrivé en haut, faite attention aux connecteurs de la carte mère.




Voila pour le remontage la partie la plus technique est de re-connecter la carte mère, il vous faudra décoller doucement la languette en S pour avoir l'espace nécessaire pour re-connecter les 4 connecteurs.

05/08/2010

Lister les liens symboliques

by Didier — last modified 05/08/2010 11:09
Classé sous :

Voici une astuce qui permet d'obtenir la liste des liens symboliques contenus dans un répertoire ...

ls -F | grep @$ | awk -F@ '{print $1}'

J'ai cherché pendant pas mal de temps comment obtenir une telle liste, en utilisant les options de ls, la commande grep ou encore la commande find.

28/07/2010

Exemples d'utilisation de la commande find

by Didier — last modified 28/07/2010 15:03
Classé sous :

     

  • Pour afficher tous les fichiers se terminant par ``.c'' :

     

    find . -name ".c" -print

     

  • Pour afficher tous les répertoires dont le nom se termine par ``s'' :

     

    find . -type d -name "*s" -print

    Pour afficher tous les fichiers, on aurait utilisé le code f.

     

  • Pour afficher tous les fichiers ayant une taille de 10 blocs9.1 :

     

    find . -size 10 -print

    ce qui est équivalent à demander la liste des fichiers ayant une taille de 5120 caractères :

     

    find . -size 5210c -print

    On aurait pu aussi demander la liste des fichiers ayant une taille supérieure (+200k) ou inférieure (-200k) à 200 Ko.

     

  • Pour afficher tous les fichiers ayant une certaine permission exprimée en octale (voir section 1.9.6 page [*]) :

     

    find . -perm 755 -print

    ou ayant au minimum les droits d'écriture pour le groupe :

     

    find . -perm -020 -print

     

  • Pour éxecuter la commande ls -l pour chaque fichier trouvé :

     

    find . -type f -exec ls -l {} \;

    et pour demander confirmation avant chaque action :

     

    find . -type f -ok -exec rm {} \;

    Toute autre commande peut être éxecutée avec l'option -exec.

     

  • Pour associer plusieurs critères avec -a pour et, -o pour ou, ! pour négation. Par exemple :

     

    find . ! -user root -print

    affiche tous les fichiers n'appartenant à root, et

     

    find . \( -name '*.tex' -o -name '*.dvi' \) -print

    affiche tous les fichiers se terminant par ``.tex'' ou ``.dvi''.

Femme vs Homme

by Didier — last modified 28/07/2010 14:06
Classé sous :

Je suis tombé je sais plus comment sur ce site, qui vous fait un quizz et rajoute votre score à celui de tous les autres.

Ainsi si vous êtes un homme ça le rajoute aux hommes, et une femme pour les femmes !

Pour le moment les hommes sont bien plus fort… Mais ça peux changer alors allez faire un tour c’est drôle !

Le site Femme vs Homme.

22/07/2010

Choix pour un CRM : SugarCRM ou ZohoCRM ?

by Didier — last modified 22/07/2010 16:45
Classé sous :

Le choix difficile du moment

Choix pour un CRM : SugarCRM ou ZohoCRM ?

Zoho a été créé par AdventNet, société spécialisée dans les outils de gestion de sécurité, qui s’est fait connaître en lançant une suite bureautique en ligne il y a 2 ans. Aujourd’hui, Zoho emploie 200 personnes et compte 25 000 utilisateurs. Le logiciel Zoho CRM est proposé en français depuis quelques mois, localisé par une nouvelle société, Zohosphere, qui assure également la formation et le paramétrage pour les sociétés qui ne souhaitent pas le faire elles-mêmes.

Avec son module CRM, Zoho met en avant son positionnement « web 2.0 ». Qu’en est-il concrètement ? Une rapide inscription sur le site me permet d’accéder à la version gratuite pour quelques tests en fonctionnement réel. On remarque vite que la techno Ajax permet une saisie simplifiée, assistée, et en évitant souvent le rafraichissement de pages, ce qui accélère la saisie. Après une ou deux heures de tests et quelques compléments d’information obtenus auprès de Catherine Coolen, qui a créé de Zohosphere, voici à chaud les fonctions qui paraissent intéressantes à noter :

  • Un paramétrage simple et immédiat des champs et listes de valeurs,
  • Un générateur de formulaire, pour capturer des contacts sur votre site web et les intégrer directement dans votre CRM,
  • La gestion automatique des désinscriptions pour les envois d’e-mailings,
  • un moteur de workflow qui déclenche des envois d’e-mails ou des créations de tâches, selon des règles simples à créer à partir de critères appliqués sur les champs d’une des tables de la base de données (ex de règle proposée en standard : envoi d’e-mail lorsqu’une affaire > 1000 $ est gagnée)
  • un moteur de recherche, qui permet d’accéder très rapidement à toute l’information et qui peut aussi être paramétré pour rechercher dans certains champs de certaines tables
  • un cycle de vente complet : devis, commande, et même facture, avec également la gestion des fournisseurs et des achats
  • la notification par e-mail qui s’active par simple clic lors de la création d’une tâche ou d’un événement
  • une fonction d’importation de données qui permet bien sûr d’importer des contacts, mais aussi des produits, des tarifs, des fournisseurs, etc.
  • une fonction de mise à jour en masse de l’information,
  • un outil de recherche et de fusion des doublons,
  • la possibilité de paramétrer ses propres écrans de présentation des informations, avec plusieurs « vues » si besoin : exemple, la liste de mes tâches de la semaine, avec en première colonne le nom du contact
  • une fonction de gestion des prévisions, qui permet d’intervenir manuellement sur la liste des affaires prévues, pour valider et s’engager sur les signatures
  • une page d’accueil qui permet à chaque utilisateur d’organiser l’information utile et d’afficher les graphes et tableaux de bord.

Quelques regrets : la plupart du temps les possibilités de ciblage, de paramétrage et de création de vue sont « mono-table » (pas de croisement de critères avec des tables liées). La fonction de devis/ commandes/ factures est assez simple à première vue, mais elle nécessite de connaître une ou deux astuces de saisie pas évidentes au départ. Le marketing est essentiellement destiné à des envois d’e-mailings (250/jour maximum), mais sans suivi du tracking.

Enfin, le logiciel ne gère pas pour le moment les hiérarchies au niveau des utilisateurs, mais cette fonction est en cours de développement et devrait arriver d’ici peu. Le logiciel n’est pas non plus très ouvert à l’intégration avec des offres type ERP, mais là aussi des évolutions ne sont pas impossibles, le logiciel connaissant une montée de version tous les mois depuis sa création. 

Point fort non négligeable : le logiciel est gratuit jusqu’à 3 utilisateurs. La version gratuite inclut toutes les fonctions sauf la gestion de l’e-mailing et la synchronisation avec Outlook, et elle limite l’espace disque à 250 Mo (attention avec les pièces jointes). Zohosphere cible donc en France les TPE et les entreprises récemment créées, pour lesquels quelques jours de paramétrage permettent de démarrer avec un outil qui répond aux besoins de ces petites structures.

Au-dessus de trois utilisateurs, le prix est très accessible : 12 €HT/mois et par utilisateur. L’offre séduit donc des clients déjà habitués aux offres ASP, mais qui cherchent à en réduire les coûts.  

En synthèse, Zoho est bien un éditeur à la sauce 2.0, avec un logiciel en mode Saas, gratuit pour les petites structures, et qui utilise essentiellement le canal web pour les interactions clients. Son support et son mode de fonctionnement pour les évolutions produits sont aussi dans cette mouvance. Maintenant, l’offre n’a pas encore mis en place de fonction révolutionnaire et doit encore progresser sur certaines fonctions de base. Mais le logiciel est jeune et se répand vite (déjà une dizaine de partenaires sur tous les continents). Gageons qu’il progressera rapidement pour s’attaquer à des cibles de plus en plus grosses.
Les utilisateurs de Google avaient déjà la possibilité de souscrire aux services de Zoho directement avec leurs identifiants Google, dorénavant l’intégration va plus loin avec non seulement la disponibilité des applications Zoho directement à partir de Google mais avec une synchronisation des données des deux environnements.

Voici une liste des possibilités dorénavant offertes:

  1. Accéder à Zoho CRM directement à partir de Google Universal Navigation
  2. Ajouter des utilisateurs Google Apps à Zoho CRM
  3. Importer ses contacts de Google vers Zoho CRM
  4. Google Mail s’intègre entièrement dans Zoho CRM: les emails envoyés à des clients ou reçus par eux apparaîtront directement dans Zoho CRM.
  5. Il est maintenant possible d’exporter vos RDVs de Zoho CRM dans votre Calendrier Google
  6. Vos fichiers créés avec Google Docs sont maintenant directement joignables à vos objets Zoho CRM
  7. Intégrer un gadget contenant vos comptes, vos contacts, vos leads ou vos tâches dans GMail, sur votre page iGoogle ou encore Google Site.

19/07/2010

Insérer un symbole à l'aide de son code de caractère dans Outlook

by Didier — last modified 19/07/2010 13:51
Classé sous :

Petite astuce pour rajouter des smileys dans Outlook

Cette fonctionnalité nécessite Excel, FrontPage, InfoPath, OneNote, Outlook, PowerPoint, Project, Publisher, Word ou Visio.

Vous pouvez également utiliser le code de caractère du symbole comme raccourci clavier. Par exemple, pour insérer une émoticône Visage, maintenez la touche ALT enfoncée tout en tapant 074 sur le pavé numérique. Le caractère obtenu peut être différent de celui que vous attendiez. Dans ce cas, sélectionnez le caractère, puis appliquez la police Wingdings.

 Remarque   Vous devez utiliser le pavé numérique et non le clavier pour taper les chiffres. Assurez-vous que la touche Verr. num est activée lorsque vous tapez des chiffres à l'aide du pavé numérique.

Symbole Code de caractère
Émoticône Visage ALT+074
Émoticône Déçu ALT+075
Émoticône Triste ALT+076

23/06/2010

Les 5 meilleurs outils de contrôle à distance gratuits

by Didier — last modified 23/06/2010 13:35
Classé sous :

En tant qu'informaticien nous sommes souvent sollicité pour des dépannages informatiques chez nos amis et dans notre famille. Des outils existent pour vous éviter les déplacements et gagner du temps !

La plupart des demandes de dépannage ne nécessitent pas un déplacement sur site et peuvent être solutionnées à distance en ce qui concerne les logiciels (installation, utilisation…) et les systèmes d’exploitation (Windows, Mac OS X, Linux…)

Les 5 meilleurs logiciels de contrôle à distance via Internet gratuits

  1. LogMeIn Free : (Windows et Mac OS X) outil de base mais très suffisant pour les besoins d’assistance, de désinfection ou pour accéder à vos fichiers depuis n’importe quel navigateur Web. Créez un compte puis installez le logiciel sur le poste à contrôler. Aucune configuration du pare-feu (firewall) ou de votre boite (box) Internet requise.
  2. TeamViewer : (Windows et Mac OS X) solution complète pour contrôler à distance, partager votre écran ou transférer des fichiers avec la machine distante. Aucune installation requise, vous lancez le logiciel et communiquez un identifiant (ID) et un mot de passe à votre partenaire (par téléphone) pour démarrer une prise de main à distance ou montrer votre dernière présentation Powerpoint ou Impress.
  3. SparkAngels : (Windows, Mac OS X, Linux) service d’accompagnement à distance pour une entraide ou une formation instantanée. SparkAngels utilise la technologie Java pour fonctionner sur n’importe quel système PC ou Mac. Aucune installation requise, acceptez juste les certificats et licence dans votre navigateur. Limité à 100 minutes par mois dans sa version gratuite.
  4. Assistance à distance dans Windows XP etVista : vous pouvez également utiliser le service d’assistance à distance inclus dans Windows XP et Windows Vista pour intervenir ou demander de l’aide.
  5. UltraVNC : (Windows toutes versions, Mac OS et Linux) un des premiers outils de contrôle à distance, utilisé par de nombreux professionnels. A réserver aux spécialistes car UltraVNC n’est pas sécurisé par défaut ! Vous pouvez néanmoins consultez ce tutoriel en français pour la configuration du poste client et serveur et la FAQ du forum officiel.

En tant que futur utilisateur de l'IPAD, j'ai aussi chercher à voir quel seraient les softs compatibles avec cette machine : VNC ou TeamViewer

08/06/2010

Les délais de conservation des papiers et documents

by Didier — last modified 08/06/2010 12:48
Classé sous :

Assurances

Contrats habitation et automobile 
10 ans 
Votre responsabilité peut être recherchée pendant dix ans. Les contrats qui la couvrent doivent être conservés pendant au moins ce délai. 

Contrats d'assurance décès et d'assurance vie 
indéfinie 
Le plus important, c'est que les bénéficiaires en retrouvent la trace. 

Quittances de prime 
2 ans 
L'assureur n'a que deux ans pour les contester. 

Cotisations d'assurance vie 
5 ans Si vous bénéficiez d'un crédit d'impôt. 

Résiliation 
2 ans 
Conservez le double du courrier et l'avis de réception. 

Dossier de sinistre 
10 ans 
Courriers et preuves de versements doivent être conservés dix ans après la fin de l'indemnisation. Plus longtemps, si des séquelles (médicales surtout) sont à craindre. Délai ramené à deux ans, à l'exclusion de toutes questions de responsabilité, si vous avez affaire à votre propre assureur. 

Automobile

Contraventions 
2 ans 
La prescription des poursuites est d'un an, mais celle des peines de deux ans. 

Facture d'achat 
2/3 ans 
Aussi longtemps que dure la garantie. 

Facture de réparation 
30 ans 
Ce délai démarre à partir de la revente (vices cachés). 

Banques

Bordereau de versement 
10 ans 
C'est votre seule preuve de remise d'argent. 

Chèque à encaisser 
1 an 
Il est imprudent de laisser traîner un chèque aussi longtemps. 

Talon de chéquier 
30 ans 
Ce délai correspond à celui de l'action civile, le talon permettant de garder la référence du chèque. 

Prêt à la consommation 
2 ans 
Le contrat doit être conservé de 2 à 10 ans après. 

Prêt immobilier 
10 ans 
Le règlement de la dernière échéance du crédit. 

Relevé de compte 
10 ans 
N'oubliez pas de les vérifier avant de les classer. 

Valeurs mobilières 
5 ans 
Délai pour réclamer coupons, intérêts et dividendes. 
Gardez les avis d'opéré pendant la détention des titres. 

Familles

Contrat de mariage 
Indéfinie 
Le notaire peut en délivrer une copie. 

Jugement de divorce 
Indéfinie 
Pour une pension alimentaire, le délai est de 5 ans. 

Donations 
Indéfinie 
Preuves à conserver pour éviter tout litige lors de l'ouverture de la succession ou face au fisc. 

Livret de famille 
Indéfinie 
En cas de divorce, en demander une copie. 

Reconnaissance de dette 
30 ans 
Ce délai court après la fin du remboursement. 

Impôts et taxes

Déductions fiscales 
3 ans 
Conservez les justificatifs. 

Impôts locaux 
1 an 
La taxe de l'année de référence peut être contestée par l'Administration jusqu'au 31 décembre de l'année suivante. 

Impôt sur le revenu 
3 ans 
Conservez les justificatifs. 

Preuve du paiement des impôts 
4 ans 

Redevance télévision 
3 ans 

Honoraires

Mandat à agent immobilier 
10 ans 
Les honoraires sont libres, soyez précis dans le contrat. 

Avocat 
5 ans 
Les frais et salaires peuvent être réclamés pendant 5 ans. 
30 ans 
mais les honoraires pendant 30 ans. 

Huissier 
1 an 
Si vous êtes client. 

Notaire 
5 ans 
Pour un acte relatif à un décès, le délai part du décès. 

Logement

Charges de copropriété 
10 ans 
Même délai pour les correspondances avec le syndic. 

Contrat de location 
5 ans 
Délai pour contester loyers et charges (conserver quittances et état des lieux). 

Règlement de copropriété 
Indéfinie 
Même durée pour les comptes rendus d'assemblée générale. 

Titre de propriété 
Indéfinie 
Aussi longtemps que vous ne revendez pas. 

Travaux 
10 ans 
Même délai qu'en matière de garantie décennale. 

Santé

Bordereau de Sécurité Sociale 
2 ans 
Ce délai s'applique à la Sécurité sociale en cas de reprise de trop perçu. 

Certificats médicaux 
Indéfinie 
Radiographie, analyses, carnets de santé, etc, pourront être utilement consultés en cas de récidive de l'affection. 

Hôpital 
30 ans 
Les frais de séjour peuvent être réclamés pendant 30 ans. 
10 ans 
pour une clinique privée 
et 4 ans pour un établissement public ayant un comptable public. 

Ordonnances, dossier médical (paiement des honoraires) 
2 ans 
à conserver au moins jusqu'à la fin du traitement. 
En revanche, une action en responsabilité contre un médecin n'est prescrite qu'au bout de 30 ans. 

Vie professionnelle

Allocations chômage 
Indéfinie 
Les Assedic peuvent réclamer un trop perçu pendant 5 ans. 

Bulletins de salaire 
Indéfinie 
Pour votre retraite, vous devez justifier vos revenus, 

Contrat de travail 
30 ans 
et jusqu'à la retraite, tout ce qui touche votre emploi. 

Relevé de points des caisses de retraites 
30 ans 
Pour le calcul de votre retraite, classez méthodiquement tout ce qui a trait à votre activité professionnelle. 

Source : Dgccrf-Minefe

27/05/2010

Les commandes grep et find

by Didier — last modified 27/05/2010 15:31
Classé sous :

Les différentes expressions régulières sont :

  • ^ début de ligne
  • . un caractère quelconque
  • $ fin de ligne
  • x* zéro ou plus d'occurrences du caractère x
  • x+ une ou plus occurrences du caractère x
  • x? une occurrence unique du caractère x
  • [...] plage de caractères permis
  • [^...] plage de caractères interdits
  • \ {n\} pour définir le nombre de répétition n du caractère placé devant

Exemple l'expression [a-z][a-z] * cherche les lignes contenant au minimum un caractère en minuscule. [a-z] caractère permis, [a-z]* recherche d'occurrence des lettres permises.

L'expression ^[0-9]\ {4\}$ a pour signification, du début à la fin du fichier $, recherche les nombres[0-9] de 4 chiffres \ {4\}.

La commande grep

La commande grep permet de rechercher une chaîne de caractères dans un fichier. Les options sont les suivantes :

  • -v affiche les lignes ne contenant pas la chaîne
  • -c compte le nombre de lignes contenant la chaîne
  • -n chaque ligne contenant la chaîne est numérotée
  • -x ligne correspondant exactement à la chaîne
  • -l affiche le nom des fichiers qui contiennent la chaîne

Exemple avec le fichier carnet-adresse :

olivier:29:0298333242:Brest  
marcel:13:0466342233:Gardagnes  
myriam:30:0434214452:Nimes  
yvonne:92:013344433:Palaiseau

On peut utiliser les expressions régulières avec grep. Si on tape la commande :

grep ^[a-d] carnet-adresse

On va obtenir tous les lignes commençant par les caractères compris entre a et d. Dans notre exemple, on n'en a pas, d'où l'absence de sortie.

grep Brest carnet-adresse

Permet d'obtenir les lignes contenant la chaîne de caractère Brest, soit :

olivier:29:0298333242:Brest

Il existe aussi les commandes fgrep et egrep équivalentes.

La commande find

Présentation

La commande find permet de retrouver des fichiers à partir de certains critères. La syntaxe est la suivante :

find <répertoire de recherche> <critères de recherche>

Les critères de recherche sont les suivants :

  • -name recherche sur le nom du fichier,
  • -perm recherche sur les droits d'accès du fichier,
  • -links recherche sur le nombre de liens du fichier,
  • -user recherche sur le propriétaire du fichier,
  • -group recherche sur le groupe auquel appartient le fichier,
  • -type recherche sur le type (d=répertoire, c=caractère, f=fichier normal),
  • -size recherche sur la taille du fichier en nombre de blocs (1 bloc=512octets),
  • -atime recherche par date de dernier accès en lecture du fichier,
  • -mtime recherche par date de dernière modification du fichier,
  • -ctime recherche par date de création du fichier.

On peut combiner les critères avec des opérateurs logiques :

  • critère1 critère2 ou critère1 -a critère2 correspond au et logique,
  • !critère non logique,
  • \ (critère1 -o critère2\) ou logique,

La commande find doit être utilisé avec l'option -print. Sans l'utilisation de cette option, même en cas de réussite dans la recherche, find n'affiche rien à la sortie standard (l'écran, plus précisément le shell).

La commande find est récursive, c'est à dire où que vous tapiez, il va aller scruter dans les répertoires, et les sous répertoires qu'il contient, et ainsi de suite.

Recherche par nom de fichier

Pour chercher un fichier dont le nom contient la chaîne de caractères toto à partir du répertoire /usr, vous devez tapez :

find /usr -name toto -print

En cas de réussite, si le(s) fichier(s) existe(nt), vous aurez comme sortie :

toto

En cas d'échec, vous n'avez rien.

Pour rechercher tous les fichiers se terminant par .c dans le répertoire /usr, vous taperez :

find /usr -name " *.c " -print

Vous obtenez toute la liste des fichiers se terminant par .c sous les répertoires contenus dans /usr (et dans /usr lui même).

Recherche suivant la date de dernière modification

Pour connaître les derniers fichiers modifiés dans les 3 derniers jours dans toute l'arborescence (/), vous devez taper :

find / -mtime 3 -print

Recherche suivant la taille

Pour connaître dans toute l'arborescence, les fichiers dont la taille dépasse 1Mo (2000 blocs de 512Ko), vous devez taper :

find / -size 2000 -print

Recherche combinée

Vous pouvez chercher dans toute l'arborescence, les fichiers ordinaires appartenant à olivier, dont la permission est fixée à 755, on obtient :

find / -type f -user olivier -perm 755 -print

Redirection des messages d'erreur

Vous vous rendrez compte assez rapidement qu'en tant que simple utilisateur, vous n'avez pas forcément le droit d'accès à un certain nombre de répertoires, par conséquent, la commande find peut générer beaucoup de messages d'erreur (du genre permission denied), qui pourraient noyer l'information utile. Pour éviter ceci, vous pouvez rediriger les messages d'erreur dans un fichier poubelle (comme /dev/null), les messages d'erreur sont alors perdus (rien ne vous empêche de les sauvegarder dans un fichier, mais ça n'a aucune utilité avec la commande find).

find . -name bobo -print

Recherche en utilisant les opérateurs logiques

Si vous voulez connaître les fichiers n'appartenant pas à l'utilisateur olivier, vous taperez :

find . ! -user olivier -print

! -user olivier, est la négation de -user olivier, c'est à dire c'est tous les utilisateurs sauf olivier.

Recherche des fichiers qui ont pour nom a.out et des fichiers se terminant par .c. On tape :

find . \  ( -name a.out -o -name " *.c " \  ) -print

On recherche donc les fichiers dont le nom est a.out ou les fichiers se terminant par *.c, une condition ou l'autre.

Recherche des fichiers qui obéissent à la fois à la condition a pour nom core et à la condition a une taille supérieure à 1Mo.

find . \  (-name core -a size +2000 \  ) -print

Les commandes en option

L'option -print est une commande que l'on passe à find pour afficher les résultats à la sortie standard. En dehors de print, on dispose de l'option -exec. find couplé avec exec permet d'exécuter une commande sur les fichiers trouvés d'après les critères de recherche fixés. Cette option attend comme argument une commande, celle ci doit être suivi de {}\ ;.

Exemple recherche des fichiers ayant pour nom core, suivi de l'effacement de ces fichiers.

find . -name core -exec rm {}\   ;

Tous les fichiers ayant pour nom core seront détruits, pour avoir une demande de confirmation avant l'exécution de rm, vous pouvez taper :

find . -name core -ok rm {}\   ;

Autres subtilités

Une fonction intéressante de find est de pouvoir être utilisé avec d'autres commandes UNIX. Par exemple:

find . -type f -print | xargs grep toto

En tapant cette commande vous allez rechercher dans le répertoire courant tous les fichiers normaux (sans les répertoires, fichiers spéciaux), et rechercher dans ces fichiers tous ceux contenant la chaîne toto.

Raccourcis pour VI

by Didier — last modified 27/05/2010 15:29
Classé sous :

Raccourcis pour VI éditeur de texte unix/linux

  • Shift-G : Aller à la fin du fichier.
  • $ : déplacement en fin de ligne
  • b : Aller au début du mot précédent
  • w : Aller au début du mot suivant
  • Ctrl-e : Aller en fin de ligne. 
  • i : Insert avant le curseur
  • a : Insert après le curseur
  • Shift-I : Insert en début de ligne.
  • Shift-A : Insertion en fin de ligne.
  • o : Insertion d'une ligne après
  • Shift-O : Insertion d'une ligne avant
  • r : remplacement d'un caractère
  • Shift-R : mode remplacement (Echap pour sortir)
  • Shift-C : Remplace tout jusqu'à la fin de la ligne
  • Shift-D : Suppression de la ligne
  • u : annulation de la dernière commande
  • cw : change word
  • :set nu : Numérotation des lignes
  • :## : déplacement à la ligne ##
  • :x : sauvegarde et sortie
  • :q! : sortie sans sauvegarde
  • cfh : efface jusqu'à la lettre h et se met en mode insertion
  • :%s/test/essai/g : remplace tous les mots test par essai

Pour les commandes qui suivent un chifre devant coupera/copiera x lignes

  • dd : coupe la ligne
  • 50dd : coupera 50 lignes
  • yy : copie une ligne
  • yw : copie un mot
  • p : coller
  • 30i*[Esc] insèrera ******************************
  • :ab jv jean-vincent : raccourci : quand jv sera ecrit, sera remplacé par jean-vincent
  • /mot : recherche de mot


Sous Bash :

  • Ctrl-k : Supprimer le reste de la ligne.
  • Ctrl-u : Supprimer tout ce qui précède sur la ligne (très pratique quand on sait qu'on vient de se tromper sur un mot de passe, pas besoin de chercher le nombre de backspace à taper).
  • Ctrl-w : Supprimer le dernier mot (délimité par un caractère blanc).
  • Ctrl-l : équivalent de la commande clear, vide le contenu du terminal.
  • Ctrl-c : annule la ligne en cours
  • Ctrl-z : annule une commande en cours (ex ls -rtlR /) mais plus propre que Ctrl-c
  • Ctrl-d : fermeture du shell lorsqu'on est sur une ligne de commande vide. 
  • Esc-Backspace : Supprimer le dernier mot (démimité par un caractère non alphanumerique), notez la différence, utile dans le cas d'un chemin complet.

Raccourcis clavier sous Bash

by Didier — last modified 27/05/2010 15:26
Classé sous :

En général, les raccourcis clavier permettent aux utilisateurs de gagner beaucoup de temps. Voici donc une petite synthèse des raccourcis les plus importants pour le terminal en ligne de commandes le plus utilisé aujourd'hui, à savoir Bash.

Certaines de ces commandes fonctionnent également sous des éditeurs de fichiers en ligne de commandes. On pourra prendre l'exemple de Emacs et les commandes de déplacement ou de copier / coller.

1. Déplacement

Ctrl + a : aller au début de la ligne
Ctrl + e : aller à la fin de la ligne
Alt + b : se déplacer mot par mot dans la ligne de commande en arrière (b pour backward)
Alt + f : se déplacer mot par mot dans la ligne de commande en avant (f pour forward)
ctrl + xx : positionner le curseur au début du mot ou à la fin

2. Couper / Coller

Ctrl + k : couper la chaîne du curseur jusqu'à la fin de la ligne
Ctrl + u : couper la chaîne du curseur jusqu'au début de la ligne
Ctrl + w : couper le mot avant le curseur
Ctrl + y : coller une chaîne

3. Modification

Ctrl + t : inverser la position des deux caractères avant le curseur (pratique quand on tape par exemple, sl au lieu de ls)
Alt + t : inverser la position des deux mots avant le curseur
Alt + c : mettre une lettre en majuscule
Alt + l : mettre un mot en en minuscule (l pour lowercase)
Alt + u : mettre un mot en majuscule (u pour uppercase)
Alt + . : réécrire le paramètre de la dernière commande

4. Divers

Ctrl + l : effacer le contenu de l'écran
Ctrl + r : rechercher une commande déjà tapée
Ctrl + _ : annuler la dernière modification
Ctrl + c : arrêter la commande en court
Ctrl + d : quitter le shell en court

24/05/2010

Le CFT

by Didier — last modified 24/05/2010 11:55
Classé sous :

CFT (Cross File Transfer) est un logiciel de transfert de fichiers développé par la société Axway, créé par Crédintrans puis cédé à Sopra (maison mère de Axway). On parle également de "moniteur" de transfert de fichier.

doc-cft.pdf1. generalites

1.1. Que signifie CFT?
CFT signifie Cross File Transfer

1.2. A quoi sert CFT?
CFT est un logiciel de transfert de fichiers développé par la société Axway, aussi appelé moniteur de transfert de fichier, parce qu'il permet de suivre les différentes phases d'évolution des transferts et d'éventuellement reprendre un transfert après un echec.

CFT est utilisé dans les systèmes informatiques complexes et multi plate-formes qui souhaitent transmettre des fichiers en appliquant des contrôles (sécurité, accusé de réception, reprise après interruption, trace des erreurs).

Il peut être utilisé avecTranspac en X.25, mais maintenant il supporte TCP/IP ce qui lui permet d'être utilisé avec Internet de manière sécurisée. Enfin CFT utilise des protocoles d'échanges comme PESIT ou ETEBAC (protocoles français utilisés pour les échanges bancaires), ce qui explique sont utilisation dans le monde banquaire.

1.3. Comment fonctionne CFT?
Chaque site permettant l'échange de fichiers est appelé un partenaire. Chaque partenaire CFT, possède une liste des partenaires avec lesquels il échange des fichiers (transfert ou reception). Le protocole CFT est indépendant de la plate-forme. Windows NT, Unix, VMS, MVS, GCOS, NetWare, AS400/iseries peuvent communiquer via CFT en toute sécurité. D'un autre coté, cela implique que CFT doit être installé sur chaque plate-forme.

1.4. Comment arrêter cft ?
$ cftstop

Starting CFT with IDPARM "IDPARM0" and 64 transferts active
Starting CFTMAIN ... started
Starting CFTTCOM ... started
Starting CFTTPRO ... started
Starting CFTLOG ... started
Starting CFTTCPS ... started

CFT started correctly.
CFTMAIN process id is 385208.


1.5. comment vérifier la version de cft?
$ cftutil about

    CFT informations :
      * product = CFT/V2/UAIX 43xL
      * version = 230
      * level   = m-1-25
      * upgrade = 6014 6052 6056 6149 6155 6214 6220 6275 6302 6311 6374 6417
                  6666 6687 6706 6810 6814 6872

    Host informations :
      * model   = 4C
      * cpuid   = 1ADFCF1ADFCF1ADF

CFTU00I ABOUT    _ Correct ()


1.6. comment vérifier que cft est actif?
$cftping -v
cft is alive


1.7. quels sont les protocols connus?
Les principaux sont:
TCP TCP/IP
SNA SNA
X25 X25


1.8. Comment vérifier que CFT fonctionne ?
cftping -v cft: not running

1.9. Comment redémarrer CFT en cas d'arrêt ?
$ cftstart

1.10. Quels sont les répertoires de CFT ?

 

Désignation

Commentaires

filapi

contient les fichiers liés à l’interface de programmation CFT

fildat

Fichiers base de données de CFT

filexe

Exécutables de CFT

filexit

fichiers liés aux différents EXITs de CFT

filinst

répertoire spécifique à la procédure d’installation regroupant divers fichiers de configuration de test

filint

fichiers base de données des fonctions interactives

fillog

Fichiers journaux d’activité ou trace de CFT

filpub

répertoire tampon pour les fichiers émis et reçus

filusr

répertoire contenant les fichiers de commandes CFT




2. installation

2.1. Comment installer cft ?
$ cd /cft/aix43
$ tar xvf /prd/home/COPIE_CD/CD_CFT/aix43.tar
$ ./cft_instal fr
$ cd /cft/cft230/filinst
$ cftinit cftparm.cpuid cftidf.cft cftpart.cft | grep error
Il doit y avoir 0 error
$ cftstart


2.2. Comment désinstaller cft ?
  • Allez dans le répertoire où se trouve installé CFT
  • Tapez
     cd XIP
  • Vérifiez que X11 est disponible
  • Tapez
     ./uninstaller.bin
  • Suivez les wizards
  • Effacez si necessaire les restes avec rm -r


2.3. Comment modifier l'installation ?
  1. Arrêter le serveur cft
  2. lancer l'utilitaire cftcatal, répondre aux questions. Le catalogue se dimensionne en absolu (il faut donner le nombre total de messages).
  3. Redémarrer cft


2.4. Comment entrer la clé de license ?
Modifiez le paramétrage (en général dans le répertoire filiinst) dans la partie CFTPARM. Entrez la clé dans la partie en vert. Note: ici le fichier s'appelle CFTPARM.tcp.
 CFTPARM      ID       = 'IDPARM0',
              ACCNT    = 'ACCNT0',
              BUFSIZE  = '4096',
              CAT      = 'CAT0',
              DEFAULT  = 'DEFAUT',
              EXECRE   = '/apps/products/cft/filinst/recv_ko.cmd',
              EXECRF   = '/apps/products/cft/filinst/recv_ok.cmd',
              EXECRM   = '/apps/products/cft/filinst/recvm.cmd',
              EXECSE   = '/apps/products/cft/filinst/send_ko.cmd',
              EXECSF   = '/apps/products/cft/filinst/send_ok.cmd',
              FBUFSIZE = '0',
              KEY      = 'XXXFAUXXXXPXDHXXXSX9X1XXXLN97XXXFAQXXX2XX',
              LOG      = 'LOG0',
              MAXTASK  = '16',
              MAXTRANS = '8',
              NPART    = 'XENA',
              PART     = 'XENA',
              PARTFNAM = '_CFTPART',
              CTLPASSW = 'NO',
              TRANTASK = '8',
              USERCTRL = 'NO',
              WAITRESP = '100',
              WAITTASK = '1441',
              COM      = ( 'COM0'),
              NET      = ( 'TCPIP'),
              PROT     = ( 'PESITTCP'),
              LENAPPL  = '8',
              RCVALLER = 'STOP',
              SSLMTASK = '16',
              SSLTTASK = '16',
              SSLWTASK = '1441',
              SSLWRESP = '100',
              PKIPASSW = 'PKIPASSW',
              TRKPART  = 'UNDEFINED',
              TRKSEND  = 'UNDEFINED',
              TRKRECV  = 'UNDEFINED',
              MODE     = 'REPLACE'

Il faut ensuite faire un update de la configuration, ce qui demande un arrêt de CFT:

#cftstop
#cftupdate CFTPARM.tcp

la réponse obtenue est du style:

============================================
CFTU00I CFTPARM  _ Correct (.........
CFTU00I RETURN   _ Correct (CODE=0)
CFTU20I Number of Command(s) 1
CFTU20I Number of error(s)   0

cftupdate complete.

On relance par cftstart


3. configuration

3.1. Comment modifier les paramètre de cft ?
$ cftstop
$ cd /cft/cft230/filinst
$ cftinit cftparm.cpuid cftidf.cft cftpart.cft | grep error
Il doit y avoir 0 error
$ cftstart


3.2. comment vérifier l'existance d'un partenaire?
$CFTUTIL cftext type=part,id=INDUS
CFTU20I
CFTU20I CFT/V2/UAIX 43xL
CFTU20I Version 230 20040401
CFTU20I (C) Copyright SOPRA 1993-2001
CFTU20I ====> Starting Session on 04/04/2005 Time is 11:39:38
CFTU20I
 CFTPART      ID       = 'INDUS',
              SAUTH    = '*',
              RAUTH    = '*',
 /*           XLATE    = '',*/
              CODE     = 'ASCII',
              OPEN     = 'NO',
              IMAXTIME = '23595999',
              IMINTIME = '00000000',
              OMAXTIME = '23595999',
              OMINTIME = '00000000',
 /*           IPART    = '',*/
              NRPART   = 'XXXXXXA0',
              NSPART   = 'XXXXXXQ0',
              NRPASSW  = 'CFT',
              NSPASSW  = 'CFT',
              COMMENT  = 'PARTITION AIX INDUS',
              SYST     = 'UNIX',
              COMMUT   = 'YES',
 /*           GROUP    = '',*/
 /*           FPREFIX  = '',*/
 /*           IDF      = '',*/
              STATE    = 'ACTIVEBOTH',
              PROT     = ( 'PESITANY'),
              SAP      = ( '57519'),
 /*           SSL      = '',*/
              MODE     = 'REPLACE'


CFTU00I CFTEXT   _ Correct (type=part,id=INDUS)
CFTU20I Number of Command(s) 1
CFTU20I Number of error(s)   0
CFTU20I Ending   Session on 04/04/2005 Time is 11:39:38
CFTU20I Session active for  0:00:00


3.3. comment obtenir la liste des partenaires?
cftutil listpart


3.4. comment obtenir la liste des partenaires d'un type donné?
cftutil listpart type=X25


3.5. comment obtenir les informations relatives à un partenaire donné?
 cftutil listpart id=X00PUC9

                    CFTPART - Partner command
                    -------------------------

  X00DUKE
          Group  identification   GROUP    =
          System identification   SYST     = UNIX
          Translation table       XLATE    =
          Open mode transfer      OPEN     = NO
          SSL id.                 SSL      =

          Send file auth. list    SAUTH    = *
          Recv file auth. list    RAUTH    = *

          Input  call after       IMINTIME = 00:00:00.00
                      before      IMAXTIME = 23:59:59.99
          Output call after       OMINTIME = 00:00:00.00
                      before      OMAXTIME = 23:59:59.99

          Intermediate partner    IPART    =
          Commut. authorisation   COMMUT   = YES
          Network send partner    NSPART   = UK9PXSS
          Network recv partner    NRPART   = GTWPROD0
          Network send password   NSPASSW  =
          Network recv password   NRPASSW  =
          Comments                COMMENT  =
          File Prefix             FPREFIX  =

                                  IDF      =
          State of partner        STATE    = ACTIVEBOTH
          XFB Sentinel filter     NTF      = UNDEFINED

          Protocol identifier and Services Acces Point
                                  PROT     = PESITTCP
                                  SAP      = 32000


                    CFTTCP  - Partner command
                    -------------------------

  X00DUKE
          TCP reference           HOST     = CFTGAT.HOST.NET

          Retry                               CV number
          -----                               ---------
          Wait time   RETRYW   = 7            Out call   CNXOUT   = 2
          Number      RETRYN   = 6            In  call   CNXIN    = 2
          Max. number RETRYM   = 12           Total      CNXINOUT = 2

          Input call                          Output call
          ----------                          -----------
          After       IMINTIME = 00:00:00.00  After      OMINTIME = 00:00:00.00
          Before      IMAXTIME = 23:59:59.99  Before     OMAXTIME = 23:59:59.99

CFTU00I LISTPART _ Correct (id=X00DUKE)


3.6. comment vérifier la clé de licence CFT?
cftutil listparm type=parm | grep key
          CFT master key              KEY      = XXXFAQZQM1XXXIL9A7IXXXSOTLNXXXIZFAQWXXXE7



4. messages

4.1. comment envoyer un message à un partenaire via cft?
$ CFTUTIL send part=DEV, type=message,idm=test, msg=hello
CFTU20I
CFTU20I CFT/V2/UAIX 43xL
CFTU20I Version 230 20040401
CFTU20I (C) Copyright SOPRA 1993-2001
CFTU20I ====> Starting Session on 04/04/2005 Time is 11:14:17
CFTU20I
CFTU00I SEND     _ Correct (part=DEV,type=message,idm=test,msg=hello)
CFTU20I Number of Command(s) 1
CFTU20I Number of error(s)   0
CFTU20I Ending   Session on 04/04/2005 Time is 11:14:17
CFTU20I Session active for  0:00:00


4.2. comment afficher la liste des messages et des fichiers en transfert?
$ cftutil send part=PREX, fname=smit.log ,idf=smit
CFTU00I SEND     _ Correct (part=PREX,fname=smit.log,idf=smit)



5. envoi/reception

5.1. comment vérifier le transfert d'un fichier ou d'un message ?
 cftcatab

  Date = 04/04/2005   Time = 11:15:44

  Partner  DTSA File     Transfer         Records       Diags        Appli.
                Id.      Id.       Transmit     Total   CFT Protocol Id.
  -------- ---- -------- -------- ---------- ---------- --- -------- --------
  DEV      SMD  TEST     D0411142 hello                 909 RCO 301

         1 record(s) selected
       500 record(s) in Catalog file
       499 record(s) free (99%)

CFTU00I LISTCAT  _ Correct (type=all,content=brief)


5.2. comment envoyer un fichier avec cft?
$cftutil send part=PREX, fname=smit.log ,idf=smit
CFTU00I SEND     _ Correct (part=PREX,fname=smit.log,idf=smit)

Il est possible de fixer la longueur des enregistrement avec flrecl.

CFTUTIL send part=batman,idf=toto,flrecl=80,fname=/PROD/fichier

CFTU20I
CFTU20I CFT/V2/UAIX 51L
CFTU20I Version 2.3.2 20040910 / Patch20041220
CFTU20I (C) Copyright AXWAY 1989-2003
CFTU20I ====> Starting Session on 16/05/2009 Time is 10:41:24
CFTU20I
CFTU00I SEND     _ Correct (part=batman,idf=toto,flrecl=80,fname=/apps/product)
CFTU20I Number of Command(s) 1
CFTU20I Number of error(s)   0
CFTU20I Ending   Session on 16/05/2009 Time is 10:41:24
CFTU20I Session active for  0:00:00


5.3. comment recevoir un fichier
$ cftutil recv idf=smit, fname=/tmp/smit



6. fichiers

6.1. comment supprimer un fichier bloqué ?
cftutil delete part=BOUCLE, idt=G1915470


6.2. comment supprimer tous les fichiers qui sont à l'état hold ?
 cftcatab | grep SFH | awk '{print $4}' | sed 's/^/cftutil delete part=BOUCLE,idt=/' | sh


6.3. comment connaitre tous les fichiers envoyés?
tapez cftutil listcat ou cftcatab

6.4. comment supprimer tous les fichiers bloqués liés à une erreur ?
Ici l'erreur à pour code 405
 cftcatab |grep 405 | awk '{print "cftutil delete part=",$1,", idt=",$4}' | sh



7. diagnostique

7.1. quels sont les codes d'erreurs courrants?
  1. 001 à 499: anomalie locale
  2. 500 à 999: anomalie du partenaire
  3. 110 fichier local inexistant
  4. 610 fichier distant inexistant



8. envois

8.1. comment voir les transferts de fichiers qui ont provoqués une erreur donnée ?
  grep 82E * | grep /07 | awk '{print "grep ",$7," *"}' | sh
 

 

Sauvegarde avec rsync dans un container Truecrypt distant monté par ssh avec sshfs

by Didier — last modified 24/05/2010 11:23
Classé sous :

Le but de ce tutoriel est de monter une sauvegarde distante sur un PC ami qui héberge nos données. Les données hébergées sont chiffrées dans un container Truecrypt. Ce container est visible en local grâce à l’accès à distance par sshfs (système de fichier monté par ssh).

Liens

Chiffrement

Synchronisation

Divers

Situation

Voilà comment je range mes données :

  • /donnee/agile : donnée qui change souvent (programmation, certaines conférence, etc.) et qui ne sont pas privées (je publie mon code)
  • /donnee/dormante : données qui changent très peu et n’ont pas de  caractère “trop” privées (photos, sauvegardes de jeux, etc.)
  • /donnee/jetable : données que je garde mais que je peux perdre (fond d’écran, musique, etc.)
  • /donnee/privee : données privées (suivi de budget, correspondance, généalogie, etc.)
  • /donnee/temporaire : téléchargement en cours, photos en trie, test, etc.

Prérequis

Client  (c’est nous !)

  • openssh-client
  • sshfs
  • truecrypt
  • rsync
  • (gtkrsync)

Serveur (celui qui nous héberge)

  • openssh-server

Préparation à la sauvegarde sur le client

  • créer un répertoire où sera monté le système distant par SSH :
mkdir -p /donnee/sauvegarde/ssh
  • créer un répertoire où sera monté le container TrueCrypt accessible lorsque le serveur sera monté sur /donnee/sauvegarde/ssh
mkdir -p /donnee/sauvegarde/truecrypt
  • créer un certificat particulièrement pour cet accès sans passphrase
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rangzen/.ssh/id_rsa): /home/rangzen/.ssh/backup
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rangzen/.ssh/backup.
Your public key has been saved in /home/rangzen/.ssh/backup.pub.
The key fingerprint is:
84:--:--:-a:-n:ic:e-:-f:in:ge:r-:pr:in:t-:--:55 rangzen@myhome

Préparation à la sauvegarde sur le serveur

  • créer un utilisateur avec un home à l’emplacement où le responsable de la machine serveur veut bien vous faire un peu de place
adduser backup-rangzen
  • restreindre l’accès ssh backup-rangzen en éditant /etc/ssh/sshd_config
AllowUsers backup-rangzen
Key Authentification
  • initialiser ssh et ajouter backup.pub dans .ssh_key_authorised
# su backup-rangzen
ssh-keygen
mv /tmp/backup.pub > ~/.ssh/authorized_keys
  • test depuis le client, vous ne devriez pas avoir à fournir de mot de passe et vous retrouver dans le home de backup-rangzen sur le serveur
$ ssh -i /home/rangzen/.ssh/backup.pub backup-rangzen@192.168.0.2

Montage de l’emplacement de sauvegarde par sshfs

  • montage par sshfs sur /donnee/sauvegarde/ssh. /donnee/sauvegarde/ssh doit contenir le home de backup-rangzen.
sshfs -o IdentityFile=/home/rangzen/.ssh/backup backup-rangzen@192.168.0.2: /donnee/sauvegarde/ssh

Préparation de l’emplacement Truecrypt

  • création du container (en gras les réponses utilisateur)
rangzen@myhome:/donnee/sauvegarde/ssh$ truecrypt --text --create
Volume type:
1) Normal
2) Hidden
Select [1]: 1

Enter volume path: backup.tc

Enter volume size (sizeK/size[M]/sizeG): 10G

Encryption algorithm:
1) AES
2) Serpent
3) Twofish
4) AES-Twofish
5) AES-Twofish-Serpent
6) Serpent-AES
7) Serpent-Twofish-AES
8) Twofish-Serpent
Select [1]:(Entrée)

Hash algorithm:
1) RIPEMD-160
2) SHA-512
3) Whirlpool
Select [1]:(Entrée)

Filesystem:
1) FAT
2) None
Select [1]: 2

Enter password:(Votre mot de passe)
Re-enter password:(Encore votre super mot de passe)

Enter keyfile path [none]:(Entrée)

Please type at least 320 randomly chosen characters and then press Enter:(Partie fait du Dance Dance Revolution avec ton clavier)

The TrueCrypt volume has been successfully created.
  • montage du container pour formatage
truecrypt --text --filesystem=none backup.tc
  • formatage en ext2 (trouver le dev dans /dev/mapper/truecryptn)
mkfs.ext2 /dev/mapper/truecrypt1

Fermer truecrypt et sshfs

truecrypt -d
fusermount -u /donnee/sauvegarde/ssh/

Procédure de sauvegarde

  • monter le système
sshfs -o allow_other,IdentityFile=/home/rangzen/.ssh/backup backup-rangzen@192.168.0.2: /donnee/sauvegarde/ssh
  • monter le container
truecrypt --text /donnee/sauvegarde/ssh/backup.tc /donnee/sauvegarde/truecrypt
  • sauvegarde
(gtk)rsync --archive --delete-excluded --compress --stats --progress --verbose --include-from=/donnee/agile/configuration/rsync/pattern /donnee/ /donnee/sauvegarde/truecrypt/
  • tout refermer
truecrypt -d
fusermount -u /donnee/sauvegarde/ssh/

Actions sur le document