Demande.tn

🔒
❌
Il y a de nouveaux articles disponibles, cliquez pour rafraĂźchir la page.
À partir d’avant-hiermemo-linux.com

Activer et configurer le tableau de bord de Ceph Luminous

Par fred

La nouvelle version de Ceph Luminous embarque un nouveau tableau de bord (dashboard), qui permet de voir l’Ă©tat du cluster Ă  partir d’un navigateur web via le daemon ceph-mgr.

Utiliser le nouveau tableau de bord de Ceph

Ce qui va suivre a été réalisé sur un cluster Ceph sous Proxmox 5.0

  • S’assurer que le paquet python-cherrypy3 est prĂ©sent, sinon installer le :
  • apt install  python-cherrypy3
  • Activer le module « dashboard » :
ceph mgr module enable dashboard
  • Lister le module :
  • ceph mgr module ls
    [
        "dashboard"
    ]
    
  • Autoriser l’Ă©coute sur toutes les adresses IP :
  • ceph config-key set mgr/dashboard/server_addr ::
  • RedĂ©marrer le service ceph-mgr :
    systemctl restart ceph-mgr@pve-01.service
  • Ouvrir un navigateur internet et saisir l’url de votre tableau de bord http://Ip_cluster_ceph:7000
  • Le tableau de board de Ceph Luminous

    Ce nouveau tableau de bord possĂšde plusieurs vues :

    • Vue SantĂ© du cluster :
    • Vue Serveurs :
    • Vue OSD :
    • Vue Pool :

    Ressources

    Installer Openmanage 9.0.1 sur Debian 9 et Ubuntu 16.04

    Par fred

    Un petit mĂ©mo sur comment installer ou migrer vers la derniĂšre version d’Openmanage 9.0.1 sur Debian 9 et Ubuntu 16.04.

    Installer manuellement Openmanage 9.0.1

    nb: toutes les commandes sont exécutées en tant que root.

    • Écraser l’ancien dĂ©pĂŽt d’Openmanage par le nouveau :
    echo "deb http://linux.dell.com/repo/community/openmanage/901/xenial xenial main" > /etc/apt/sources.list.d/linux.dell.com.sources.list 
    
  • Import de la clĂ© :
  • gpg --keyserver pool.sks-keyservers.net --recv-key 1285491434D8786F 
    gpg -a --export 1285491434D8786F | apt-key add - 
    
  • DĂ©sinstaller tous les paquets relatif Ă  Openmanage :
  • apt --auto-remove purge srvadmin-*
  • Installer Openmanage en evrson 9.0.1 :
  • apt srvadmin-all

    ou dans mon cas :

    apt install srvadmin-base srvadmin-omcommon srvadmin-server-cli srvadmin-server-snmp srvadmin-storageservices srvadmin-storageservices-cli srvadmin-storageservices-snmp srvadmin-idracadm8 srvadmin-idrac-ivmcli srvadmin-idrac-snmp srvadmin-idrac-vmcli srvadmin-deng-snmp
    

    Installer Openmanage 9.0.1 via Ansible

    Mon playbook :

    - hosts: dell
      become: true
      become_method: su
    
      vars:
        proxy_env:
          https_proxy: http://IP_PROXY:8080
    
      tasks:
    
        - name: mkdir /opt/dell/srvadmin/sbin (bug srvadmin-idracadm7)
          shell: mkdir -p /opt/dell/srvadmin/sbin
    
        - name: apt purge
          shell: apt remove --purge srvadmin-* -y
    
        - name: Remove old repository
          apt_repository:
            repo: deb http://linux.dell.com/repo/community/debian jessie openmanage
            state: absent
    
        - name: Add keys
          apt_key:
            keyserver: pool.sks-keyservers.net
            id: 1285491434D8786F
    
        - name: Add repository
          apt_repository:
            repo: deb http://linux.dell.com/repo/community/openmanage/901/xenial xenial main
            state: present
            filename: 'linux.dell.com.sources'
            update_cache: yes
    
        - name: Install Openmanage
          apt:
            pkg: "{{ item }}"
            force: yes
            install_recommends: yes
            update_cache: yes
    
          with_items:
    
          - srvadmin-base
          - srvadmin-omcommon
          - srvadmin-server-cli
          - srvadmin-server-snmp
          - srvadmin-storageservices
          - srvadmin-storageservices-cli
          - srvadmin-storageservices-snmp
          - srvadmin-idracadm8
          - srvadmin-idrac-ivmcli
          - srvadmin-idrac-snmp
          - srvadmin-idrac-vmcli
          - srvadmin-deng-snmp
    

    Ansible : playbook spécial Proxmox

    Par fred

    Un petit article pour présenter mon playbook Ansible spécialement écrit pour mes serveurs Proxmox répartis sur différents sites géographique.
    Normalement, chaque serveur Proxmox est gĂ©rĂ© par l’Ă©quipe informatique local mais forcĂ© de constater que les mises Ă  jour ne sont pas appliquĂ©es, d’oĂč l’idĂ©e de ce playbook :-)

    Ce que fait ce playbook :

    • VĂ©rification de la version de PVE :
     - name: version PVE
       shell: pveversion
       register: release
    
  • Affichage de la version de PVE :
    - name: Notification version PVE
      debug: msg="Version de PVE {{ release.stdout }}"
    
    • Exemple de sortie :
  • Mise Ă  jour des dĂ©pĂŽts :
  • - name: Mise Ă  jour des dĂ©pĂŽts
      apt: update_cache=yes
    
  • Mise Ă  jour des paquets :
  • - name: Mise Ă  jour des paquets
      apt: upgrade=dist
    
  • VĂ©rification de la derniĂšre version du noyau Linux installĂ© sur le Proxmox :
  • - name: version Kernel dispo
      shell: ls -t /boot/vmlinuz-* | sed "s/\/boot\/vmlinuz-//g" | head -n1
      register: kernel_dispopre>
    
  • VĂ©rification de la version du noyau Linux utilisĂ© par Proxmox :
  • - name: version kernel actuel
      shell: uname -r
      register: kernel_actuel
    
  • Comparaison entre les versions du noyau Linux disponible et celle utilisĂ©e par Proxmox. Si la version utilisĂ©e est ancienne, message d’avertissement pour redĂ©marrer le Proxmox :
     - name: vérification version kernel
       debug: msg="Ce PVE doit ĂȘtre redĂ©marrĂ©, kernel actuel {{ kernel_actuel.stdout }} kernel disponible {{ kernel_dispo.stdout }}"
       when: kernel_dispo.stdout != kernel_actuel.stdout
    
    • exemple de sortie :
  • RevĂ©rification de la version de PVE :
  • - name: VĂ©rification de la version de PVE
      shell:  pveversion
      register: new_release
    
  • Notification de la mise Ă  niveau de la version de PVE si c’est le cas :
  • - name: Notification de la mise Ă  niveau de la version de PVE
      debug: msg="PVE à changé de version {{ release.stdout }} à {{ new_release.stdout }}"
      when: release.stdout != new_release.stdout
    
  • VĂ©rification de la prĂ©sence du paquet needrestart, dans le cas Ă©chĂ©ant l’installer :
  • - name: VĂ©rification de la prĂ©sence de needrestart
      apt: name=needrestart state=present
     
  • Lister les services Ă  redĂ©marrer :
  • - name: Lister les services a rĂ©dĂ©marrer
      shell: needrestart -rl
      register: services
    
  • Affichage des services Ă  redĂ©marrer :
    - name: Afficher les services à redémarrer
      debug: msg="{{ services.stdout_lines }}"
    
    • Exemple de sortie :
    • Exemple de sortie quand tout est OK sur le nœud Proxmox :
  • RedĂ©marrer les services :
  • - name: RedĂ©marrage des services
      shell: needrestart -ra
    
  • Code source complet du playbook spĂ©cial Proxmox : https://github.com/freddL/playbook_proxmox/blob/master/pve_update.yml
  • Ansible : mes premiers pas

    Par fred

    Ansible est un logiciel libre qui permet le dĂ©ploiement ou l’automatisation de tĂąches d’administrations vers plusieurs serveurs distant en mĂȘme temps, quelque soit leur systĂšme d’exploitation. Ce qui est intĂ©ressent avec Ansible, pas besoin d’installer d’agent sur les serveurs, seul le dĂ©ploiement de la clĂ© public du serveur Ansible est nĂ©cessaire, car les connexions se font via ssh.

    Installation d’Ansible sous Debian 9

    Rien de bien compliquĂ© pour l’installation d’Ansible sous Debian, car le paquet est disponible dans les dĂ©pĂŽts en version 2.2 sous Stretch.

    apt install ansible

    Configuration de Ansible

    Les fichiers de configuration d’Ansible se trouvent dans le rĂ©pertoire /etc/ansible.
    Dans cet article, je ne rentrerais pas dans les dĂ©tails du fichier de configuration ansible.cfg car de base il est fonctionnel, ça sera un sujet d’un futur article.

    Le premier fichier renseignĂ© est /etc/ansible/hosts. Dans ce fichier se trouvera tous les serveurs qui seront administrĂ©s par Ansible. Dans ce fichier, il est possible de crĂ©er des groupes d’hĂŽtes, ce qui facilite la gestion multiple.
    Plusieurs façon de faire pour renseigner les hĂŽtes gĂ©rĂ©s par Ansible, soit renseigner les adresses IP, soit le FQDN ou un nom d’hĂŽte. Si le choix est le nom d’hĂŽte, il faut qu’il soit connu du systĂšme, donc il faudra aussi renseigner le fichier /etc/hosts.

  • Exemple du fichier renseignĂ© :
    nano /etc/ansible/hosts
    • CrĂ©ation de groupes de serveurs
  • GĂ©nĂ©ration clefs privĂ©e/publique Ă  faire sur le serveur Ansible :
  • ssh-keygen
  • Copier la clef publique vers les serveurs cibles :
  • ssh-copy-id -i ~/.ssh/id_rsa.pub root@serveur-cible

    A partir de maintenant, Ansible est prĂȘt pour exĂ©cuter des actions sur les serveurs cibles.

    Mes premiers test avec Ansible

    • test de ping sur le groupe poller-centreon :
    ansible -m ping poller-centreon --one-line

  • Installation du paquet debian-goodies sur mes Proxmox du groupe pve_v5
  • ansible -m apt -a 'name=debian-goodies' pve_v5

    Playbooks

    Dans l’exemple prĂ©cĂ©dant, seul la commande ping a Ă©tĂ© exĂ©cutĂ©e. Si l’on souhaite exĂ©cuter un ensemble de commande ou de script, il faut passer par des playbooks. Ces playbooks sont au format YAML. Les playbboks peuvent ĂȘtre placĂ©s dans un sous rĂ©pertoire, qui n’a pas Ă©tĂ© crĂ©Ă© lors de l’installation d’Ansible.

    • CrĂ©ation d’un sous rĂ©pertoire pour les playbooks :
    mkdir /etc/ansible/playbooks
  • CrĂ©ation d’un playbooks :
    nano  /etc/ansible/playbooks/mon_premier_playbooks.yml
    • Pour reprendre un exemple de ping :
    - hosts: all
      tasks:
        - action: ping
    
  • ExĂ©cution du playbook :
  • ansible-playbook  /etc/ansible/playbooks/mon_premier_playbooks.yml
  • Exemple d’un playbook un peu plus complexe, dĂ©diĂ© Ă  la mise Ă  jour de mes pollers Centreon :
  • - hosts: poller-centreon
      tasks:
        - name: version du moteur centengine
          shell: centengine -V | awk '{print $5}' | head -n 1
          register: release
    
        - name: Mise Ă  jour des paquet
          yum: name=* state=latest
    
        - name: VĂ©rification de la version de Centengine aprĂšs mise Ă  jour
          shell:  centengine -V | awk '{print $5}' | head -n 1
          register: new_release
    
        - name: Affichage de la version de Centengine
          debug: msg="Version de Centengine {{ new_release.stdout_lines }}"
    
        - name: Notification de la mise Ă  niveau de la version de Centengine
          debug: msg="PVE à changé de version {{ release.stdout }} à {{ new_release.stdout }}"
          when: release.stdout != new_release.stdout
    
        - name: vérification des services à redémarrer
          shell: needs-restarting | awk '{print $3}'
          register: services
    
        - name: Liste des service à redémarrer
          debug: msg="{{ services.stdout_lines | count }} services à redémarrer ({{ services.stdout_lines | join (', ') }})"
    
  • ExĂ©cution d’un playbook :
  • ansible-playbook monplaybook.yml

    Ce playbook va seulement s’exĂ©cuter sur les serveurs membres du goupe poller-centreon. A savoir, le systĂšme d’exploitation de mes poller est CentOS.

    Proxmox cluster Ceph : migration 4.4 vers 5.0

    Par fred

    Un mémo sur comment mettre à niveau la version de Proxmox 4.4 vers 5.0 la derniÚre version stable disponible à ce jour.

    A savoir, ici dans cet article la mise Ă  niveau va ĂȘtre un poil plus complexe qu’une simple montĂ© de version d’un seul serveur Proxmox, car dans mon cas c’est un cluster de haute disponibilitĂ© avec du Ceph.
    La premiĂšre Ă©tape sera une mise Ă  niveau de la verson Ceph Jewel vers Luminous.

    La migration de Proxmox 4.4 vers 5.0 va se faire sur chaque nœud du cluster l’un aprĂšs l’autre sans coupure de service.

    Mise Ă  niveau de Ceph Jewel vers Luminous

    Avant de migrer la version de Proxmox vers la version 5.0, il faut au préalable mettre à jour Ceph vers la version Luminous.

    • A faire sur un seul noeud du cluster Ceph :
      • DĂ©finir le drapeau « sortbitwise » afin de prĂ©server toutes les donnĂ©es Ă©crites sur le Ceph :
      ceph osd set sortbitwise
    • DĂ©finir Ă  non le rĂ©Ă©quilibrage automatique pendant le processus de mise Ă  niveau :
    ceph osd set noout
  • Autoriser explicitement la possibilitĂ© de supprimer un pool sous la version de Luminous en ajoutant dans le fichier /etc/pve/ceph.conf et dans la section [global] :
  • mon allow pool delete = true
  • A faire sur chaque nœud du cluster Ceph, changer le nom de version du paquet Ceph dans le dĂ©pĂŽt :
  • sed -i 's/jewel/luminous/' /etc/apt/sources.list.d/ceph.list
  • ExĂ©cuter la mise Ă  niveau de Ceph sur chaque noeud du cluster, les uns aprĂšs les autres :
  • apt update && apt full-upgrade
  • Une fois que la version de Ceph a Ă©tĂ© mise Ă  jour, relancer les services sur chaque nœud du cluster :
  • root@pve-01:~# systemctl restart ceph-mon@0.service
    root@pve-02:~# systemctl restart ceph-mon@1.service
    root@pve-03:~# systemctl restart ceph-mon@2.service
  • Ensuite, dĂ©sactiver le noout :
  • ceph osd unset noout
  • VĂ©rifier l’Ă©tat de Ceph :
    ceph -s
    • RĂ©sultat sur mon cluster :
    root@pve-01:~# ceph -s
      cluster:
        id:     fc76a7cc-58c0-4b59-a89d-6387e46f537e
        health: HEALTH_WARN
                all OSDs are running luminous or later but require_osd_release < luminous
     
      services:
        mon: 3 daemons, quorum 0,1,2
        mgr: 0(active), standbys: 1, 2
        osd: 18 osds: 18 up, 18 in
     
      data:
        pools:   2 pools, 320 pgs
        objects: 406k objects, 1617 GB
        usage:   4825 GB used, 62110 GB / 66936 GB avail
        pgs:     319 active+clean
                 1   active+clean+scrubbing+deep
     
      io:
        client:   679 B/s rd, 999 kB/s wr, 0 op/s rd, 73 op/s wr
    
  • Pour corriger l’erreur « all OSDs are running luminous or later but require_osd_release < luminous« , exĂ©cuter la commande suivante :
  • ceph osd require-osd-release luminous
  • RevĂ©rifier l’Ă©tat du Ceph :
  • ceph -s
  • RĂ©sultat sur mon cluster Ceph :
  • cluster:
        id:     fc76a7cc-58c0-4b59-a89d-6387e46f537e
        health: HEALTH_OK
     
      services:
        mon: 3 daemons, quorum 0,1,2
        mgr: 0(active), standbys: 1, 2
        osd: 18 osds: 18 up, 18 in
     
      data:
        pools:   2 pools, 320 pgs
        objects: 406k objects, 1617 GB
        usage:   4825 GB used, 62110 GB / 66936 GB avail
        pgs:     318 active+clean
                 2   active+clean+scrubbing+deep
     
      io:
        client:   67552 B/s rd, 873 kB/s wr, 4 op/s rd, 51 op/s w
    

    Basculer toutes les VMs d’un nœud Proxmox vers les deux autres

    Pour ma part, je vais mettre Ă  niveau chacun des nœuds les uns derriĂšre les autres pour ne pas avoir de coupure de service. Pour chaque nœud que je souhaite migrer vers Proxmox 5.0, je vais basculer toutes les VMs de ce nœuds vers les deux autres via le menu HA.

    Mise Ă  niveau de Proxmox 4.4 vers 5.0

    • Modifier les dĂ©pĂŽts Jessie par Stretch :
    sed -i 's/jessie/stretch/g' /etc/apt/sources.list
    sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/pve-enterprise.list
    echo "deb http://download.proxmox.com/debian/ceph-luminous stretch main" > /etc/apt/sources.list.d/ceph.list
  • Dans mon cas, j’ai OpenManage d’installĂ© avec les dĂ©pĂŽts Jessie, Ă  ce jour le dĂ©pĂŽt pour Stretch n’existe pas. Pour Ă©viter des problĂšmes, je dĂ©sactive le dĂ©pĂŽt :
  • sed -i 's/^/#/g' /etc/apt/sources.list.d/linux.dell.com.sources.list
  • Mettre Ă  jour la liste des dĂ©pĂŽts :
  • apt update
  • Dans mon cas, je rencontre un problĂšme de clĂ© :
  • W: There is no public key available for the following key IDs:
    EF0F382A1A7B6500

    Ce problÚme est un bug qui vient avec Debian 9, pour le résoudre il faut installer le paquet debian-archive-keyring :

    apt install debian-archive-keyring
  • Relancer lĂ  mise Ă  jour des dĂ©pĂŽts :
  • apt update
  • Mettre Ă  niveau le systĂšme :
    apt full-upgrade
    • RĂ©pondre aux diffĂ©rents questions posĂ©es lors de la mise Ă  niveau
  • Lorsque la mise Ă  niveau est terminĂ©e, redĂ©marrer Proxmox :
  • reboot
  • Une fois le serveur Proxmox mis Ă  niveau vers la version 5.0, refaire la manipulation sur le second nœud, jusqu’au dernier.
  • Conclusion

    Juste un mot : Proxmox c’est magique !
    Ma migration de version c’est dĂ©roulĂ© sans accros et sans coupure de service :-)

    Ressources

    Installation de FOG 1.4.4 sur Debian 9

    Par fred

    Un mémo sur comment installer la derniÚre version stable à ce jour de Fog sur Debian Strech.

    Pour rappel, FOG est une solution libre et open-source sous licence GPLv3 de gestion d’images disques.

    Le dĂ©ploiement d’image sur les stations de travail se fait via la technologie PXE. FOG permet d’imager plusieurs ordinateurs en mĂȘme temps Ă  travers le rĂ©seau. L’administration de FOG se fait Ă  travers une interface web, ce qui permet de faciliter la gestion.

    Dans le cas ce tuto, le dĂ©ploiement de l’image des postes de travail sera diffusĂ©e sur un rĂ©seau privĂ© Ă  part du LAN via une seconde interface rĂ©seau.

    Installation de l’OS Debian 9

    Voir l’article : Debian 9 : installation pas Ă  pas

    Renommer les interfaces réseaux en ETH

    Pour le bon fonctionnement des services de FOG, il faut renommer les interfaces réseaux en ETH : https://memo-linux.com/debian-9-retrouver-les-noms-des-interfaces-reseaux-eth/

    Installation et configuration de FOG

    Avant d’installer proprement dit le serveur FOG, une seconde interface rĂ©seau sera ajoutĂ©e et configurĂ©e pour le dĂ©ploiement des images sur le rĂ©seau privĂ©.

    Configuration de la deuxiÚme interface réseau

    • Éditer le fichier /etc/network/interfaces :
    nano /etc/network/interfaces
  • Ajouter Ă  la fin du fichier :
  • # carte reseau prive FOG
    allow-hotplug eth1
    iface eth1 inet static
    address 10.8.0.1/24
    

    Dans mon cas, la deuxiÚme interface réseau est nommé eth1, à adapter suivant votre cas.

  • Enregistrer les modifications avec la combinaison de touche Ctrl+X
  • Activer cette nouvelle interface rĂ©seau :
  • ifup eth1

    Installation de FOG

    • Effectuer une mise Ă  jour des paquets :
    apt update && apt full-upgrade -y
  • Installation du paquet git :
  • apt install git
  • GĂ©rer le proxy pour utiliser git :
  • export https_proxy="http://IP-local-du-PROXY:8080/"
  • TĂ©lĂ©chargement de FOG :
  • cd /opt
    git clone https://github.com/fogproject/fogproject.git
    
  • Lancer l’installation :
    cd fogproject/bin
    ./installfog.sh
    
    • Choisir le choix numĂ©ro [2] :
    • Choisir Normal avec N :
    • Adresse IP du sevreur FOG sur le rĂ©seau privĂ©: 10.8.0.1
    • RĂ©pondre non Ă  la question de changer le nom de l’interface rĂ©seau :
    • RĂ©pondre Y pour indiquer l’adresse IP du router :
    • Indiquer l’adresse IP 10.8.0.1 :
    • RĂ©pondre Y pour indiquer une adresse IP d’un serveur DNS :
    • Laisser par dĂ©faut l’adresse IP du DNS trouvĂ© par l’installateur :
    • RĂ©pondre y pour que le serveur DHCP pour le rĂ©seau privĂ© soit serveur DHCP :
    • Je ne souhaite pas installer les paquets de langues additionnels :
    • RĂ©capitulatif des choix, rĂ©pondre Y si tout est OK :
    • RĂ©pondre Y Ă  la question du mot de passe vide pour MySql :
    • Ouvrir un navigateur internet, saisir l’url du serveur FOG pour initialiser la base de donnĂ©es :
    • Une fois que la base de donnĂ©es initialisĂ©e, appuyer sur le touche EntrĂ©e :
    • Une erreur va se produire sur le dĂ©marrage du serveur DHCP, pour ce faire il faut indiquer dans le fichier /etc/default/isc-dhcp-server l’interface rĂ©seau qui sera dĂ©diĂ©e pour le DHCP en IPv4 et commenter l’IPv6 si pas utilisĂ© :
    nano etc/default/isc-dhcp-server
    INTERFACESv4="eth1"
    #INTERFACESv6=""
    
  • Relancer l’installation de FOG en reprenant les rĂ©ponses prĂ©cĂ©dentes :
  • ./installfog.sh
  • Normalement, l’installation se termine sans problĂšme :
  • SĂ©curiser l’accĂšs au serveur MariaDB

    Lors de l’installation, le compte root pour MariaDB est crĂ©Ă© sans mot de passe, ce qui est assez gĂȘnant…
    Pour sécuriser le SGDB, exécuter la commande mysql_secure_installation :

    mysql_secure_installation

    Et répondre au questions comme suit :

    Enter current password for root (enter for none): (appuyer directement sur la touche Entrée du clavier)
    
    Set root password? [Y/n] Y
    
    New password: MdpROOTsql
    Re-enter new password: MdpROOTsql
    
    Remove anonymous users? [Y/n] Y
    
    Disallow root login remotely? [Y/n] Y
    
    Remove test database and access to it? [Y/n] Y
    
    Reload privilege tables now? [Y/n] Y
    

    Configuration du nouveau mot de passe root mysql de FOG

    • Éditer le fichier /opt/fog/.fogsettings et renseigner le mot de passe Ă  la ligne 21 :
    nano /opt/fog/.fogsettings
    snmysqlpass='MdpROOTsql'
  • Éditer le fichier /var/www/fog/lib/fog/config.class.php et renseigner le mot de passe Ă  la ligne 50 :
  • nano /var/www/fog/lib/fog/config.class.php
    define('DATABASE_PASSWORD', "MdpROOTsql");

    Debian 9 : retrouver les noms des interfaces réseaux eth

    Par fred

    DorĂ©navant lors d’une installation Ă  partir de l’ISO de Debian 9, les interfaces rĂ©seaux ne sont plus nommĂ©es en eth mais en ens comme fut le cas sous Ubuntu 14.04 LTS.

    Comment renommer les interfaces réseaux en eth sous Debian 9 Stretch

    • Situation de dĂ©part :
    ip a
    1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: ens18:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        link/ether ca:66:f8:19:e0:44 brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.10 brd 192.168.1.255 scope global ens18
           valid_lft forever preferred_lft forever
        inet6 fe80::c866:f8ff:fe19:e044/64 scope link 
           valid_lft forever preferred_lft forever
    

    Le nom de mon interface réseau se nomme ens18.

  • Passer en root :
  • su -
  • Modifier le fichier /etc/default/grub et ajouter les options net.ifnames=0 et biosdevname=0 Ă  la ligne GRUB_CMDLINE_LINUX= :
  • RUB_DEFAULT=0
    GRUB_TIMEOUT=5
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="quiet"
    GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
    
  • RĂ©gĂ©nĂ©rer le fichier de configuration du Grub :
  • grub-mkconfig -o /boot/grub/grub.cfg
    CrĂ©ation du fichier de configuration GRUB…
    Image Linux trouvée : /boot/vmlinuz-4.9.0-3-amd64
    Image mémoire initiale trouvée : /boot/initrd.img-4.9.0-3-amd64
    fait
    
  • Renommer les interfaces rĂ©seaux dans le fichier /etc/network/interfaces :
    nano /etc/network/interfaces
    • Pour une configuration DHCP :
      allow-hotplug ens18
      iface ens18 inet dhcp
      
      • Remplacer par :
      allow-hotplug eth0
      iface eth0 inet dhcp
      
  • Pour une configuration statique :
    allow-hotplug ens18
    iface ens18 inet static
    address 192.168.1.10/24
    gateway 192.168.1.1
    
    • Remplacer par :
    allow-hotplug eth0
    iface eth0 inet static
    address 192.168.1.10/24
    gateway 192.168.1.1
    
  • RedĂ©marrer la Debian :
  • reboot
  • Une fois mon systĂšme redĂ©marrĂ©, l’interface rĂ©seau se nome de nouveau eth0 :
  • ip a
    1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        link/ether ca:66:f8:19:e0:44 brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::c866:f8ff:fe19:e044/64 scope link 
           valid_lft forever preferred_lft forever
    

    via www.itzgeek.com

    Debian 9 : installation pas Ă  pas

    Par fred

    Cet article dĂ©crit l’installation pas Ă  pas de la distribution GNU/Linux Debian 9 Stretch.
    L’idĂ©e de cet article est d’apporter une aide aux dĂ©butants sur l’installation de la Debian.

    Les Ă©tapes dĂ©crites dans l’article ne concernent que celles qui demandent une intervention humaine. Pour l’installation, j’ai rĂ©cupĂ©rĂ© l’ISO net-install en 64 bits.

    PrĂ©paration d’une clĂ© USb bootable avec l’ISO Debian

    • TĂ©lĂ©chargement de l’image ISO :
    wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.0.0-amd64-netinst.iso
  • CrĂ©ation d’une clĂ© USB bootable :
  • dd if=debian-9.0.0-amd64-netinst.iso of=/dev/sdb bs=4M && sync

    Installation pas Ă  pas de la Debian 9 en mode graphique

    • Une fois que la machine Ă  dĂ©marrĂ©e sur la clĂ© USB, le menu de l’installateur Debian apparaĂźt Ă  l’Ă©cran. Pour ce tuto, j’ai choisi l’installation en mode graphique « Graphical Install » :
    • La premiĂšre Ă©tape aprĂšs avoir choisie le mode d’installation est de sĂ©lectionner la langue dans laquelle l’installation va se faire :
    • SĂ©lectionner votre pays pour paramĂ©trer le fuseau horaire :
    • Choisir l’agencement du clavier :
    • Configuration rĂ©seau :
        Dans mon cas, j’ai une machine virtuelle qui possĂšde 4 interfaces rĂ©seaux. Pour installation du systĂšme, choisir la premiĂšre :
    • Si votre rĂ©seau possĂšde un serveur DHCP, ce dernier va attribuer un adressage IP automatiquement Ă  votre systĂšme. Si votre machine aura un usage bureautique, une adresse IP dynamique peut ĂȘtre envisageable mais dans le cas d’un serveur, il est prĂ©fĂ©rable d’attribuer une adresse IP statique. Pour ce faire, cliquer sur revenir en arriĂšre :
      • SĂ©lectionner « Configurer vous-mĂȘme le rĂ©seau » :
      • Indiquer une adresse IP :
      • Indiquer un masque de sous rĂ©seau :
      • Indiquer une passerelle :
      • Un serveur DNS :
      • Indiquer un nom au systĂšme :
      • Indiquer un domaine, laisser vide si aucun :
    • Choisir un mot de passe pour le compte root du systĂšme :
    • CrĂ©er un compte utilisateur :
    • Choisir son identifiant :
    • CrĂ©er le mot de passe pour cet utilisateur :
    • Pour les dĂ©butants, choisir « AssistĂ© – utiliser un disque entier » :
    • SĂ©lectionner le disque dur Ă  partitionner :
    • Choisir comment partitionner le disque dur. Je vous conseil d’avoir au moins la partition /home de sĂ©parer ce qui permet en cas de rĂ©installation du systĂšme de conserver vos donnĂ©es :
    • Un rĂ©capitulatif du partitionnement choisi, cliquer sur continuer :
    • Appliquer le partitionnement du disque
    • Dans notre cas, ne pas analyser d’autre CD :
    • Configuration de l’outil de paquet :
      Sous Debian ou gĂ©nĂ©ralement sous GNU/Linux, l’installation de paquets (logiciels) se fait avec un utilitaire propre au systĂšme, ici sous Debian c’est apt. Cet utilitaire va tĂ©lĂ©charger les paquets sur des serveurs dit « miroirs » avant de les installer. Il faut configurer ces miroirs sur notre systĂšme.
      • Choisir France comme pays :
      • SĂ©lectionner le miroir :
      • Si sur votre rĂ©seau vous avez un serveur Proxy, il faut l’indiquer sinon laisser vide :
      • Configuration de popularity-contest : si vous voulez envoyer de façon anonyme les statistiques de votre systĂšme, rĂ©pondre Oui sinon Non :
    • SĂ©lectionner les logiciels Ă  installer :
      • Si dans le cas d’un PC bureautique, choisir « Environnement de bureau Debian » plus le bureau de votre choix disponible dans la liste :
      • Dans le cas d’un serveur, choisir uniquement « serveur SSH » et « Utilitaires usules du systĂšme » :
    • Installation du Grub (boot loader) :
      Le Grub c’est celui qui va permettre le dĂ©marrage de votre systĂšme.
      • RĂ©pondre Oui :
      • SĂ©lectionner la premiĂšre partition :
    • Installation terminĂ©e :
    • Dans le cas d’une installation avec un environnement de bureau :
      • FenĂȘtre de connexion :
      • Le bureau Cinnamon sous Debian 9 :

    Installation pas Ă  pas de la Debian 9 en mode cli

    La mĂȘme chose que prĂ©cĂ©demment mais en version serveur :

    Proxmox : ajout OSD supplémentaires dans un cluster Ceph

    Par fred

    Un mĂ©mo sur comment ajouter des disques supplĂ©mentaires pour la crĂ©ation de nouveaux OSD pour augmenter Ă  chaud, la capacitĂ© d’un volume cluster Ceph .

    Présentation de mon cluster Ceph sous Proxmox

    • 3 nœuds Proxmox en HA avec 5 disques de 4To en RAID 0 pour les OSD
    • Volume Ceph actuel : 54To
    • Ajout de 3 disques de 4To au cluster

    Création des RAID 0 via iDRAC

    Une fois les nouveaux disques ajoutés au serveurs, il faut créer un RAID 0 pour chaque disque :

    • Se connecter Ă  l’interface web d’iRAC puis cliquer suer le le menu « storage » pour vĂ©rifier la prĂ©sence du nouveau disque :
    • Cliquer sur le menu « Virtual Disques » puis sur « Create » :
    • Renseigner les informations concernant le RAID, sĂ©lectionner le disque en bas de page puis cliquer sur « Create Virtual Disk » :
    • La tĂąche de crĂ©ation du RAID est prise en compte par iDRAC :
    • Refaire ces opĂ©rations pour tous les disques ajoutĂ©s.

    Créations des nouveaux OSD pour le cluster Ceph

    • Se connecter Ă  l’interface web d’administration de Proxmox, cliquer sur le menu « Ceph », ensuite sur « OSD » et cliquer sur « Create OSD » :
    • SĂ©lectionner le nouveau disque :
    • Refaire cette opĂ©ration pour tous les OSD, le statut de Ceph passe en « Warning » le temps de la reconstruction du cluster :

    Calcul du pgnum

    Ne pas oublier de recalculer le pgnum du pool Ceph :

    • (OSDx100)/size -> choisir la puissance de 2 supĂ©rieur au rĂ©sultat de l’opĂ©ration.
      • OSD : nombre total d’OSD choisi pour le pool
      • size : nombre de rĂ©plication
    • Exemple pour mon pool : (6*100)/3 = 200
      • mon pg_num sera d’une puissance de 2 supĂ©rieur Ă  200, c’est Ă  dire dans mon cas : 256
    • Dans le cas prĂ©sent mon ancien pgnum Ă©tait aussi de 256 donc pas de changement, mais dans le cas ou il faut changer le pgnum, voici la commande :
      ceph osd pool set {pool-name} pgp_num {value}
      • {pool-name} : le nom du pool
      • {value} : la nouvelle valeur, qui sera toujours supĂ©rieur Ă  l’ancienne.

    Proxmox : script post-installation

    Par fred

    Pour automatiser la configuration et l’installation d’outils sur mes serveurs Proxmox, j’ai Ă©cris un petit bout de script en bash.

    Le script peut ĂȘtre tĂ©lĂ©chargĂ© ou copiĂ© Ă  cette adresse : https://github.com/freddL/postinstall_pve

    Ce script permet de :

    nb: je modifierais le script pour mettre en variable certains paramĂštres comme le proxy, le mail de l’admin, le ntp…

    Proxmox 4.4.x : supprimer banniÚre « No Valid Subscription »

    Par fred

    Un petit mĂ©mo sur comment supprimer sur Promxox la banniĂšre, qui affiche « No Valid Subscription » Ă  chaque connexion sur l’interface web d’administration.

    Ouvrir un shell sur Proxmox et saisir la commande suivante :

    sed -i.bak 's/NotFound/Active/g' /usr/share/perl5/PVE/API2/Subscription.pm && systemctl restart pveproxy.service

    source : sysorchestra.com

    owncloud : vider la corbeille sur le serveur

    Par fred

    Un petit mémo sur comment vider la corbeille sur un serveur owncloud.
    Lorsqu’un utilisateur supprime un fichier dans son cloud, ce fichier est dĂ©placĂ© dans la corbeille de owncloud, nommĂ© files_trashbin, ce qui permet de restaurer ce fichier en cas de besoin. Mais si l’utilisateur ne fait pas le mĂ©nage, ces fichiers prĂ©sents dans la corbeille occupent de l’espace disque inutilement.

    Illustration d’une corbeille rempli :

    Voici la commande pour vider définitivement la corbeille sur un seveur Owncloud :

    • de tous les utiliateurs:
    sudo -u www-data php occ trashbin:cleanup
  • ou des l’utilisateurs toto et titi :
  • sudo -u www-data php occ trashbin:cleanup toto titi

    Par dĂ©faut, sur un serveur owncloud la date expĂ©rimentation d’un fichier pour la suppression automatique est de 30 jours (sauf que dans mon cas, je n’avais pas cette option). Il est possible de changer cette valeur dans le fichier config/config.php.

    • Exemple avec une rĂ©tention de 10 jours :
    trashbin_retention_obligation => 10, auto',
  • Ou rĂ©tention infini :
  • trashbin_retention_obligation => disabled',

    source : files_trashbin

    Superviser un onduleur avec Centreon

    Par fred

    Un mémo sur comment superviser un onduleur respectant la RFC1628 avec Centreon.

    Installation de Centreon-plugins

    Pour rappel, si comme moi vous avez installĂ© Centreon Ă  partir de l’ISO, le systĂšme d’exploitation est CentOS.

    • Installer les prĂ©-requis :
    yum install git perl net-snmp-perl perl-XML-LibXML perl-JSON perl-libwww-perl perl-XML-XPath perl-Net-Telnet perl-Net-DNS perl-DBI perl-DBD-MySQL perl-DBD-Pg
  • TĂ©lĂ©chargement du package centreon-plugins :
  • cd /usr/lib/nagios/plugins
    git clone https://github.com/centreon/centreon-plugins.git
    chown -R centreon:centreon centreon-plugins/
    chmod +x centreon-plugins/centreon_plugins.pl
    

    Test du plugin hardware::ups::standard::rfc1628::snmp::plugin

    Le supervision de l’onduleur est rĂ©alisĂ© avec le plugin hardware::ups::standard::rfc1628::snmp::plugin. PremiĂšre chose Ă  faire est de changer d’utilisateur pour ne pas effectuer les tests de supervision avec le compte root du serveur.

    • Changer pour l’utilisateur centreon :
      su centreon
    • Lister les modes du plugins :
      ./centreon_plugins.pl --plugin=hardware::ups::standard::rfc1628::snmp::plugin --list-mode

      • Les modes :
        • alarms
        • battery-status
        • input-lines
        • output-lines
        • output-source
    • Test du plugin avec le mode alarms :
      ./centreon_plugins.pl --plugin=hardware::ups::standard::rfc1628::snmp::plugin --mode=alarms --hostname=IP-ONDULEUR --snmp-version=v1 --snmp-community=public
      • Si tout est OK :
      OK: No alarms | 'alarms'=0;;;0;
  • Refaire les tests avec les autres modes :
  • CrĂ©ation de la commande dans Centreon

    • Menu « Configuration » -> « Commandes » -> « Ajouter » :
    • La nouvelle commande de check :

    Création des modÚles de services dans Centreon

    Création des services correspondants pour chaque mode du plugin.

    • Menu Configuration » -> « Services » -> « Modeles » -> « Ajouter » :
    • Ajout du premier modĂšle pour le mode Alarms :
    • Faire de mĂȘme pour les autres modes :

    CrĂ©ation du modĂšle d’hĂŽte dans Centreon

    • Menu « Configuration » -> « HĂŽtes » -> « ModĂšles » -> « Ajouer » :
    • Renseigner un nom et un modĂšle puis aller dans l’onglet « Relations » :

    Ajout de l’onduleur Ă  superviser dans Centreon

    • Menu « Configuration » -> « HĂŽtes » -> « Ajout » :
    • Renseigner les champs sans oublier d’ajouter le modĂšle d’hĂŽte :

    Relance du collecteur pour la prise en compte des changements

    • Menu « Configuration » -> « Collecteurs » -> SĂ©lectionner le collecteur > « Appliquer la configuration » :
    • Exporter la configuration :
    • L’onduleur est supervisĂ© par Centreon :

    Installer le client JNC pour l’onduleur Masterys BC sous Debian 8

    Par fred

    Ce mĂ©mo dĂ©crit l’installation du client JNC pour Onduleur Masterys BC sous Debian 8, fonctionne aussi bien pour les hyperviseurs Proxmox.

    Dans mon cas, l’onduleur Masterys BC possĂšde une carte Ethernet configurĂ©e, qui envoie un signal d’extinction aux diffĂ©rents serveur via le rĂ©seau.
    Pour que les serveur soient managĂ©s via l’onduleur, il faut installer et configurer le client JNC. C’est ce client, qui exĂ©cutera la commande d’extinction du serveur dans le cas d’une coupure Ă©lectrique trop longue et ne possĂ©dant plus assez d’Ă©nergie dans les batterie.

    Installer les pré-requis

    • Mettre Ă  jour la liste des paquets :
    apt update
  • Installer JAVA :
  • apt install openjdk-7-jdk -y
  • CrĂ©er un lien symbolique pour JNC Client, car JNC va chercher JAVA dans /opt/jre/bin/ :
  • mkdir -p /opt/jre/bin/
    ln -s /usr/bin/java /opt/jre/bin/java

    Installer le client JNC

    • TĂ©lĂ©charger le client :
    cd /root
    wget http://www.socomec.fr/files/live/sites/systemsite/files/UPS/tel-logiciel/JNC/JNC_2.10_for_UNIX.tar
  • DĂ©sarchiver :
  • tar xvf JNC_2.10_for_UNIX.tar
  • ExĂ©cuter l’installation du client :
    cd UNIX
    ./INSTALL.SH
    • Renseigner : LINUX
  • Si des erreurs de X, c’est normal car le client est prĂ©vue pour ĂȘtre exĂ©cutĂ© dans un environnement graphique.
  • Configurer le client JNC

    • Éditer le fichier common.cfg :
      nano /usr/jnc/common.cfg
      • Modifier ces informations :
        • RemoteHost1 = Adrese IP de l’onduleur
        • HostName = le nom du serveur
        • Language = indiquer la langue, exemple fr

    Créer un service pour JNC

    De base, le client JNC n’est pas intĂ©grĂ© Ă  systemd. Il faut crĂ©er un service pour activer ou dĂ©activer la gestion d’extinction via l’onduleur.

    • Modifier le script fournis par le client :
      nano /root/UNIX/SCRIPTS/S20jnc.sh
      • Ajouter un dĂ©but du script :
      #!/bin/bash
  • Copier ce script dans /usr/jnc/ :
  • cp /root/UNIX/SCRIPTS/S20jnc.sh /usr/jnc/S20jnc.sh
    cp /root/UNIX/SCRIPTS/S20jnc.sh /usr/jnc/S21jnc.sh
  • Modifier le fichier /usr/jnc/S21jnc.sh start par stop :
  • #!/bin/bash
    cd /usr/jnc/
    ./stop.sh >> shutdown.log &
    
  • CrĂ©er un nouveau service pour systemd :
    nano /etc/systemd/system/jnc.service
    • Coller ce contenu :
    [Unit]
    Description=JNC client
    
    [Service]
    RemainAfterExit=yes
    ExecStart=/usr/jnc/S20jnc.sh
    ExecStop=/usr/jnc/S21jnc.sh
    Type=oneshot
    
    [Install]
    WantedBy=multi-user.target
    
  • Rendre le service exĂ©cutable :
  • chmod +x /etc/systemd/system/jnc.service
  • Activer ce service au dĂ©marrage du serveur :
  • systemctl enable jnc.service
  • DĂ©marrer le service :
  • systemctl start jnc.service
  • VĂ©rifier le statut du service :
  • systemctl status jnc.service

    VĂ©rification dans l’interface web d’administration de l’onduleur

    AprĂšs avoir dĂ©marrĂ© le service jnc.service, le serveur apparaĂźt automatiquement dans l’inerface web d’administration de l’onduleur.
    Se connecter Ă  l’interface web et l’aller dans le menu « Supervision ASI » puis « Client serveurs » (dans mon cas, mes 3 nœuds Proxmox du cluster Ceph) :

    owncloud : migrer SQlite vers MariaDB

    Par fred

    Un mémo sur comment migrer un serveur Owncloud tournant sur le moteur de base de données SQLite vers MariaDB pour plus de performances.

    Installer MariaDB et créer la future base de données pour Owncloud

    • Installer le serveur MariaDB :
    apt install mariadb-server
  • CrĂ©er la future base de donnĂ©es pour Owncloud :
    • Se connecter Ă  MariaDB :
    mysql -u root -p
  • CrĂ©er la base de donnĂ©es :
  • CREATE DATABASE dbcloud;
  • CrĂ©er un utilisateur pour cette base de donnĂ©es :
  • CREATE USER 'usercloud'@'localhost' IDENTIFIED BY 'SuperMDPoftheDeath';
  • Donner les droits Ă  l’utilisateur sur la base de donnĂ©es de Owncloud :
  • GRANT ALL PRIVILEGES ON dbcloud.* TO 'usercloud'@'localhost';
  • Recharger les prĂ©vilĂšges :
  • FLUSH PRIVILEGES;
  • Sortir de la base de donnĂ©es :
  • exit

    Migrer la base de données SQlite vers MariaDB

    sudo -u www-data php occ db:convert-type --all-apps mysql usercloud 127.0.0.1 dbcloud

    Le moteur de base de données est automatiquement changé dans le fichier config.php de Owncloud.

    Convertir et concaténer plusieurs fichiers PDF en un seul

    Par fred

    Un petit mémo sur comment convertir plusieurs fichiers au format PDF puis les concaténer en un seul fichier PDF en ligne de commande sous GNU/Llinux.

    Pré-requis

    Tout d’abord installer les paquets imagemagick et unoconv, qui seront nĂ©cessaire Ă  ces opĂ©rations.
    Exemple sous Manjaro :

    sudo pacman -S imagemagick unoconv

    Ensuite, tous les fichiers Ă  convertir doivent ĂȘtre placĂ©s dans le mĂȘme dossier, idem lors de la concatĂ©nation des fichiers PDF.

    Convertir plusieurs fichiers au format PDF

    Exemple avec des fichier .odt:

    unoconv -fpdf *.odt

    Concaténer plusieurs fichiers PDF en un seul

    convert *.pdf mon_nouveau_fichier.pdf

    RĂ©parer pacman : error while loading shared libraries: libstdc++.so.6

    Par fred

    Suite Ă  un problĂšme de mise Ă  jour de ma Manjaro, j’ai cassĂ© les gestionaire de paquet pacman.

    Mon problĂšme initial :

    sudo pacman -Su
    :: DĂ©but de la mise Ă  jour complĂšte du systĂšme...
    résolution des dépendances...
    recherche des conflits entre paquets...
    avertissement : supprime « gcc-libs » de la liste de cible car il est en conflit avec « gcc-libs-multilib »
    erreur : la prĂ©paration de la transaction a Ă©chouĂ© (la satisfaction des dĂ©pendances a Ă©chouĂ©)
    :: gcc : requiert gcc-libs=7.1.1-2
    

    Impossible de mettre Ă  jour mon systĂšme. AprĂšs quelques recherche sur le web, je suis tombĂ© sur cet article : https://bbs.archlinux.org/viewtopic.php?id=226723 et j’ai suivie le dernier message.

    Allez, j’ouvre mon terminal et j’exĂ©cute la premiĂšre commande sans rĂ©flĂ©chir :

    pacman -Rdd gcc-libs-multilib

    Et lĂ  survient le drame, car oui cela m’a bien supprimĂ© le paquet gcc-libs-multilib mais ça m’a cassĂ© pacman ! Du coup, impossible de suivre les Ă©tapes de l’article citĂ© prĂ©cĂ©demment et je me retrouve avec un nouveau problĂšme :
    pacman: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

    Analysons les options -Rdd :

    • -R : cette option est utlisĂ© pour supprimer simplement un paquet.
    • dd : cette option signifie Ă  pacman d’ignorer tous les contrĂŽles de dĂ©pendance (un seul d permet d’ignorer les vĂ©rifications de la version de la dĂ©pendance)

    Donc pour rĂ©sumer, j’ai demandĂ© Ă  pacman de supprimer le paquet gcc-libs-multilib en ignorant toutes les dĂ©pendances, ce qui est trĂšs trĂšs risquĂ© !!! La preuve, j’ai cassĂ© pacman et tous les autres paquets qui sont liĂ©s Ă  cette dĂ©pendance…

    Bref, voici comment j’ai rĂ©ussi Ă  rĂ©parer pacman :

    cd ~/Téléchargements/
  • CrĂ©er un rĂ©pertoire temporaire, exemple gcc :
  • mkdir gcc
  • DĂ©placer l’archive dans ce rĂ©pertoire :
  • mv gcc-libs-7.1.1-2-x86_64.pkg.tar.xz gcc/
  • Aller dans ce rĂ©pertoire :
  • cd gcc/
  • DĂ©compresser l’archive :
  • xz -d gcc-libs-7.1.1-2-x86_64.pkg.tar.xz
    tar -xvf gcc-libs-7.1.1-2-x86_64.pkg.tar
    
  • Aller dans le rĂ©pertoire usr/lib/ crĂ©Ă© dans le rĂ©pertoire courant :
  • cd usr/lib/
  • Copier les librairies libstdc++.so.6 libgcc_s.so libgcc_s.so.1 dans /usr/lib/ :
  • sudo cp libstdc++.so.6 /usr/lib/libstdc++.so.6
    sudo cp libgcc_s.so /usr/lib/libgcc_s.so
    sudo cp libgcc_s.so.1 /usr/lib/libgcc_s.so.1
    
  • Enfin pour effectuer la mise Ă  jour de mon systĂšme et reconstruire toutes les dĂ©pendances, il faut installer le paquet gcc-libs avec l’option --force :
  • sudo pacman -S --force gcc-libs

    MoralitĂ© de cette histoire, faire trĂšs attention et ne pas copier bĂȘtement des lignes de commandes trouvĂ©es sur des forums ou articles de blog (comme le mien) sans rĂ©flĂ©chir Ă  deux fois :-)

    Sinon, pour résoudre le problÚme initial de la mise à jour du systÚme lié à la version de gcc, il faut simplement installer le paquet gcc-fortran :

    sudo pacman -S gcc-fortran

    Ensuite faire la mise Ă  jour :

    sudo pacman -Su

    Centreon : connexion automatique à l’interface web (autologin)

    Par fred

    Un mémo sur comment configurer Centreon pour donner un accÚs libre à la plateforme de supervision via une connexion automatique sans login et ni mot de passe.

    Configuration de Centreon pour l’autologin de l’interface web

    • Menu Administration -> Centreon web :
    • Aller en bas de page et cocher « Activer la connexion automatique » et « Afficher le raccourci de connexion automatique » puis cliquer sur « Sauvegarde » :

    Gestion utilisateur Centreon

    • Menu Configuration -> Utilisateurs et choisir « user » ou un autre de votre choix :
    • Menu Authentification Centreon et configurer tel quel :
      • Autoriser l’utilisateur Ă  se connecter Ă  l’interface web : oui
      • Mot de passe : cliquer sur GĂ©nĂ©rer
      • Langue par dĂ©faut : choisir fr_FR.UTF-8 (ou autre)
      • Fuseau horaire / Localisation : Europe/Paris
      • Administrateur : Non
      • ClĂ© d’auto-connexion : cliquer sur GĂ©nĂ©rer
      • Source d’authentification : Centreon
    • Pour finir la configuration utilisateur, cliquer sur Sauvegarder
    • Activer l’utilisateur : cliquer sur l’icĂŽne de couleur verte tout Ă  droite :

    Connexion automatique Ă  l’interface web de Centreon

    Pour se connecter automatiquement sur l’interface web de Centreon, saisir l’url suivante : https://IP_CENTREON/centreon/main.php?p=1&autologin=1&useralias=[login_user]&token=[value_autologin]

    • FQDN_CENTREON : le nom DNS de votre serveur Centreon
    • [login_user] : user
    • [value_autologin] : mlDux17r60 (ceci est la clĂ© d’auto-connexion gĂ©nĂ©rĂ©e dans l’interface de l’utilisateur)

    Choix de la page d’accueil de l’interface web de Centreon en autologin

    Il est possible de personnaliser l’URL pour choisir une page en spĂ©cifique en choisissant le bon menu. Exemple dans mon cas, je souhaite que l’utilisateur soit sur la page « DĂ©tails des status ». Pour ce faire, je me positionne sur cette page en question et je note le numĂ©ro dans l’url : https://FQDN_CENTREON/centreon/main.php?p=202

    Je modifie l’url d’auto login comme suit : https://FQDN_CENTREON/centreon/main.php?p=202&o=svc_unhandled&autologin=1&useralias=[login_user]&token=[value_autologin]

    Ressource

    Le blog de Centreon : http://blog.centreon.com/connexion-automatique-a-linterface-centreon-autologin/?lang=fr

    Transférer des PC depuis GLPI vers FOG

    Par fred

    Un mémo sur comment transférer des ordinateurs depuis GLPI vers un serveur FOG pour de ne pas ressaisir chaque machine manuellement afin de les imager.

    Pour réaliser cette opération, un plugin GLPI a été développé et mis à disposition sur github, nommé Fogplugin.

    Fonctionnalités du plugin Fogplugin :

    • Configuration de plusieurs serveur FOG
    • Choix du serveur FOG pour la synchronisation avec GLPI
    • Analyse de l’existant sur FOG
    • Comparaison par nom d’hĂŽte et par adresse MAC
    • Compte rendu des correspondances, des potentiels problĂšmes
    • Formulaire d’ajout vers FOG avec cases Ă  cocher

    D’aprĂšs la page github, le plugin est compatible Ă  partir de la version 0.85 de GLPI. Dans le cas de ce tuto, le plugin a Ă©tĂ© testĂ© sur la version 0.9.3 de GLPI, qui est installĂ©e sur la distribution Debian 8.

    Mise en place du plugin Fogplugin sur le serveur GLPI

    • Installer l’outil git :
    apt install git
  • Se placer dans le rĂ©pertoire plugins de Glpi :
  • cd /var/www/glpi/plugins
  • Cloner le plugin :
  • git clone https://github.com/goupil40/Fogplugin.git

    Activation du plugin Fogplugin dans l’interface web de GLPI

    • Cliquer sur le menu « Configuration » puis cliquer sur « Plugins » :
    • Cliquer sur « Installer » :
    • Cliquer sur « Activer » :

    Configurer le plugin Fogplugin

    • Cliquer dans le menu « Plugins » puis « Fogplugin » :
    • Cliquer sur l’icĂŽne « + » pour ajouter un serveur FOG :
    • Renseigner les diffĂ©rents champs et cliquer sur « Ajouter » :

    Transférer des machines depuis Glpi vers FOG

    • Cliquer dans le menu « Outils » puis « FogTransfert » :
    • SĂ©lectionner le serveur FOG :
    • SĂ©lectionner les machines Ă  transfĂ©rer dans FOG et cliquer sur le bouton « Ajout sĂ©lectionnĂ©(s) » en bas de page :

    • Test avec une machine sĂ©lectionnĂ©e puis je clique sur « Envoyé » :

    Linux : gestion des processus, qui ne libùrent pas de l’espace disque

    Par fred

    Lorsque sur un serveur sous GNU/linux l’espace disque disponible est devenu critique, le premier rĂ©flexe est de supprimer les fichiers de log ou autres locale, qui prennent trop de place.
    Mais si la suppression se fait en mode « sauvage », il se peut qu’aucun espace disque soit libĂ©rĂ© !
    Dans ce cas, il faut vérifier si des processus ont gardés ouvert ces fichiers, qui ont été supprimés. Ces processus deviennent des processus fantÎme.

    VĂ©rification de l’espace disque

    • VĂ©rification des partitions avec la commande df -h :

    • Ici dans mon cas sur ce serveur, il n’y a plus d’espace disque de disponible.

    • Mais si je vĂ©rifie avec la commande ncdu :

    • hummm, en faite d’aprĂšs la commande ncdu, la partition racine n’occupe que 3.2Go de donnĂ©es !

      Identifier les processus

      Pour identifier les processus en cours d’exĂ©cution, qui n’ont pas libĂ©rer les fichier seront identifiĂ©s via la commande lsof avec comme argument +L1 :

    lsof +L1

    D’aprĂšs le man de lsof :

    « +L1 » will select open files that have been unlinked.

    Pour revenir Ă  mon cas :

    Les processus qui n’ont pas libĂ©rĂ©s les fichiers supprimĂ©s sont identifiĂ©s avec l’argument (deleted) en fin de ligne.
    Pour libĂ©rer de l’espace, il faut soit redĂ©marrer le processus si c’est un dĂ©mon ou le tuer.

    Une fois tous les processus redĂ©marrĂ©s ou tuĂ©s, on retrouve de l’espace disque sans avoir eu besoin de redĂ©marrer notre systĂšme GNU/Linux. De toute façon, un Linux ne se redĂ©marre jamais ;-)

    ❌