GNU/Linux RHEL4.4 (Nahant) administration système (vsftpd, vncserver, stty, import/export bdd, etc…)
Publié par patrick le juillet 4, 2007
Ces dernières semaines j’ai travaillé sur un serveur HP Proliant ML 150 G3 GNU/Linux RHEL4.4 en tant qu’adminitrateur système (ce qui n’est pas mon métier).
En tant que développeur, j’ai appris des choses intéressantes et les voici. Je précise que je n’étais pas connecté à internet pour cause de système ‘sensible’.
1) installation d’un serveur ftp : "vsftpd". Contrairement à ce qui est recommandé, le client a exigé que l’accès soit en ‘root’ ce qui est MAL. Il a fallu donc enlever la ligne ‘root’ des fichiers ‘/etc/vsftpd.ftpusers'et '/etc/vsftpd.user_list'. Par défaut l’heure affichée par le serveur vsftpd est GMT et non GMT+2 (pour la France). Il a donc fallu ajouter l’option ‘use_localtime=YES’ dans le fichier ‘/etc/vsftpd/vsftpd.conf’ pour avoir l’heure locale. Par défaut cette option est à ‘NO’: voilà le premier piège pour un administrateur novice. Une fois le fichier de configuration modifié, on relance le serveur FTP en tapant en root "/etc/init.d/vsftpd restart" ou service vsftpd restart.
Enfin, le client voulait avoir la vue sur la racine ‘/’ à partir d’un navigateur sous Window$. Il a donc fallu utiliser l’option ‘bind’ de la commande ‘mount’ : ‘ La commande à utiliser est "mkdir /root/ftp_root && mount –bind / /root/ftp_root". Ca ne s’invente pas.
ATTENTION: dans certaines docs, il y avait la commande suivante
"Pour l’avoir au boot éditer /etc/fstab et ajouter : / /root/ftp_root none bind,defaults,auto 0 0" ceci a planté le système de fichiers qui était en read-only. La commande ‘mount -o remount -orw /’ a permis de rétablir l’écriture sur système de fichiers et de supprimer ainsi la ligne de trop dans le fichier /etc/fstab. C’était encore un piège.
Liens:
- http://tools.ietf.org/html/rfc959
- http://fr.wikipedia.org/wiki/File_Transfer_Protocol
- http://doc.ubuntu-fr.org/vsftpd
- http://www.brennan.id.au/14-FTP_Server.html
- http://www.idevelopment.info/data/Unix/Linux/LINUX_TelnetFTPAsRoot.shtml
- http://www.debianaddict.org/article47.html (Installer un serveur FTP : vsftpd)
2) Installation de VNC (Virtual Network Computing) est un système qui vous permet d’administrer une autre machine à distance, et ce en voyant le bureau de cette machine. Cela peut être utile si un de vos proches débute en informatique car vous pouvez voir ce que lui voit sur son écran. Par ailleurs, cela peut vous épargner de passer par la ligne de commande.
Préconditions: vncserver doit être installé (je rappelle que je n’ai pas accès à internet)
- sous root (su – root) , tapez ‘vncserver’
- Dans le fichier /etc/sysconfig/vncservers on tape cette ligne: VNCSERVERS="1:user" où user est le nom utilisateur sur l’ordinateur distant et le nombre (1) est le numéro de la console graphique.
- modifier le fichier ~root/.vnc/startx (décommenter les 2 premières lignes)
- faire un "xhost +" pour autoriser l’affichage des fenêtres
Liens
- http://fr.wikipedia.org/wiki/Virtual_Network_Computing
3) Sauvegarde sur bande magnétique
- tar cvf /dev/st0 / (sauvegarde du système de fichiers complet)
- mt -f /dev/st0 rewind (pour rembobiner la bande)
- mt -f /dev/st0 status (pour avoir l’état de la bande)
- mt -f /dev/st0 eject (pour éjecter la bande)
4) Initialisation des ports ttys
La configuration des ports est faite dans le script /app/bin/init_ttys.sh appelé à partir du fichier /etc/rc.local (afin de conserver la configuration au reboot). ATTENTION: sous Debian il n’existe pas de fichier /etc/rc.local
# init_ttys.sh
# Cartes analog devices (Lampes,Vannes,Clefs)stty speed 19200 -inpck cs8 -cstopb -crtscts </dev/ttyS4
# Automate palettiseur TSX80 (Gestion des sirops)
stty speed 2400 -inpck cs7 cstopb -crtscts </dev/ttyS5
# Imprimante à étiquettes (Gestion des sirops)
stty speed 9600 -parodd cs8 -cstopb -crtscts </dev/ttyS6
# Chariots, CCC (Controleur Central Chariot)
stty speed 4800 parodd cs7 -cstopb -crtscts </dev/ttyS75)
4.1 Sauvegarde de la configuration des ports
#!/bin/sh
# save_conf_ttyS.shstty -a -F /dev/ttyS4 > conf_ttyS4.txt
stty -a -F /dev/ttyS5 > conf_ttyS5.txt
stty -a -F /dev/ttyS6 > conf_ttyS6.txt
stty -a -F /dev/ttyS7 > conf_ttyS7.txt
4.2 Vérification de la configuration des ports
#!/bin/sh
# verif_config_ttyS.sh
stty -a -F /dev/ttyS4 > results_ttyS4.txt
diff results_ttyS4.txt conf_ttyS4.txtstty -a -F /dev/ttyS5 > results_ttyS5.txt
diff results_ttyS5.txt conf_ttyS5.txtstty -a -F /dev/ttyS6 > results_ttyS6.txt
diff results_ttyS6.txt conf_ttyS6.txtstty -a -F /dev/ttyS7 > results_ttyS7.txt
diff results_ttyS7.txt conf_ttyS7.txtLiens
- http://pyserial.sf.net/(This module encapsulates the access for the serial port. It provides backends for Python running on Windows, Linux, BSD (possibly any POSIX compilant system) and Jython. The module named "serial" automatically selects the appropriate backend)
Open named port at "19200,8,N,1", 1s timeout
>>> ser = serial.Serial('/dev/ttyS1', 19200, timeout=1) >>> x = ser.read() #read one byte >>> s = ser.read(10) #read up to ten bytes (timeout) >>> line = ser.readline() #read a 'n' terminated line >>> ser.close()
5) Import/Export de bases de données
5.1 Export "Full" de la base de données Oracle10g (ExportBase.sh)
ORACLE_HOME=/opt/oracle/10.2.0.1.0;export ORACLE_HOME
ORACLE_SID=PROD;export ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin
export PATH
export DAY=`date +%u`
export FILE="svgbase_"$DAY".dmp"
export LOG="svgbase_"$DAY".log"
cd /app/oracle
exp user/passwd FULL=Y COMPRESS=N FILE=$FILE 1>$LOG 2>&1
5.2 Import de la base de données
/opt/oracle/10.2.0.1.0/bin/imp system/manager fromuser=user touser=user file=svgbase.dmp log=svg.log
6) Installation de sqldeveloper 1.2
Il n’y a pas grand chose à faire:
6.1) télécharger la dernière version (1.2 en juin 2007) http://www.oracle.com/technology/software/products/sql/index.html)
6.2) éventuellement installer le JDK1.5 s’il n’est pas installé
Liens
7) Divers
- Pour démarrer un service comme oracle par exemple on peut faire sous root (su – root)"/etc/init.d/oracle" start mais aussi de façon plus simple "service oracle start"
- du -ak | sort -nr | head -10 (pour connaitre les 10 plus gros fichiers)
Webographie sur RedHat Enterprise Linux
- http://fr.wikipedia.org/wiki/Red_Hat_Enterprise_Linux
"""
Red Hat Enterprise Linux (souvent abbrégé RHEL) est une distribution Linux produite par Red Hat et orientée vers le marché commercial et les serveurs d’entreprise . Red Hat prend en charge chaque version du logiciel pour une durée de 7 ans après sa sortie. Tout l’appui officiel, toutes les formations et certifications de Red Hat — RHCT, RHCE, RHCSS et RHCA — pour le déploiement de matériel et de logiciel portent sur la plateforme Red Hat Enterprise Linux.
De nouvelles versions de RHEL sont livrées tous les 18 à 24 mois. Quand Red Hat fournit une nouvelle version de RHEL, les clients peuvent mettre à jour leur version gratuitement à condition d’avoir un abonnement en cours.
- RHEL 4 (Nahant), 15 février 2005
- RHEL 5 (Tikanga), 14 mars 2007
"""
- http://fr.wikipedia.org/wiki/Red_Hat
- http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-fr-4/index.html (Red Hat Enterprise Linux 4, Introduction à l’administration système)
- disques RAID: http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-fr-4/s1-storage-rhlspec.html#S2-STORAGE-RAID-DAY2DAY
- http://distrowatch.com/table.php?distribution=redhat
- http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-fr-4/s1-disaster-addres.html#S2-DISASTER-ADDRES-WEB
- http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-fr-4/s1-philosophy-document.html
jmax a dit
merci pour l’astuce du localtime
j’avais un mauvais affichage des heures et dates et du coup, ça a tout réglé