linux:memo_admin
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
linux:memo_admin [08/03/2007 15:27] – procédure création LVM daniel | linux:memo_admin [02/10/2015 13:00] – daniel | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Administration serveur ====== | ||
+ | |||
+ | |||
+ | |||
+ | ===== Quelques procedures d' | ||
+ | * [[tomcat|tomcat_install]] | ||
+ | * [[qmail|postfix]] | ||
+ | |||
+ | ===== Quelques opérations classiques ===== | ||
+ | |||
+ | ==== Ajouter un utilisateur pour du ftp ==== | ||
+ | |||
+ | * Pure-ftpd | ||
+ | <code bash> | ||
+ | #remplacer < | ||
+ | pure-pw useradd < | ||
+ | # cela va demander le pass | ||
+ | # -y 2 => 2 connexions simu max | ||
+ | # -N 1000 => 1000 Mo de quota | ||
+ | # -u & -g correspondent à uid et guid (pas obligés de figurer dans / | ||
+ | |||
+ | # pour modifier un param, ici mettre le quota à 500Mo | ||
+ | pure-pw usermod < | ||
+ | |||
+ | # ATTTENTION, une fois les modifs de users effectuées, | ||
+ | pure-pw mkdb | ||
+ | # pour que cela devienne effectif ! | ||
+ | |||
+ | #lister tous les users et leur home | ||
+ | pure-pw list | ||
+ | |||
+ | # pour voir toutes les infos d'un user | ||
+ | pure-pw show < | ||
+ | |||
+ | # les autres commandes possibles | ||
+ | pure-pw --help | ||
+ | </ | ||
+ | |||
+ | ===== Configuration pure-ftpd ===== | ||
+ | Ex de conf sous debian sur http:// | ||
+ | et une autre bonne doc sur http:// | ||
+ | |||
+ | Les fichier de conf sont tous dans ''/ | ||
+ | |||
+ | |||
+ | ===== Apache ===== | ||
+ | |||
+ | ==== Auth by group ==== | ||
+ | Pour gérer les accès par groupe, dans la conf du vhost | ||
+ | < | ||
+ | < | ||
+ | AuthType Basic | ||
+ | AuthName "Le libellé de la demande d' | ||
+ | AuthUserFile / | ||
+ | AuthGroupFile / | ||
+ | Require group group1 group2 | ||
+ | </ | ||
+ | </ | ||
+ | Le fichier / | ||
+ | < | ||
+ | group1: user1 user2 | ||
+ | group2: user1 user3 | ||
+ | # etc. | ||
+ | </ | ||
+ | |||
+ | ===== ssh ===== | ||
+ | |||
+ | Une doc complète sur http:// | ||
+ | |||
+ | ==== Créer un accès par clé ==== | ||
+ | * générer une paire de clés privée/ | ||
+ | * sur le serveur, copier la clé publique dans le fichier / | ||
+ | from=" | ||
+ | * dans le client ssh, préciser le nom du user et la clé privée à utiliser.\\ | ||
+ | * sous linux, ssh-keygen met automatiquement (lors de la génération) la clé privée dans $HOME/ | ||
+ | * sous windows, dans putty, créer une session où on précise session/ | ||
+ | |||
+ | |||
+ | ===== LVM ===== | ||
+ | LVM (pour Logical Volume Manager) permet le resize de partition sans les effacer, (permet aussi d' | ||
+ | * lvm howto http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | |||
+ | Pour manipuler les partitions, utiliser parted en GiB et le laisser aligner (en octets on doit tomber sur des multiples de 2MiB, donc commencer la partition 1 à 2097152B, soit 512x4096 B = 2 MiB), pour préciser que la partition n°2 sera en lvm, c'est '' | ||
+ | |||
+ | ==== creation ==== | ||
+ | < | ||
+ | # creation de la partition (type Linux LVM, 8e) avec fdisk | ||
+ | # on scanne | ||
+ | vgscan -v | ||
+ | # on créé le physical volume | ||
+ | pvcreate /dev/sdbX | ||
+ | # on créé le volume group | ||
+ | vgcreate nomVolumeGroup /dev/sdbX | ||
+ | # et enfin notre logical volume | ||
+ | lvcreate -L xxxG -n nomVolumeLogique nomVolumeGroup; | ||
+ | # et on a dispo notre / | ||
+ | # reste à créer le filesystem | ||
+ | mkfs -v -c -j -L monLabel / | ||
+ | </ | ||
+ | ==== infos ==== | ||
+ | * pvdisplay : infos sur les physical volumes déclarés | ||
+ | * lvdisplay : infos sur les logical volumes déclarés | ||
+ | |||
+ | |||
+ | ==== resize ==== | ||
+ | |||
+ | === agrandissement === | ||
+ | - démontage (ici '' | ||
+ | - '' | ||
+ | - '' | ||
+ | - '' | ||
+ | - '' | ||
+ | - et on remonte '' | ||
+ | |||
+ | |||
+ | === réduction === | ||
+ | - démontage (ici '' | ||
+ | - '' | ||
+ | - '' | ||
+ | - '' | ||
+ | - et on remonte '' | ||
+ | |||
+ | ==== Modifications ==== | ||
+ | Pour modifier un LV (activer ou pas le mirror par ex), c'est lvconvert. | ||
+ | |||
+ | **Attention**, | ||
+ | |||
+ | exemples | ||
+ | <code bash> | ||
+ | # Passer backup en raid1, on a crée 2 partition avec fdisk, un sdb3 de 10Go et un sdb4 du reste | ||
+ | pvcreate /dev/sdb3 | ||
+ | pvcreate /dev/sdb4 | ||
+ | # on les ajoute au vg (vg2 ici) | ||
+ | vgextend vg2 /dev/sdb3 | ||
+ | vgextend vg2 /dev/sdb4 | ||
+ | # et on peut passer notre lv " | ||
+ | lvconvert -m1 / | ||
+ | # si vraiment on peut pas avoir un 3e PV, on peut s'en sortir avec un log en RAM, mais ça demandera à lvm de le reconstruire à chaque boot), ça donnerait | ||
+ | lvconvert -m1 --mirrorlog core / | ||
+ | |||
+ | # Pour supprimer le mirroir | ||
+ | lvconvert -m0 / | ||
+ | # pour passer le log du disque en RAM (pour récupérer un PV par ex) | ||
+ | lvconvert --mirrorlog core / | ||
+ | # et pour le remettre sur le disque | ||
+ | lvconvert --mirrorlog disk / | ||
+ | |||
+ | # pour passer de linear en stripped, pour faire du raid0 et doubler les perfs disques (au prix de la sécurité des datas) | ||
+ | lvconvert --stripes 2 --stripesize 256 / | ||
+ | </ | ||
+ | |||
+ | ==== Réparations ==== | ||
+ | En cas de disque défaillant dans un vg avec des volumes en mirroir, on débranche physiquement le disque malade (ça évite à lvm de chercher à retrouver ses petits et de figer la machine et achever le disque), et on ajoute un nouveau disque avec une partition lvm assez grande pour récupérer les volumes en mirroir | ||
+ | <code bash> | ||
+ | # pvcreate pour la nouvelle partition (/dev/sdxN ici), puis on l' | ||
+ | vgextend vg /dev/sdxN | ||
+ | # On active les lv qui peuvent l' | ||
+ | vgchange -a y --partial vg | ||
+ | # et on repare le lv miroir1 | ||
+ | lvconvert --repair / | ||
+ | </ | ||
+ | |||
+ | Pour déplacer tous les lv d'un pv (/dev/sdxA) vers un autre (/ | ||
+ | pvmove /dev/sdxA /dev/sdxB | ||
+ | et pour le retirer c'est | ||
+ | vgreduce vg /dev/sdxA | ||
+ | |||
+ | ===== Paquets utiles ===== | ||
+ | Pour un serveur en debian etch, une liste de paquets utiles | ||
+ | <code bash> | ||
+ | # serveur apache / php5 / mysql5 | ||
+ | mysql-server openssl | ||
+ | apache2 libapache2-mod-auth-plain | ||
+ | php5 php5-cli php5-curl php5-gd php5-imagick php5-mcrypt php5-ming php5-mysql php5-sqlite3 php5-tidy php5-xsl | ||
+ | |||
+ | # autres services | ||
+ | pure-ftpd nfs-user-server libapache2-svn nfs-user-server | ||
+ | |||
+ | # utilitaires de base | ||
+ | apt-file iftop joe findutils gcc hdparm htop lftp logrotate lynx make ntpdate perl python rsync screen sudo tethereal unzip whois zip | ||
+ | # autres applis utiles | ||
+ | munin phpmyadmin rsnapshot subversion | ||
+ | # pour rsnapshot | ||
+ | perl -MCPAN -e ' | ||
+ | |||
+ | # pour un smtp minimal | ||
+ | mailx ssmtp | ||
+ | |||
+ | # pour activer le dépot multimedia (pas forcément utile sur un serveur de prod) | ||
+ | debian-multimedia-keyring | ||
+ | |||
+ | # utilitaires annexes | ||
+ | imagemagick libfreetype6 lame | ||
+ | # et pour les swftools, il faut aussi (enfin, pas vraiment car il refuse de compiler avec la lbc6 de etch) | ||
+ | libfreetype6-dev libungif-bin t1lib-bin libjpeg62-dev libt1-dev libungif4-dev | ||
+ | |||
+ | # pour des paquets perso vite faits (attention, pas dans etch, à prendre dans sarge car ceux de sid n'ont pas la bonne libc6) | ||
+ | installwatch checkinstall | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Install basique ===== | ||
+ | |||
+ | Sur un nouveau sd, install de base | ||
+ | <code bash> | ||
+ | # à la 1re connexion root, on change le passwd et on installe sa clé ssh | ||
+ | # màj paquet | ||
+ | aptitude update && aptitude upgrade && aptitude dist-upgrade | ||
+ | # je commence par mon éditeur favori (remplacer joe par vim ou emacs pour les fans d' | ||
+ | aptitude install joe | ||
+ | # que l'on configure (-option en début de ligne pour l' | ||
+ | joe / | ||
+ | # cf http:// | ||
+ | # on passe au .bashrc avec .bash_aliases et .bash_prompt | ||
+ | # on configure ses locales (en-GB.utf8 par défaut, en activant quand même fr.utf8 et iso-8859-1 pour en et fr) | ||
+ | dpkg-reconfigure locales | ||
+ | # on s' | ||
+ | echo # | ||
+ | # scripts persos : | ||
+ | mkdir /home/bin | ||
+ | # un script pour envoyer un mail au reboot | ||
+ | joe / | ||
+ | chmod +x / | ||
+ | # que l'on ajoute au rc.local | ||
+ | joe / | ||
+ | # on peut passer à l' | ||
+ | aptitude install apt-build apt-file iftop joe findutils gcc hdparm htop lftp logrotate lynx make ntpdate perl python rsync screen sudo tshark unzip whois zip | ||
+ | </ | ||
+ | |||
+ | Ensuite, reste à installer les services voulus... | ||
+ | |||
+ | ===== Réseau ===== | ||
+ | Cf http:// | ||
linux/memo_admin.txt · Dernière modification : 24/08/2018 16:41 de daniel