Différences entre les versions de « Trucs & Astuces Linux »

De BlaxWiki
Aller à la navigationAller à la recherche
Ligne 31 : Ligne 31 :
* Grub
* Grub
<pre>
<pre>
On peut avoir des problèmes avec grub lors d'un grub install, voir https://{{SERVERNAME}}/index.php/Creation_de_VM_linux#Installation_de_grub pour la solution
On peut avoir des problèmes avec grub lors d'un grub install, voir https://wiki.blaxeen.com/index.php/Creation_de_VM_linux#Installation_de_grub pour la solution
</pre>
</pre>



Version du 12 juillet 2013 à 11:11

Cette page regroupe quelques trucs & astuces sur des problèmes divers rencontrés

  • Accès internet
Il peut arriver que l'on pingue internet (resolution dns & gw ok) mais pas d'accès internet via IE ou lynx. Cela est souvent du à un problème de négociation sur le switch ou sur l'eth 
qui est en half duplex
  • ELF & no such file or directory
Il peut arriver qu un programme ne se lance pas et marque "no such file or directory" alors que le fichier mentionné est bien
présent. Cela arrive lorsque l OS est en 64 bits et que le soft est en 32 bits, et que le package ia32-libs sous debian (ou glibc.i686 suivant les OS) n'est pas installé.
  • Enregistrement de session
Si l'on veut logguer les commandes qui sont faites dans les sessions des users, ajouter dans /etc/profile :
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

On peut mettre ca dans une autre local bien sur, puis rajouter dans le rsyslog.conf : local6.*                /var/log/session.log.
Cela va nous donner des choses comme :
Jul  8 12:48:55 serveur benj: benj [351]: Jul/06 -- 21:23:03 su [0]
Jul  8 12:48:56 serveur benj: benj [351]: Jul/08 -- 12:48:56 ls [0]
Jul  8 12:48:57 serveur benj: benj [351]: Jul/08 -- 12:48:57 dir [0]
Jul  8 12:48:59 serveur benj: root [32543]: Jul/08 -- 12:48:49 tail -f /var/log/ben.log  [130]
Jul  8 12:50:25 serveur benj: root [32543]: Jul/08 -- 12:50:02 vim /etc/rsyslog.conf [0]

Cela ne loggue pas ce qui est fait en ssh sans shell, pour ca il faut utiliser snoopy master qui loggue tout
  • Grub
On peut avoir des problèmes avec grub lors d'un grub install, voir https://wiki.blaxeen.com/index.php/Creation_de_VM_linux#Installation_de_grub pour la solution
  • History & date
Pour avoir la date et l'heure des commandes passées dans l'history, il faut rajouter dans /etc/profile ou .bashrc : export 
Centos : export HISTTIMEFORMAT='%F %T '
Debian : export HISTTIMEFORMAT="%h/%d -- %H:%M:%S "
  • Interface bridge en boucle
Il peut arriver que lorsqu'on fait une mauvaise conf d'interfaces eth & bridge, et que dans /var/log/message on ait ce message en boucle, et qu en faisant un brctl show, le brige
apparaisse et disparaisse. Il faut déplacer les 2 fichiers de conf des interfaces back275 et eth1.275 ailleurs que dans /etc/sysconfig/network-scripts/ (les renommer ne sert à rien).
Puis faire des ifconfig back275 down, ifconfig eth1.275 down (voir des brct delbr back275), et le problème devrait se résoudre

Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode
Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode
  • Interface ethX
Si on a des pb d interrfaces (eth2 au lieu de eth0) , et cela est valable aussi lorsqu on fait des images d OS en tar.GZ, il faut supprimer ce qu il y a dans le fichier /etc/udev
/rules.d/70-persistent-net.rules (ou similaire suivant les OS), mais le fichier doit exister
  • Loggin en root en boucle
Il peut arriver que lorsqu'on veuille se logguer en root, il demande bien le login et le mdp, mais il le redemande en boucle (sans mettre de message Acces denied ou invalid password).
Dans le cas que j'ai rencontré, cela arrive lorsque le selinux (ou autre systeme de sécurité) est activé. Il faut alors le désactiver ou le modifier pour pouvoir se logguer (reboot en 
mode pxe ou livecd obligé). IL faut aussi vérifier que dans /etc/securetty on ait bien les différentes tty (ou Stty pour la console)
  • No route to host
Il peut arriver que depuis un serveur l'on arrive bien à pinguer une ip Y, mais lorsque l'on veut faire un ssh, wget ou autre on a le message : " No route to host", alors que la route
existe bien. Cela signigie en général qu'il y a un firewall entre les 2 qui filtre ce service
  • Partitionnement d'un disque & /dev/sdaX
Lorsque l'on créé des partitions sur un disque, au moment du formatage avec mkfs.ext3 il se peut que le /dev/sdaX n'ait pas toutes les partitions (qu'il ait juste sda1 et sda2 et pas
sda3,4...), il faut alors rebooter. Avec des kernels récents on peut utiliser partprobe (partprobe /dev/sdb ; echo $?) ou kpartx pour mettre à jour la table des partitions dans /dev.
Si le /dev/sdX n'existe pas il n y a pas d autres moyen que de rebooter
  • Problème mot de passe & entropie
Les programmes tel que mkpasswd ou passwd (entre autres) se servent de /dev/random ou /dev/urandom pour générer des chiffres & lettres aléatoires. Si ces mots de passe comportent  
toujours les mêmes lettres, il y a de fortes chances que /dev/random ou /dev/urandom ne soient pas bon.
  • Prompt bash
Souvent le prompt par défaut  n'utilise pas le fqdn du serveur, ce qui peut etre embetant. Sous Debian, pour corriger cela, dans le /etc/bashrc (ou /etc/bash.bashrc suivant les 
distrib, modifier la ligne avec PS1 pour remplacer le "h:" par "H:". Bien mettre renseigner le fqdn dans /etc/hostname, et faire /etc/init.d/hostname.sh start pour le prendre en compte
Sous debian, décommenter aussi les lignes suivantes dans le /etc/bash.bashrc :
case "$TERM" in
xterm*|rxvt*)
    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
    ;;
*)
    ;;
esac 
  • Warning: `xxxx' uses 32-bit capabilities (legacy support in use)
On peut avoir ce warning au restart de certain soft (proftp, bind...), il faut dans ce cas là installer libcal-devel. La recompilation peut etre nécessaire pour ne plus avoir ce 
message.
  • Yum et curl
Yum se sert de pycurl (donc de curl) pour fonctionner. Si curl est compilé avec une version d'openssl différente de celle sur le system ou compilé sans openssl, voilà le message 
d'erreur que l'on a :
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
   /usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback