Great-OS version 1.0-RC1(8)

Great-OS

Cette page de manuel vous permet de prendre connaissance du minimum vital pour pouvoir utiliser votre système d'exploitation Great-OS GNU/Linux. Veuillez consulter les fichiers mentionnés pour obtenir plus d'information.

CONFIGURATION

La configuration de Great-OS comprend: le réglage du clavier, le réglage du réseau, le montage de partitions ou disques supplémentaires, l'ajout d'une partition ou fichier d'échange, la création d'un nouveau compte utilisateur (utilisatrice), le réglage de l'heure, le nom de la machine, le réglage de la langue de la machine, le réglage de la région qui détermine le fuseau horaire, le réglage de l'amorçage de la machine, le chargement manuel des modules, la modification des fichiers au démarrage de la machine.

Le clavier:
    La commande setup-great-os -ck permet de configurer facilement le clavier à utiliser. Le fichier /etc/vconsole.conf défini la configuration du clavier en mode console cad non graphique. Un exemple de configuration de la console:

 KEYMAP=fr-latin9.map La variable FONT défini la police utilisée. La variable UNICODE spécifie l'usage de l'encodage utf8. LOGLEVEL défini le niveau verbale de l'amorçage de la machine entre 1 et 7. KEYMAP définit la configuration du clavier utilisé. Toutes les dispositions de clavier sont listés dans le dossier /lib/kbd/keymaps/i386/. Toutes les polices disponibles sont listés dans le dossier /lib/kbd/consolefonts/. Le fichier /etc/X11/xorg.xonf.d/20-keyboard.conf défini la configuration du clavier en mode graphique. Le sujet étant tellement vaste, veuillez vous rapportez au manuel de Xorg pour sa configuration.

Le réseau:
    La commande setup-great-os -cn permet de configurer facilement le réseau.

 CONFIGURATION AUTOMATIQUE: Le variable MANAGER se trouvant dans le fichier /etc/sysconfig/network n'est pas définie. Le script s'occupant du réseau s'adaptera en fonction de l'application installée. Si wicd est trouvé, le service wicd sera lancé, si networkmanager est trouvé, le service networkmanager sera lancé. Si les 2 applications sont installées, c'est le service networkmanager qui sera lancé. Si aucune des 2 n'est trouvée, ce sera le script en ligne de commande qui sera lancé. Si vous souhaitez choisir votre propre mode de configuration, suivez les instructions ci-dessous.

 CONFIGURATION MANUELLE: Chaque connection réseau est définie dans un fichier se terminant par le nom de la connection. Le nom d'une carte réseau peut s'appeller soit enp0s3, ens18, etc ou wlp2s0, etc. Pour connaître le nom des cartes réseaux reconnues sur la machine, vérifiez le contenu du dossier /sys/class/net. Utilisez la commande ls /sys/class/net. Notez que wlan0, wlan1, etc représentent dans la plupart des cas la connection wifi. La carte lo ne doit pas être configurée. Exemple: le fichier /etc/systemd/network/20-wired.network défini la configuration de la connection de enp0s3. Ce premier exemple défini la carte enp0s3 en adresse statique, le contenu de /etc/systemd/network/20-wired.network sera:

[Match] Name=enp0s3 [Network] DHCP=ipv4 [DHCP] RouteMetric=10

Dans le cas d'utilisation d'une adresse statique, il est necessaire de spécifier la (les) adtresse(s) IP du (des) serveurs de noms de domaine (DNS). Par exemple, si vous souhaitez utiliser les serveurs de google. Mettez ceci dans le fichier /etc/resolv.conf:

 nameserver 8.8.8.8
 nameserver 8.8.4.4 Dans la plupart du temps, votre routeur fait également office de serveurs de noms de domaine. Vous pouvez donc dans ce cas y mettre l'adresse IP de votre routeur. Le deuxième exemple défini une configuration d'adresse dynamique sur wlan0, le contenu de /etc/systemd/network/25-wireless.network sera:

[Match] Name=wlp2s0 [Network] DHCP=ipv4 [DHCP] RouteMetric=20

Définir un réseau sans fils et activation de la clé wpa
    La commande setup-great-os -cw permet de configurer un point d'accès sans fil. Si votre machine supporte le réseau sans fils, il est necessaire de le configurer. Pour connaître le nom de la carte reseau, utilisez la commande en root iwconfig. Si le resultat de la commande affiche ce genre d'information:

 enp0s3 no wireless extensions. wlp2s0 IEEE 802.11abg
           Mode:Managed Frequency:2.417 GHz Access Point: C4:3D:C7:9F:D0:CF
           Tx-Power=200 dBm
           Retry long limit:7 RTS thr:off Fragment thr:off
           Encryption key:off
           Power Management:off Dans l'exemple ci-dessus, la carte wlp2s0 supporte le wifi, il suffit donc de produire le fichier de configuration qui sera utilisée pour la connection réseau. ATTENTION il est important de respecter le nom du fichier de configuration afin que le script puisse le retrouver: Dans cet exemple, le nom de la carte sera wlp2s0, le nom du reseau wifi s'appellera casabianca et la clé d'accès Gg6!-@1234. Sur base de ces infos, produisez le fichier de configuration:

 wpa_passphrase "casabianca" "Gg6!-@1234" > /etc/wpa_supplicant.conf.wlp2s0 Ajoutez également le fichier de configuration du réseau comme expliqué plus haut. Dans cet exemple il s'agit de créer le fichier /etc/systemd/network/25-wireless.network. Une fois terminé, vous pouvez relancer le réseau de votre machine à l'aide de la commande /etc/rc.d/init.d/network restart. Veuillez également vérifier la définition de la variable MANAGER qui est définie dans le fichier /etc/sysconfig/network. La gestion du service réseau peut se faire soit depuis la ligne de commande (expliqué ci-avant) la valeur de la variable est alors cli. soit via wicd, mettez wicd comme valeur, soit networkmanager si vous avez installé l'interface graphique gnome, mettez alors networkmanager.

Ajout d'une partition, d'un disque ou d'un dossier NFS:

 NOTE IMPORTANTE: Si vous avez déjà créer le(s) utilisateur(s) et que vous souhaitez monter le dossier /home (qui contient donc les données personnels des utilisateurs) sur une partition/disque/dossier NFS séparé, il est important de sauvegarder son contenue avant de procéder, il existe plusieurs methodes, quelque soit la methode choisie, assurez-vous d'être en root et le serveur X arrêté:

 En root tapez les commandes suivantes:
 # init 3
 # sync
 # cd /
 # tar cf /root/users.tar home/* Si tout s'est bien passé et qu'aucune erreur ne s'est produite, vous pouvez supprimez les dossiers:

 Toujours en root:
 # cd /
 # rm -r /home/*
 Le dossier /home est maintenant vide et prêt pour pouvoir être monté sur le point de montage de votre choix. Le fichier /etc/fstab défini les points de montage des différents périphériques lors de l'amorçage de la machine. Vous souhaitez probablement utiliser une partition ou un disque oumême un dossier NFS pour stocker les données personnelles des utilisateurs enrégistrés sur la machine. Dans notre exemple, GRUB est sur la première partition, Great-OS sur la deuxième partition, les données d'échange mémoire virtuelle sur la troisième partition. Le fichier /etc/fstab de notre exemple contient les informations suivantes:

 # file/device mountpoint type options dump fsck order
 ...
 /dev/sda1 /boot ext2 defaults 0 0
 /dev/sda2 / reiserfs defaults 0 1
 /dev/sda3 swap swap pri=1 0 0

Nous souhaitons ajouter la deuxième partition formatée en ext4 du deuxième disque installé sur le point de montage /home, il suffit d'ajouter la ligne suivante:

 /dev/sdb2 /home ext4 defaults 0 0 Pour ajouter un dossier NFS /srv se trouvant donc sur un serveur distant dont l'adresse IP est 192.168.254.254 sur le point de montage /serveur, on ajoute la ligne suivante:

 192.168.254.254:/srv /serveur nfs rw,_netdev,rsize=8192,wsize=8192 0 0 Le dossier /serveur doit être créé au préalable sur votre machine locale. Les valeurs de rsize et wsize sont celle utilisées par défaut, libre à vous d'expérimenter d'autres valeurs pour rsize et wsize. Assurez-vous d'avoir installé le paquet nfs-utils et que les services associés soient lancés. En cas de problèmes de performance, une solution radicale consiste à utiliser la version 3 de NFS en ajoutant l'option vers=3 dans le champ options de la ligne ajoutée. Une fois votre configuration terminée, vous pouvez activer les montages avec la commande:

 mount -a Aucun message d'erreur ne doit apparaître. Vous pouvez vérifier que le résultat en utilisant la commande mount. Il suffit maintenant de restaurer le contenu du dossier /home:

 A faire uniquement si des utilisateurs sont déjà créés et que vous avez choisi de monter le dossier /home:
 # cd /
 # tar xf /root/users.tar Vous pouvez repasser en mode graphique et vous connectez en non root.

Ajout d'une partition ou fichier d'échange:
    La commange fdisk permet de modifier la répartition de votre(vos) disque(s). Si vous avez moins de 1 GigaOctets de RAM et que vous êtes en 32 bits (ou moins de 2 GigaOctets en 64 bits), il est vivement recommandé de créer une partition d'échange. Si tout le disque est occupé, il est encore possible de créer un fichier d'échange et de le monter automatiquement à l'amorçage de la machine. On commence par créer un fichier d'une taille suffisante (ici +/- 500 MegaOctets):

 # dd if=/dev/zero of=/SWAP bs=1024 count=500000 Un fichier SWAP de 512Moctets est créé à la racine. On va le formater et le rendre actif:

 # mkswap /SWAP
 # swapon /SWAP Et ajouter l'entrée dans /etc/fstab:

  /SWAP swap swap pri=1 0 0

Création d'un nouveau compte:
    La commande setup-great-os -cu permet d'ajouter un nouvel utilisateur sur votre système. Le nouvel utilisateur sera automatiquement ajouté aux groupes essentiels de Great-OS. Si une interface graphique a été installée, celle-ci sera lancée et le premier utilisateur inscrit sera automatiquement logué. Si vous souhaitez déactiver cette fonction, éditez le fichier /etc/lxdm/lxdm.conf. Les commandes classiques useradd/userdel permettent d'ajouter/supprimer des comptes utilisateurs

L'horloge:
    La commande setup-great-os -cc permet de configurer facilement la date et l'heure Sous Great-OS, l'affichage de l'horloge peut utiliser 2 methodes:
     - Methode 1: UTC=1, tenir compte du "Temps universel coordonné". Ajustement automatique heure d'été/hiver. Consultez la page wiki http://fr.wikipedia.org/wiki/Temps_universel_coordonn%C3%A9 pour plus d'informations.
     - Methode 2: UTC=0, tenir compte de l'heure locale (celle de votre poignet) uniquement et ignorer le temps universel coordonné. Cette methode ne mettra pas l'horloge de votre machine à jour aux changements heure été/hiver. Le lien symbolique /etc/localtime défini la methode d'affichage de l'horloge sur la machine. Le fichier contient une seule variable UTC. si UTC=1 cela signifie que l'horloge du bios DOIT être règlé sur l'horloge de temps universel coordonné, et le script de configuration ajustera l'heure du bureau en fonction de la région où vous vous trouvez (Methode 1). Attention, si vous utilisez la methode 1 et que vous êtes en multiboot avec windows, l'heure sous windows sera fausse, ce dernier OS ne tient pas compte de cette difförence entre l'horloge bios et l'horloge de l'OS. Si UTC=0, l'horloge du bios et l'horloge du bureau afficheront l'heure locale, cad l'heure qui est à votre poignet (Methode 2). Si vous ne connaîssez pas le réglage actuelle de votre machine, vous pouvez vérifier le réglage de l'horloge de votre bios. En root, lancez la commande hwclock -r. Ceci affichera l'horloge matérielle. Si l'heure correspond à ce qui vous dit votre montre, alors l'horloge matérielle est configurée sur l'heure locale. Vous pouvez alors confirmer ceci en mettant UTC=0 dans le fichier /etc/sysconfig/clock. Si la sortie n'est pas identique à l'heure de votre poignet, il y a des chances qu'elle est été configurée en UTC. Si la commande hwclock -ru affiche l'heure de votre poignet, l'heure du bios de votre machine est alors correcte.

Nom de la machine:
    Le fichier /etc/hostname défini le nom de la machine. Exemple de fichier de configuration:

# Le nom de votre machine great-os

La langue utilisée:
    Le fichier /etc/locale.conf défini la langue utilisée. La commande setup-great-os -cl permet de configurer facilement la langue et la région à utiliser.

La région:
    Le lien /etc/localtime défini la région où vous vous trouvez et ajustera le fuseau horaire en conséquence. Pour connaître le choix possible des différentes régions pour l'Europe par exemple, utilisez la commande: l /usr/share/zoneinfo/Europe. Ensuite ajustez le lien avec votre ville la plus proche, par exemple la commande: sudo ln -sf /usr/share/zoneinfo/Europe/Rome /etc/localtime défini Rome comme ville de votre région. La commande setup-great-os -cl permet de configurer facilement la langue et la région à utiliser.

L'amorçage de la machine:
    Si vous avez utilisez une iso pour l'installation de Great-OS et que vous avez choisi d'installer l'amorçage de la machine, le fichier de configuration de l'amorçage se trouve dans /boot/grub/grub.cfg. Le nom du fichier du kernel-lts de Great-OS s'appelle kernel-lts, et le nom de l'initrd s'appelle initrd-lts. Les deux fichiers se trouvent par défaut dans le dossier /boot. Dans l'exemple qui suit: Great-OS est installée sur la première partition du deuxième disque, grub est installé sur le premier disque. Le fichier de configurations sera:

menuentry "Great-OS EternalRolling" {
  set root=(hd1,1)
  linux /boot/kernel-lts root=/dev/sdb1 ro quiet 3
  initrd /boot/initrd-lts } Si l'on souhaite avoir une entrée supplémentaire pour lancer le système de maintenance, quand celle-ci sera disponible:

menuentry "Great-OS systeme de maintenance" {
  set root=(hd1,1)
  linux /boot/kernel-lts ro quiet single
  initrd /boot/initrd-lts } Notez que l'option root=/dev/sdb1 est supprimée. Si l'amorce de grub n'est pas encore installé, (dans le cas d'une installation depuis le script par exemple). Vous pouvez installer grub en spécifiant le disque sur lequel la partition de Great-OS EternalRolling se trouve, dans notre exemple ci-dessus, on utilisera la commande suivante:

sudo grub-install /dev/sdb Ajustez en fonction de votre partition.

Chargement manuel des modules du kernel:
    Un module est une partie du noyau qui peut être intégrée pendant le fonctionnement de la machine. La commande lsmod liste les différents modules chargés par le noyau. La commande modprobe -v moduleX charge manuellement en mémoire le moduleX. La commande rmmod -v moduleX décharge le moduleX.

Déactiver le chargement (blacklister) d'un module:
    Le dossier /etc/modprobe.d contient tous les fichiers définissant les modules à "blacklister". Exemple de syntaxe de fichier, le fichier /etc/modprobe.d/blacklist.conf contient: blacklist radeon

Modification/création de fichiers/dossier au démarrage de la machine:
    Le fichier /etc/sysconfig/createfiles défini les fichiers / dossiers qui doivent être créés lors de l'amorçage de la machine.

EN CAS DE PROBLEMES
Il existe de nombreux fichiers logs qui peuvent afficher de precieuses informations. Les informations de démarrage se trouvent dans les fichiers /var/log/boot.log et /var/log/sys.log. Les informations du dernier lancement du serveur X se trouvent dans le fichier /var/log/Xorg.0.log. La plupart des services disposent également de leur propre log. Si vous avez un problème de connection ssh, une source d'info peut se trouver dans le fichier /var/log/auth.log du serveur ssh. Pour connaître l'historique de votre installation, consultez le fichier /var/log/install.log.

GESTION DES PAQUETS BINAIRES DISTANTS (ET INSTALLES)
La gestion des paquets binaires se fait via la commande cards. Elle comprends de nombreuses options dont voici quelques unes. Tapez cards pour une aide sommaire. Les commandes modifiant votre installation s'utilisent avec votre compte root (su -) ou via la commande sudo.

Configuration de cards
    Le fichier /etc/cards.conf définit les règles de fonctionnement de la commande cards. Les lignes commençant par dir définis les dossiers où sont stockés les paquets binaires et l'adresse URL du mirroir utilisé. Les lignes commençant par base définies la liste des paquets que contient une Great-OS de base dans le cas de la commande cards base. Libre à vous d'ajouter les paquets que vous souhaitez garder lors de l'exécution de cette commande. Pour cela, vous ajoutez les dossiers concernés dans un des dossiers specifiés à cette ligne.

check ou sudo cards sync && cards diff
    synchronisation, voir les mises à jour disponibles

get <paquet1> .. <paquetn>  ou sudo cards install <paquet>
    installe les paquet1 .. paquetn et leurs dépendances

del paquetX ou sudo cards remove paquetX
    désinstalle le paquetX. Si vous souhaitez supprimer le paquetX et ses sous-paquets, utilisez l'option -a ou --all cards remove -a paquetX.

up <paquet> ou sudo cards install -u <paquet>
    mise à jour du paquetX. Notez que les dépendances du <paquet> seront mis à jour si necessaire.

search <chaîne> ou cards search <chaîne>
    recherche le mots chaine dans le nom et la description des paquets, veuillez spécifier 2 lettres minimums.

cards diff
    affiche la liste des paquets pouvant être mis à jour. La comparaison se fait avec les binaires diponibles.

cards diff -p
    affiche la liste des paquets pouvant être mis à jour. La comparaison se fait avec les ports diponibles. Elle n'affiche rien si aucun port n'est rapatrié.

cards info <paquet>
    affiche les détails du <paquet>, si il est installé.

cards info -b <paquet>
    affiche les détails du <paquet> binaire, si il est disponible.

GESTION DES PAQUETS BINAIRES EN LOCAL (mode utilisateur avancé)
Pour pouvoir utiliser les commandes ci-dessous, vous devez installer le paquet cards.devel. La gestion des paquets binaires en local se fait via les commandes pkgadd, pkgrm, et pkginfo. Les commandes modifiant votre installation s'utilisent avec votre compte root (su -)

Configuration de pkgadd
    Le fichier /etc/pkgadd.conf défini les règles de d'installation et de mise à jour des paquets binaires. On y trouve trois colonnes, EVENEMENT, ECHANTILLON (PATTERN) et ACTION. L'évennement décrit la situation dans laquelle la règle s'applique. Actuellement les 2 situations sont UPGRADE (pour mise à jour) et INSTALL (pour installation). Les règles UPGRADE s'appliquent donc quand un paquet est mis à jour et INSTALL s'appliquent dans TOUS LES CAS. L'ECHANTILLON (PATTERN) est une expression régulière. L'ACTION s'applique aux EVENEMENT INSTALL ET UPGRADE. Un EVENEMENT peut être YES (oui) ou NO (non). Il peut y avoir plus d'une règle utilisant le même évenement dans tel cas la première règle aura la prioritée la plus basse et la dernière règle aura la prioritée la plus haute. Exemple:
    UPGRADE         ^etc/.*$                NO
    UPGRADE         ^var/log/.*$            NO
    UPGRADE         ^etc/X11/.*$            YES
    UPGRADE         ^etc/X11/XF86Config$    NO
    L'exemple ci-dessus signale pkgadd de ne jamais mettre à jour les fichiers se trouvant dans /etc/ ou /var/log (sous-dossiers compris), à l'exeption des fichiers /etc/X11 (sous-dossiers compris), à l'exeption du fichier /etc/X11/XF86Config. La règle de défaut est mettre à jour / installer tous les paquets, autrement dis, les règles dans ce fichier sont les exceptions à cette règle. IMPORTANT: Un ECHANTILLON ne doit jamais contenir un "/" initial car on fait référence aux fichiers contenus dans le paquet et non ceux installés sur le disque. Si pkgadd trouve un fichier spécifique qui ne doit pas être mis à jour, celui-ci sera installer dans /var/lib/pkg/rejected/. C'est à l'utilisateur de l'examiner et d'en prendre la décision.

sudo pkgadd /chemin/vers/paquetX
    installation d'un paquet local

sudo pkgadd -u /chemin/vers/paquetX
    mise à jour d'un paquet local

sudo pkgrm paquetX
    supprime le paquetX silencieusement

pkginfo -i
    liste les paquets installés

pkginfo -l paquetX
    lister les fichiers contenus dans un paquet

pkginfo -o NomDuFichier
    connaître l'appartenance d'un fichier

GESTION DES PAQUETS VIA LES PORTS AVEC LA GESTION DES DEPENDANCES (mode utilisateur avancé)

La gestion des recettes des paquets ainsi que les dépendances de ceux-ci se fait via la commande cards.

Configuration de cards
    Le fichier /etc/cards.conf définit les règles de fonctionnement de la commande cards. Les lignes dir /var/lib/pkg/... sont très importantes, l'ordre défini dans quel dossier la recette sera choisie si le port est en double.

cards deptree paquetX
    lister les dépendances d'un paquet et voir si elles sont installées ou pas

cards search paquetX
    voir si paquetX est disponible

cards info -p paquetX
    obtenir des infos sur un port (deps, paquetr, chemin, ...)

cards depends <paquet>
    lister les dépendances de compilation du <paquet>

cd /var/lib/pkg/saravane/server/paquetX && pkgmk -d -i
    builder et installer un port (necessite les droits du compte root)

sudo cards create paquetX
    télécharge, builde et installe paquetX en une seule commande

SERVICES

Les différents services sont disponible sous le nom <nom_du_paquet_de_base>. La commande cards search service affichera la liste des paquets de service disponible. Une fois installé, ils sont disponibles (cups, gdm, sshd, ...) dans le dossier /lib/systemd/system

systemctl start serviceX
    mise en route du serviceX

systemctl stop serviceX
    arrêt du serviceX

systemctl restart serviceX
    redémarrage du serviceX, cette option n'est pas toujours valable.

systemctl reload serviceX
    rechargement du fichier de configuration du serviceX, cette option n'est pas toujours valable.

systemctl enable --now serviceX
    Activation et démarrage du serviceX

systemctl enable --now serviceX
    Désactivation et arret du serviceX

AIDE EN LIGNE

Site des utilisateurs
    http://www.great-os.org

FICHIERS
/etc/cards.conf, /etc/pkgadd.conf, /etc/pkgmk.conf, /etc/sysconfig/console, /etc/sysconfig/clock, /etc/sysconfig/network, /etc/wpa_supplicant.conf.*, /etc/sysconfig/ifconfig.*, /boot/grub/grub.cfg, /etc/fstab, /etc/profile.d/i18n.sh, /var/log/install.log

AUTHEURS

Ecrit par Frederic Galusik <fred.galusik ~AT~ linuxpedia.fr>, Thierry Nuttens <thierryn1 ~AT~ hispeed.ch> et Rems de Great-OS

VOIR AUSSI les pages man de

pkgmk(8), pkgadd(8), pkgrm(8), pkginfo(8), modprobe(8), modprobe.conf(5), useradd(8), userdel(8)

COPYRIGHT

Copyright (C) 2009 - 2010 - 2011 Frederic Galusik Copyright (C) 2011 - 2012 - 2013 - 2014 - 2016 Thierry Nuttens Copyright (C) 2018 -2019 Rems

Ceci est un document libre publié sous licence libre WTFPL - Do What The Fuck You Want To Public License. ( http://www.wtfpl.net/ )