Systèmes
Guide de survie Solaris pour linuxien
Lorsqu'on vient du monde libre et qu'on est habitué à GNU/Linux on est parfois déstabilisé face à d'autres systèmes, aussi POSIX soient-ils. Ce petit guide devrait permettre de gagner un peu de temps aux pauvres ères forcés d'utiliser Solaris.
Archives compressées
- GNU/Linux
$ tar zcvf monarch.tar.gz monrep/ $ tar zxvf monarch.tar.gz
- Solaris
$ tar -cvf - monrep | gzip -c > monarch.tar.gz $ gzip monarch.tar.gz -c | tar -xvf -
Shell
Lorsque vous vous loguez sur un compte, faite un:
$ bash --login
Et si jamais les touches permettant d'aller directement en début et en fin de ligne ne fonctionnent pas correctement, utiliser les combinaisons suivantes:
| Action | Combinaison |
|---|---|
| Début de ligne | CTRL+a
|
| Fin de ligne | CTRL+e
|
Ceci n'est pas propre à Solaris (il s'agit de Bash), mais on est un peu plus amené à s'en servir sur ce système...
Suppression
Si vous voulez utiliser rm et qu'il existe un alias pour cette commande vous aurez la surprise de voir que la priorité des options -i et -f est différente sous Solaris et GNU/Linux. Ce qui veut dire que si un alias rm -i a été mis en place il est impossible de le surcharger en faisant un:
$ rm -rf monrep/
Pour que la surcharge fonctionne il faut indiquer le chemin complet vers la commande rm. En l'occurence:
/usr/bin/rm -rf monrep
Ordre des arguments
Je suis habitué à préciser les arguments a passer à une commande en fin de ligne. Surtout pour les commandes "dangereuses", comme rm:
$ rm monrep/ -rf
Ca permet d'éviter la casse tant que la ligne n'est pas complètement terminée.
Cette façon de faire est souvent impossible sous Solaris. Les arguments doivent être passés avant les éléments à traiter:
$ rm -rf monrep/
Recherches
- La commande find
Ne pas oublier de préciser systématiquement un chemin de recherche. Sous GNU/Linux il est possible de faire une recherche dans le répertoire courant comme suit:
$ find -name "*fichier*"
Sous Solaris il faut préciser:
$ find ./ -name "*fichier*"
- La commande grep
TODO
Désactiver le "xdm" cde
dtconfig -d
Configurer le réseau
Dans /etc/hosts
10.0.0.79 nom.fqdn nom
Dans /etc/hostname.eri0 (eri0 = nom de l'iface)
nom.fqdn
Dans /etc/netmasks
10.0.0.79 255.255.255.128
Dans /etc/defaultrouter
10.0.0.1
Dans /etc/nodename
nom
Dans /etc/resolv.conf
search fqdn nameserver 10.0.0.20 nameserver 10.0.0.2
Lister les packages installés
pkginfo -i
Infos sur un package
pkginfo -l package
Désactiver inetd
Commenter la ligne en bas de /etc/init.d/inetsvc
Lister les fichiers d'un package
pkgchk -v package
Trouver le package dont provient un fichier
pkgchk -l -p /full_path_to/file
Logs
Par defaut dans /var/adm/messages
Partitions
/etc/vfstab
Desactiver rpcbind
Utile essentiellement pour X,nfs, nis
mv /etc/rc2.d/SXXrpc /etc/rc2.d/KXXrpc
Tips
- sur un serveur, supprimer les packages "power management"
Filtrage IP
- utiliser ipf (http://www.cites.uiuc.edu/wsg/talks/ipfilter/)
(bien installer les deux, dabord 64bit puis 32bit)
conf dans /etc/opt/ipf/ipf.conf
Afficher les processus
ps -Alf
Installer un package
pkgadd -d package.pkg
Terminal avec couleur en ssh avec xterm/rxvt/linux/...
Dans /etc/profile
if [[ $TERM != "" -a $TERM != "sun-color" ] then export TERM=dtterm fi
Un equivalent de strace
apptrace
Mettre à jour les packages systèmes
Install de patchpro (pour les mises à jour sécu)
- téléchargement de pproSunOSsparc5.9jre2.2.tar.gz depuis sun.com
- tar xvzf dans /usr/local/src/patchpro
- cd /usr/local/src/patchpro/pproSunOSsparc5.9jre2.2
- ./setup (répondre y partout)
- ajout du port 443 tcp en output dans /etc/opt/ipf/ipf.conf
- /etc/init.d/ipfboot reload
- pprosvc -l
- pprosetup -i 'interactive:rebootafter:rebootimmediate:reconfigafter:reconfigimmediate:singleuser:standard'
Mise à jour
- pprosvc -i
- pkg-get -i
Compilation de modules perl
Si on utilise gcc, il est souvent necessaire de remplacer "-KPIC" (cc de Sun) en "-fPIC" (gcc) et supprimer les -x... dans OPTIMIZE
Chrooter snort
Voir l'article paru sur securityfocus: Chrooted Snort on Solaris
