Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
elearning:workbooks:debian:6:avance:l104 [2020/02/21 06:29] – créée adminelearning:workbooks:debian:6:avance:l104 [2020/08/07 16:24] (Version actuelle) admin
Ligne 3: Ligne 3:
 Dernière mise-à-jour : ~~LASTMOD~~ Dernière mise-à-jour : ~~LASTMOD~~
  
-======LDF304 - Gestion du Noyau et des Quotas======+======LDF304 - Gestion du Système X et de l'Accès Universel======
  
-=====Rôle du noyau=====+=====Contenu du Module=====
  
-Le noyau ou //kernel// est la partie du système d'exploitation qui gère les entrées/sorties avec des périphériques. Dans certains cas il est préférable de recompiler le noyau de Linux. La motivation de cette recompilation peut être :+  * **LDF304 - Gestion du Système X et de l'Accès Universel** 
 +    * X Window System 
 +      * Configuration 
 +    * Gestionnaire de Fenêtres 
 +    * Toolkits 
 +    * Freedesktop 
 +    * Display Manager 
 +      * XDM, GDM et KDM 
 +      * LightDM 
 +    * X.orgX11 
 +      * Présentation 
 +      * Démarrage et Arrêt 
 +      * Utilisation 
 +      * Configuration 
 +        * La Section ServerFlags 
 +        * La Section ServerLayout 
 +        * La Section Files 
 +        * La Section Modules 
 +        * La Section InputDevice 
 +        * La Section Monitor 
 +        * La Section Device 
 +        * La Section Screen 
 +      * La Commande xwininfo 
 +      * La Commande xdpyinfo 
 +    * L'Accès Universel 
 +      * Le Clavier et la Souris 
 +      * Claviers Visuels 
 +      * L'Ecran 
 +      * Autres Technologies
  
-  * la diminution de la taille du noyau, +=====X Window System=====
-  * la prise en charge de nouveau matériel, +
-  * l'ajout de fonctionnalités, +
-  * l'optimisation du code, +
-  * la correction de bogues, +
-  * le besoin d'une fonctionnalité expérimentale.+
  
-Commencez par identifier le noyau utilisé par votre machine :+L'architecture graphique de Linux est **X Window System**, aussi appelé **X Window** ou simplement **X**. **X** est responsable de la gestion du **GUI** (//Graphical User Interface//). En autres termes, **X** est responsable de dessiner et gérer les élements tels :
  
-<code> +  * Fenêtres, 
-root@debian8:~# uname -r +  * Boutons, 
-3.16.0-4-amd64 +  * Menus, 
-</code>+  * Curseur de souris, 
 +  * etc.
  
-Dans le cas d'une utilisation courante de Linux, il est cependant préférable de faire appel aux **modules**. Les modules se trouvent dans le répertoire **/lib/modules/<version-du-noyau>** :+**X** est une application client/serveur
  
-<code> +Il existe trois versions de X :
-root@debian8:~# ls /lib/modules/`uname -r`/ +
-kernel    modules.builtin modules.dep.bin  modules.softdep +
-modules.alias    modules.builtin.bin modules.devname  modules.symbols +
-modules.alias.bin  modules.dep modules.order modules.symbols.bin +
-</code>+
  
-Les commandes pour manipuler les modules sont :+  * **[[http://www.xfree86.org|XFree86]]**, 
 +    * un logiciel libre utilisé par la majorité des distributions jusqu'en 2004.  
 +  * **[[http://www.x.org/wiki/|X.orgX11]]**, 
 +    * un logiciel libre utilisé depuis les modifications de la licence de XFree86 en 2004. La version 6.7.0 était basé sur la version 4.3.99 de XFree86. Depuis le développement est indépendant de son prédécesseur. 
 +  * **[[http://www.xig.com|AcceleratedX]]**, 
 +    * un logiciel commercial édité par la société **Xi Graphics** possedant sa propre base de pilotes graphiques.
  
-  * insmod +====Configuration====
-  * rmmod +
-  * lsmod +
-  * modprobe+
  
-Par exemple :+IL existe plusieurs outils pour configurer le serveur X :
  
-<code> +  * **XFree86 configure** est la commande utilisé pour configurer un serveur X basé sur XFree86 4.x. Cette commande produit le fichier **/root/XF86Config.new** qui peut être configuré manuellement. 
-root@debian8:~# lsmod +  * **Xorg configure** est la commande utilisé pour configurer un serveur X basé sur X.orgX11. Cette commande produit le fichier **/root/xorg.conf.new** qui peut être configuré manuellement.
-Module                  Size  Used by +
-cfg80211              405538  0  +
-rfkill                 18867  1 cfg80211 +
-nfsd                  263032  2  +
-auth_rpcgss            51211  1 nfsd +
-oid_registry           12419  1 auth_rpcgss +
-nfs_acl                12511  1 nfsd +
-nfs                   188136  0  +
-lockd                  83389  2 nfs,nfsd +
-fscache                45542  1 nfs +
-sunrpc                237402  6 nfs,nfsd,auth_rpcgss,lockd,nfs_acl +
-crc32_pclmul           12915  0  +
-aesni_intel           151423  0  +
-joydev                 17063  0  +
-aes_x86_64             16719  1 aesni_intel +
-lrw                    12757  1 aesni_intel +
-gf128mul               12970  1 lrw +
-glue_helper            12695  1 aesni_intel +
-i2c_piix4              20864  0  +
-ablk_helper            12572  1 aesni_intel +
-cryptd                 14516  2 aesni_intel,ablk_helper +
-ppdev                  16782  0  +
-i2c_core               46012  1 i2c_piix4 +
-serio_raw              12849  0  +
-evdev                  17445  7  +
-pcspkr                 12595  0  +
-parport_pc             26300  0  +
-snd_intel8x0           34948  0  +
-snd_ac97_codec        118711  1 snd_intel8x0 +
-snd_pcm                88662  2 snd_ac97_codec,snd_intel8x0 +
-snd_timer              26614  1 snd_pcm +
-snd                    65244  4 snd_ac97_codec,snd_intel8x0,snd_timer,snd_pcm +
-ac                     12715  0  +
-soundcore              13026  1 snd +
-video                  18096  0  +
-battery                13356  0  +
-ac97_bus               12510  1 snd_ac97_codec +
-parport                35749  2 ppdev,parport_pc +
-button                 12944  0  +
-processor              28221  0  +
-thermal_sys            27642  2 video,processor +
-fuse                   83350  1  +
-autofs4                35529  2  +
-ext4                  473801  1  +
-crc16                  12343  1 ext4 +
-mbcache                17171  1 ext4 +
-jbd2                   82514  1 ext4 +
-hid_generic            12393  0  +
-usbhid                 44460  0  +
-hid                   102264  2 hid_generic,usbhid +
-sr_mod                 21903  0  +
-cdrom                  47424  1 sr_mod +
-ohci_pci               12808  0  +
-sg                     29973  0  +
-sd_mod                 44356  3  +
-crc_t10dif             12431  1 sd_mod +
-crct10dif_generic      12581  0  +
-ata_generic            12490  0  +
-ohci_hcd               42982  1 ohci_pci +
-ehci_pci               12512  0  +
-ehci_hcd               69837  1 ehci_pci +
-ata_piix               33592  0  +
-e1000                 122545  0  +
-ahci                   33334  2  +
-libahci                27158  1 ahci +
-crct10dif_pclmul       13387  1  +
-crct10dif_common       12356  3 crct10dif_pclmul,crct10dif_generic,crc_t10dif +
-usbcore               195468  5 ohci_hcd,ohci_pci,ehci_hcd,ehci_pci,usbhid +
-usb_common             12440  1 usbcore +
-crc32c_intel           21809  0  +
-libata                177508  4 ahci,libahci,ata_generic,ata_piix +
-scsi_mod              191405  4 sg,libata,sd_mod,sr_mod +
-psmouse                99249  0 +
-</code>+
  
-Pour ajouter un module, on peut utiliser la commande **insmod** ou **modprobe**. Cette dernière ajoute non seulement le module passé en argument mais également ses dépendances :+<WRAP center round important> 
 +**Important** : Ces deux commandes doivent être utilisées quand le serveur X est arrêté. 
 +</WRAP>
  
-<code> +Deux outils qui ne bénéficient plus de support sont **xf86cfg** et **xorgcfg** sont parfois présents dans la distribution et peuvent être utilisés pour configurer le serveur X.
-root@debian8:~# modprobe bonding +
-root@debian8:~# lsmod | more +
-Module                  Size  Used by +
-bonding               124989  0  +
-cfg80211              405538  0  +
-rfkill                 18867  1 cfg80211 +
-nfsd                  263032  2  +
-auth_rpcgss            51211  1 nfsd +
-oid_registry           12419  1 auth_rpcgss +
-nfs_acl                12511  1 nfsd +
-nfs                   188136  0  +
-lockd                  83389  2 nfs,nfsd +
-fscache                45542  1 nfs +
-sunrpc                237402  6 nfs,nfsd,auth_rpcgss,lockd,nfs_acl +
-crc32_pclmul           12915  0  +
-aesni_intel           151423  0  +
-joydev                 17063  0  +
-aes_x86_64             16719  1 aesni_intel +
-lrw                    12757  1 aesni_intel +
-gf128mul               12970  1 lrw +
-glue_helper            12695  1 aesni_intel +
-i2c_piix4              20864  0  +
-ablk_helper            12572  1 aesni_intel +
-cryptd                 14516  2 aesni_intel,ablk_helper +
-ppdev                  16782  0  +
---More-- +
-</code>+
  
-Pour supprimer un module, on peut utiliser la commande **rmmod** ou **modprobe -r**. Cette dernière essaie de supprimer les dépendances non-utilisées :+Dernièrement il existe des outils spécifiques à une distribution :
  
-<code> +  * Red HatCentOSFedora : **system-config-display**.
-root@debian8:~# modprobe -r bonding +
-root@debian8:~# lsmod | more +
-Module                  Size  Used by +
-cfg80211              405538  0  +
-rfkill                 18867  1 cfg80211 +
-nfsd                  263032  2  +
-auth_rpcgss            51211  1 nfsd +
-oid_registry           12419  1 auth_rpcgss +
-nfs_acl                12511  1 nfsd +
-nfs                   188136  0  +
-lockd                  83389  2 nfs,nfsd +
-fscache                45542  1 nfs +
-sunrpc                237402  6 nfs,nfsd,auth_rpcgss,lockd,nfs_acl +
-crc32_pclmul           12915  0  +
-aesni_intel           151423  0  +
-joydev                 17063  0  +
-aes_x86_64             16719  1 aesni_intel +
-lrw                    12757  1 aesni_intel +
-gf128mul               12970  1 lrw +
-glue_helper            12695  1 aesni_intel +
-i2c_piix4              20864  0  +
-ablk_helper            12572  1 aesni_intel +
-cryptd                 14516  2 aesni_intel,ablk_helper +
-ppdev                  16782  0  +
-i2c_core               46012  1 i2c_piix4 +
---More-- +
-</code>+
  
-Les dépendances des modules sont résolues par la commande **modprobe** grâce aux fichier **/lib/modules/<version-du-noyau>/modules.dep**. Ce dernier peut être créé manuellement grâce à la commande **depmod** :+<WRAP center round important> 
 +**Important** : Les outils disponibles pour le serveur XFree86 version 3.3.6 et antérieure était **xf86config****Xconfigurator** ou **XF86Setup**
 +</WRAP>
  
-<code> +Les fichiers de configuration de chaque serveur X sont :
-root@debian8:~# more /lib/modules/`uname -r`/modules.dep +
-kernel/arch/x86/kernel/cpu/mcheck/mce-inject.ko: +
-kernel/arch/x86/kernel/msr.ko: +
-kernel/arch/x86/kernel/cpuid.ko: +
-kernel/arch/x86/kernel/iosf_mbi.ko: +
-kernel/arch/x86/crypto/glue_helper.ko: +
-kernel/arch/x86/crypto/aes-x86_64.ko: +
-kernel/arch/x86/crypto/camellia-x86_64.ko: kernel/crypto/xts.ko kernel/crypto/lr +
-w.ko kernel/crypto/gf128mul.ko kernel/arch/x86/crypto/glue_helper.ko +
-kernel/arch/x86/crypto/blowfish-x86_64.ko: kernel/crypto/blowfish_common.ko +
-kernel/arch/x86/crypto/twofish-x86_64.ko: kernel/crypto/twofish_common.ko +
-kernel/arch/x86/crypto/twofish-x86_64-3way.ko: kernel/arch/x86/crypto/twofish-x8 +
-6_64.ko kernel/crypto/twofish_common.ko kernel/crypto/xts.ko kernel/crypto/lrw.k +
-o kernel/crypto/gf128mul.ko kernel/arch/x86/crypto/glue_helper.ko +
-kernel/arch/x86/crypto/salsa20-x86_64.ko: +
-kernel/arch/x86/crypto/serpent-sse2-x86_64.ko: kernel/crypto/xts.ko kernel/crypt +
-o/serpent_generic.ko kernel/crypto/lrw.ko kernel/crypto/gf128mul.ko kernel/arch/ +
-x86/crypto/glue_helper.ko kernel/crypto/ablk_helper.ko kernel/crypto/cryptd.ko +
-kernel/arch/x86/crypto/aesni-intel.ko: kernel/arch/x86/crypto/aes-x86_64.ko kern +
-el/crypto/lrw.ko kernel/crypto/gf128mul.ko kernel/arch/x86/crypto/glue_helper.ko +
- kernel/crypto/ablk_helper.ko kernel/crypto/cryptd.ko +
-kernel/arch/x86/crypto/ghash-clmulni-intel.ko: kernel/crypto/cryptd.ko +
-kernel/arch/x86/crypto/crc32c-intel.ko: +
-kernel/arch/x86/crypto/sha1-ssse3.ko: +
---More--(0%) +
-</code>+
  
-Il est possible d'obtenir des informations sur un module grâce à la commande **modinfo** :+  * **[[http://www.xfree86.org|XFree86]]** 4.x, 
 +    * **/etc/X11/XF86Config4** ou **/etc/XF86Config4** ou **/etc/X11/XF86Config** ou **/etc/XF86Config**, 
 +  * **[[http://www.xfree86.org|XFree86]]** 3.6.6 et antérieure, 
 +    * **/etc/X11/XF86Config** ou **/etc/XF86Config**, 
 +  * **[[http://www.x.org/wiki/|X.orgX11]]**, 
 +    * **/etc/X11/xorg.conf** ou **/etc/xorg.conf**.
  
-<code> +=====Gestionnaire de Fenêtres=====
-root@debian8:~# modinfo bonding +
-filename:       /lib/modules/3.16.0-4-amd64/kernel/drivers/net/bonding/bonding.ko +
-author:         Thomas Davis, tadavis@lbl.gov and many others +
-description:    Ethernet Channel Bonding Driver, v3.7.1 +
-version:        3.7.1 +
-license:        GPL +
-alias:          rtnl-link-bond +
-srcversion:     6BFE6BB1A9B8C86AEBC9487 +
-depends:         +
-intree:         Y +
-vermagic:       3.16.0-4-amd64 SMP mod_unload modversions  +
-parm:           max_bonds:Max number of bonded devices (int) +
-parm:           tx_queues:Max number of transmit queues (default 16) (int) +
-parm:           num_grat_arp:Number of peer notifications to send on failover event (alias of num_unsol_na) (int) +
-parm:           num_unsol_na:Number of peer notifications to send on failover event (alias of num_grat_arp) (int) +
-parm:           miimon:Link check interval in milliseconds (int) +
-parm:           updelay:Delay before considering link up, in milliseconds (int) +
-parm:           downdelay:Delay before considering link down, in milliseconds (int) +
-parm:           use_carrier:Use netif_carrier_ok (vs MII ioctls) in miimon; 0 for off, 1 for on (default) (int) +
-parm:           mode:Mode of operation; 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp) +
-parm:           primary:Primary network device to use (charp) +
-parm:           primary_reselect:Reselect primary slave once it comes up; 0 for always (default), 1 for only if speed of primary is better, 2 for only on active slave failure (charp) +
-parm:           lacp_rate:LACPDU tx rate to request from 802.3ad partner; 0 for slow, 1 for fast (charp) +
-parm:           ad_select:803.ad aggregation selection logic; 0 for stable (default), 1 for bandwidth, 2 for count (charp) +
-parm:           min_links:Minimum number of available links before turning on carrier (int) +
-parm:           xmit_hash_policy:balance-xor and 802.3ad hashing method; 0 for layer 2 (default), 1 for layer 3+4, 2 for layer 2+3, 3 for encap layer 2+3, 4 for encap layer 3+4 (charp) +
-parm:           arp_interval:arp interval in milliseconds (int) +
-parm:           arp_ip_target:arp targets in n.n.n.n form (array of charp) +
-parm:           arp_validate:validate src/dst of ARP probes; 0 for none (default), 1 for active, 2 for backup, 3 for all (charp) +
-parm:           arp_all_targets:fail on any/all arp targets timeout; 0 for any (default), 1 for all (charp) +
-parm:           fail_over_mac:For active-backup, do not set all slaves to the same MAC; 0 for none (default), 1 for active, 2 for follow (charp) +
-parm:           all_slaves_active:Keep all frames received on an interfaceby setting active flag for all slaves; 0 for never (default), 1 for always. (int) +
-parm:           resend_igmp:Number of IGMP membership reports to send on link failure (int) +
-parm:           packets_per_slave:Packets to send per slave in balance-rr mode; 0 for a random slave, 1 packet per slave (default), >1 packets per slave. (int) +
-parm:           lp_interval:The number of seconds between instances where the bonding driver sends learning packets to each slaves peer switch. The default is 1. (uint) +
-</code>+
  
-Dernièrement, les fichiers dans le repertoire **/etc/modprobe.d** sont utilisés pour spécifier les options éventuelles à passer aux modules lors de leur chargement ainsi que les alias utilisés pour leur faire référence :+**X** ne doit être confondue avec un **Gestionnaire de Fenêtres** (//Window Manager//)Le Gestionnaire de Fenêtres est responsable de la mise en page des élements fournis pas **X**. C'est pour cette raison que sous Linux il existe de nombreux Gestionnaires différents tels :
  
-<code> +  * KDE,  
-root@debian8:~# ls /etc/modprobe.d +  * GNOME,  
-fbdev-blacklist.conf  modesetting.conf+  * twm,  
 +  * IceWM,  
 +  * Rvwm,  
 +  * CDE,  
 +  * WindowMaker,  
 +  * Enlightenment,  
 +  * Xfce, 
 +  * Afterstep 
 +  * Compiz Fusion, 
 +  * Fluxbox, 
 +  * Openbox, 
 +  * Metacity, 
 +  * Blackbox, 
 +  * Ion, 
 +  * Wmii, 
 +  * etc.
  
-root@debian8:~# cat /etc/modprobe.d/fbdev-blacklist.conf  +Les Gestionnaires les plus connus sont :
-# This file blacklists most old-style PCI framebuffer drivers.+
  
-blacklist arkfb +  * **KDE** (//Kool Desktop Environment//) par **Matthias Ettrich** en **1996**, 
-blacklist aty128fb +  * **GNOME** (//Gnu Network Object Model Environment//) par **Miguel de Icaza** et **Federico Mena** en **1997**,
-blacklist atyfb +
-blacklist radeonfb +
-blacklist cirrusfb +
-blacklist cyber2000fb +
-blacklist kyrofb +
-blacklist matroxfb_base +
-blacklist mb862xxfb +
-blacklist neofb +
-blacklist pm2fb +
-blacklist pm3fb +
-blacklist s3fb +
-blacklist savagefb +
-blacklist sisfb +
-blacklist tdfxfb +
-blacklist tridentfb +
-blacklist vt8623fb +
-</code>+
  
-=====Compilation et installation du noyau et des modules=====+=====Toolkits=====
  
-Commencez par installer les paquets necessaires :+Chaque Gestionnaire utilise une bibliothèque graphique contenant des fonctions "toutes faites" pour créer les éléments graphiques. Chaque elément pour le Gestionnaire lui même s'appelle un **Widget** (//**Wi**ndows Ga**dget**//) tandis que élément pour une fenêtre s'appelle simplement un **Gadget**.
  
-<code> +Une bibliothèque complète est appelée un **Widget Toolkit**. Le Toolkit le plus connu est **MOTIF**. Cependant **MOTIF** n'est pas libre. Pour cette raison les développeurs de Linux ont du concevoir des Toolkits ayant une licence libre.
-root@debian8:~# apt-get update+
  
-root@debian8:~# apt-get install build-essential kernel-package debconf-utils dpkg-dev debhelper ncurses-dev fakeroot +Comme dans beaucoup de cas de développement sous Linuxil existe plusieurs Toolkits dont les deux les plus connus sont :
-Reading package lists... Done +
-Building dependency tree        +
-Reading state information... Done +
-Note, selecting 'libncurses5-dev' instead of 'ncurses-dev' +
-The following extra packages will be installed: +
-  autopoint binutils dblatex docbook-dsssl docbook-utils docbook-xsl fonts-lmodern fonts-texgyre g++ g++-4.9 gcc gcc-4.9 gettext intltool-debian jadetex kernel-common +
-  libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan1 libasprintf-dev libatomic1 libc-dev-bin libc6-dev libcilkrts5 libdpkg-perl +
-  libfakeroot libfile-fcntllock-perl libfile-homedir-perl libfile-which-perl libgcc-4.9-dev libgettextpo-dev libgettextpo0 libitm1 liblsan0 libmail-sendmail-perl +
-  libosp5 libostyle1c2 libpoppler-qt4-4 libpotrace0 libptexenc1 libruby2.1 libsgmls-perl libsp1c2 libstdc++-4.9-dev libsynctex1 libsys-hostname-long-perl libtcl8.6 +
-  libtinfo-dev libtk8.6 libtsan0 libubsan0 libunistring0 libxml2-utils libxss1 libyaml-0-2 libyaml-tiny-perl libzzip-0-13 linux-libc-dev lmodern make manpages-dev +
-  openjade po-debconf prerex preview-latex-style prosper ps2eps ruby ruby2.1 rubygems-integration sgmlspl sp tcl tcl8.6 tex-common tex-gyre texlive texlive-base +
-  texlive-bibtex-extra texlive-binaries texlive-extra-utils texlive-font-utils texlive-fonts-recommended texlive-fonts-recommended-doc texlive-generic-recommended +
-  texlive-latex-base texlive-latex-base-doc texlive-latex-extra texlive-latex-extra-doc texlive-latex-recommended texlive-latex-recommended-doc texlive-math-extra +
-  texlive-pictures texlive-pictures-doc texlive-pstricks texlive-pstricks-doc tipa tk tk8.6 vprerex xmlto xsltproc zip +
-Suggested packages: +
-  binutils-doc docbook graphicsmagick-imagemagick-compat imagemagick latex-cjk-all opensp texlive-lang-all texlive-lang-cyrillic texlive-xetex transfig dh-make +
-  docbook-dsssl-doc dbtoepub docbook-xsl-doc-html docbook-xsl-doc-pdf docbook-xsl-doc-text docbook-xsl-doc docbook-xsl-saxon fop libsaxon-java libxalan2-java +
-  libxslthl-java xalan debian-keyring g++-multilib g++-4.9-multilib gcc-4.9-doc libstdc++6-4.9-dbg gcc-multilib autoconf automake libtool flex bison gdb gcc-doc +
-  gcc-4.9-multilib gcc-4.9-locales libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan1-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg +
-  libquadmath0-dbg gettext-doc linux-source libncurses-dev glibc-doc ncurses-doc sgmls-doc libstdc++-4.9-doc make-doc doc-base libmail-box-perl ri ruby-dev bundler +
-  tcl-tclreadline perl-tk latexdiff latexmk dvidvi fragmaster lacheck purifyeps xindy chktex dvipng psutils t1utils libtcltk-ruby dot2tex xmltex +
-Recommended packages: +
-  uboot-mkimage wish +
-The following NEW packages will be installed: +
-  autopoint binutils build-essential dblatex debconf-utils debhelper docbook-dsssl docbook-utils docbook-xsl dpkg-dev fakeroot fonts-lmodern fonts-texgyre g++ g++-4.9 +
-  gcc gcc-4.9 gettext intltool-debian jadetex kernel-common kernel-package libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan1 +
-  libasprintf-dev libatomic1 libc-dev-bin libc6-dev libcilkrts5 libdpkg-perl libfakeroot libfile-fcntllock-perl libfile-homedir-perl libfile-which-perl libgcc-4.9-dev +
-  libgettextpo-dev libgettextpo0 libitm1 liblsan0 libmail-sendmail-perl libncurses5-dev libosp5 libostyle1c2 libpoppler-qt4-4 libpotrace0 libptexenc1 libruby2.1 +
-  libsgmls-perl libsp1c2 libstdc++-4.9-dev libsynctex1 libsys-hostname-long-perl libtcl8.6 libtinfo-dev libtk8.6 libtsan0 libubsan0 libunistring0 libxml2-utils +
-  libxss1 libyaml-0-2 libyaml-tiny-perl libzzip-0-13 linux-libc-dev lmodern make manpages-dev openjade po-debconf prerex preview-latex-style prosper ps2eps ruby +
-  ruby2.1 rubygems-integration sgmlspl sp tcl tcl8.6 tex-common tex-gyre texlive texlive-base texlive-bibtex-extra texlive-binaries texlive-extra-utils +
-  texlive-font-utils texlive-fonts-recommended texlive-fonts-recommended-doc texlive-generic-recommended texlive-latex-base texlive-latex-base-doc texlive-latex-extra +
-  texlive-latex-extra-doc texlive-latex-recommended texlive-latex-recommended-doc texlive-math-extra texlive-pictures texlive-pictures-doc texlive-pstricks +
-  texlive-pstricks-doc tipa tk tk8.6 vprerex xmlto xsltproc zip +
-0 upgraded, 111 newly installed, 0 to remove and 0 not upgraded. +
-Need to get 793 MB of archives. +
-After this operation, 1,343 MB of additional disk space will be used. +
-Do you want to continue? [Y/n] Y +
-... +
-root@debian8:~# apt-get upgrade +
-</code>+
  
-<WRAP center round alert> +  * **GTK** (//GIMP Toolkit//), programé en langage C et embarqué par défaut dans le Gestionnaire de Fenêtres **Gnome**, 
-**Important** - Il n'est pas conseillé de compiler en tant que root pour des raisons de sécurité. Pour pouvoir utiliser le compte d'un utilisateur pour créer un nouveau noyau, celui-ci doit disposer de plusieurs Go d'espace libre. +  * **QT** (//Cute//), programé en langage C++ et embarqué par défaut dans le Gestionnaire de Fenêtres **KDE**.
-</WRAP>+
  
-Ajoutez l'utilisateur **trainee** au groupe **src** :+=====Freedesktop=====
  
-<code> +Afin d'assurer la possibilité d'utiliser une application développée avec GTK sur un système fonctionnant sous QT et vice-versa, les développeurs de GNOME et KDE ont créé ensemble le projet **Freedesktop**. Les développements issus de ce projet sont intégrés dans les deux Gestionnaires.
-root@debian8:~# cat /etc/group | grep src +
-src:x:40: +
-root@debian8:~# gpasswd -a trainee src +
-Adding user trainee to group src +
-root@debian8:~# cat /etc/group | grep src +
-src:x:40:trainee +
-</code>+
  
-====Déplacer /home====+=====Display Manager=====
  
-<WRAP center round todo> +Le **Display Manager** est chargé de gérer les connexions locales et à distance, les authentifications et les ouvertures de sessionsDe ce fait, Le Display Manager est l'équivalent des services console **init****getty** et **login** réunis.
-**A Faire** - Arrêtez votre machine virtuelle. Ajoutez un deuxième disque de 20 Go au contrôleur SATA en utilisant la section **Stockage** des paramètres de la machine virtuelle. Le format du disque doit être **vmdk**. Nommez ce disque **DebianHome** et re-démarrez la machine virtuelle. +
-</WRAP>+
  
-Créez une seule partition sur **/dev/sdb** :+Pour les connexions à distance le Display Manager utilise le protocole **XDMCP** (//X Display Manager Control Panel//)). Le fichier de configuration de XDMCP est **/etc/X11/xdm/xdmconfig**.
  
-<code> +====XDM, GDM et KDM====
-root@debian8:~# fdisk /dev/sdb+
  
-Welcome to fdisk (util-linux 2.25.2). +Le Display Manager par défautcompatible avec tous les serveurs **X**, est **XDM**Les deux autres Display Managers les plus connus sont :
-Changes will remain in memory onlyuntil you decide to write them. +
-Be careful before using the write command.+
  
-Device does not contain a recognized partition table. +  * **GDM** pour GNOME, 
-Created a new DOS disklabel with disk identifier 0x5b6171fe.+  * **KDM** pour KDE, 
 +  * **LightDM** de Canonical.
  
-Command (m for help): n +Les deux premiers sont essentiellement des XDM avec des fonctionnalités supplémentaires telles :
-Partition type +
-     primary (0 primary, 0 extended, 4 free) +
-     extended (container for logical partitions) +
-Select (default p): p +
-Partition number (1-4, default 1):  +
-First sector (2048-41943039, default 2048):  +
-Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039)+
  
-Created a new partition 1 of type 'Linuxand of size 20 GiB.+  * le passage d'un utilisateur à un autre, 
 +  * la liste des utilisateurs, 
 +  * le choix d'un gestionnaire de fenêtres, 
 +  * la possibilité d'une autoconnexion, 
 +  * la liste des serveurs **X** distants, 
 +  * etc.
  
-Command (m for help): w +====LightDM====
-The partition table has been altered. +
-Calling ioctl() to re-read partition table. +
-Syncing disks. +
-</code>+
  
-Créez maintenant un système de fichiers ext4 sur **/dev/sdb1** :+LightDM est un gestionnaire d'affichage conçu pour être une alternative relativement légère et très personnalisable à GDM par Robert Ancell, de Canonical. LightDM possède les caractéristiques suivantes : 
 + 
 +  Pas de dépendances de Gnome 
 +  Utilisation de webkit pour le rendu des thèmes 
 +  * Support de Toolkits Gtk et Qt 
 + 
 +Le fichier de configuration de LightDM est **/etc/lightdm/lightdm.conf** :
  
 <code> <code>
-root@debian8:~# mkfs.ext4 /dev/sdb1 +root@debian8:~# cat /etc/lightdm/lightdm.conf 
-mke2fs 1.42.12 (29-Aug-2014) +
-Creating filesystem with 5242624 4k blocks and 1310720 inodes +# General configuration 
-Filesystem UUID: 6e4ea901-a36d-4b3f-bbbf-eeea866fca40 +
-Superblock backups stored on blocks:  +# start-default-seat = True to always start one seat if none are defined in the configuration 
- 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,  +# greeter-user = User to run greeter as 
- 4096000+# minimum-display-number = Minimum display number to use for X servers 
 +# minimum-vt = First VT to run displays on 
 +# lock-memory = True to prevent memory from being paged to disk 
 +# user-authority-in-system-dir = True if session authority should be in the system location 
 +# guest-account-script = Script to be run to setup guest account 
 +# logind-load-seats = True to automatically set up multi-seat configuration from logind 
 +# logind-check-graphical = True to on start seats that are marked as graphical by logind 
 +# log-directory = Directory to log information to 
 +# run-directory = Directory to put running state in 
 +# cache-directory = Directory to cache to 
 +# sessions-directory = Directory to find sessions 
 +# remote-sessions-directory = Directory to find remote sessions 
 +# greeters-directory = Directory to find greeters 
 +
 +[LightDM] 
 +#start-default-seat=true 
 +#greeter-user=lightdm 
 +#minimum-display-number=0 
 +#minimum-vt=7 
 +#lock-memory=true 
 +#user-authority-in-system-dir=false 
 +#guest-account-script=guest-account 
 +#logind-load-seats=false 
 +#logind-check-graphical=false 
 +#log-directory=/var/log/lightdm 
 +#run-directory=/var/run/lightdm 
 +#cache-directory=/var/cache/lightdm 
 +#sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions 
 +#remote-sessions-directory=/usr/share/lightdm/remote-sessions 
 +#greeters-directory=/usr/share/lightdm/greeters:/usr/share/xgreeters
  
-Allocating group tables: done                             +# 
-Writing inode tables: done                             +# Seat defaults 
-Creating journal (32768 blocks): done +
-Writing superblocks and filesystem accounting information: done  +# type = Seat type (xlocal, xremote
-</code>+# xdg-seat = Seat name to set pam_systemd XDG_SEAT variable and name to pass to X server 
 +# pam-service = PAM service to use for login 
 +# pam-autologin-service = PAM service to use for autologin 
 +# pam-greeter-service = PAM service to use for greeters 
 +# xserver-command = X server command to run (can also contain arguments e.g. X -special-option) 
 +# xserver-layout = Layout to pass to X server 
 +# xserver-config = Config file to pass to X server 
 +# xserver-allow-tcp = True if TCP/IP connections are allowed to this X server 
 +# xserver-share = True if the X server is shared for both greeter and session 
 +# xserver-hostname = Hostname of X server (only for type=xremote) 
 +# xserver-display-number = Display number of X server (only for type=xremote) 
 +# xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true) 
 +# xdmcp-port = XDMCP UDP/IP port to communicate on 
 +# xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf) 
 +# unity-compositor-command = Unity compositor command to run (can also contain arguments e.g. unity-system-compositor -special-option) 
 +# unity-compositor-timeout = Number of seconds to wait for compositor to start 
 +# greeter-session = Session to load for greeter 
 +# greeter-hide-users = True to hide the user list 
 +# greeter-allow-guest = True if the greeter should show a guest login option 
 +# greeter-show-manual-login = True if the greeter should offer a manual login option 
 +# greeter-show-remote-login = True if the greeter should offer a remote login option 
 +# user-session = Session to load for users 
 +# allow-user-switching = True if allowed to switch users 
 +# allow-guest = True if guest login is allowed 
 +# guest-session = Session to load for guests (overrides user-session) 
 +# session-wrapper = Wrapper script to run session with 
 +# greeter-wrapper = Wrapper script to run greeter with 
 +# guest-wrapper = Wrapper script to run guest sessions with 
 +# display-setup-script = Script to run when starting a greeter session (runs as root) 
 +# display-stopped-script = Script to run after stopping the display server (runs as root) 
 +# greeter-setup-script = Script to run when starting a greeter (runs as root) 
 +# session-setup-script = Script to run when starting a user session (runs as root) 
 +# session-cleanup-script = Script to run when quitting a user session (runs as root) 
 +# autologin-guest = True to log in as guest by default 
 +# autologin-user = User to log in with by default (overrides autologin-guest) 
 +# autologin-user-timeout = Number of seconds to wait before loading default user 
 +# autologin-session = Session to load for automatic login (overrides user-session) 
 +# autologin-in-background = True if autologin session should not be immediately activated 
 +# exit-on-failure = True if the daemon should exit if this seat fails 
 +
 +[SeatDefaults] 
 +#type=xlocal 
 +#xdg-seat=seat0 
 +#pam-service=lightdm 
 +#pam-autologin-service=lightdm-autologin 
 +#pam-greeter-service=lightdm-greeter 
 +#xserver-command=X 
 +#xserver-layout= 
 +#xserver-config= 
 +#xserver-allow-tcp=false 
 +#xserver-share=true 
 +#xserver-hostname= 
 +#xserver-display-number= 
 +#xdmcp-manager= 
 +#xdmcp-port=177 
 +#xdmcp-key= 
 +#unity-compositor-command=unity-system-compositor 
 +#unity-compositor-timeout=60 
 +#greeter-session=example-gtk-gnome 
 +#greeter-hide-users=false 
 +#greeter-allow-guest=true 
 +#greeter-show-manual-login=false 
 +#greeter-show-remote-login=true 
 +#user-session=default 
 +#allow-user-switching=true 
 +#allow-guest=true 
 +#guest-session= 
 +#session-wrapper=lightdm-session 
 +#greeter-wrapper= 
 +#guest-wrapper= 
 +#display-setup-script= 
 +#display-stopped-script= 
 +#greeter-setup-script= 
 +#session-setup-script= 
 +#session-cleanup-script= 
 +#autologin-guest=false 
 +#autologin-user= 
 +#autologin-user-timeout=0 
 +#autologin-in-background=false 
 +#autologin-session=UNIMPLEMENTED 
 +#exit-on-failure=false
  
-<WRAP center round todo> +# 
-**A Faire** - Déconnectez-vous en sshConnectez-vous directement en tant que root dans la fenetre de VirtualBox+# Seat configuration 
-</WRAP>+
 +# Each seat must start with "Seat:". 
 +# Uses settings from [SeatDefaults], any of these can be overriden by setting them in this section
 +
 +#[Seat:0]
  
-Montez **/dev/sdb1** sur /mnt :+
 +# XDMCP Server configuration 
 +
 +# enabled = True if XDMCP connections should be allowed 
 +# port = UDP/IP port to listen for connections on 
 +# key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf) 
 +
 +# The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn.  Alternatively 
 +# it can be a word and the first 7 characters are used as the key. 
 +
 +[XDMCPServer] 
 +#enabled=false 
 +#port=177 
 +#key=
  
-<code> +# 
-root@debian8:~mount /dev/sdb1 /mnt+VNC Server configuration 
 +
 +# enabled = True if VNC connections should be allowed 
 +# command = Command to run Xvnc server with 
 +# port = TCP/IP port to listen for connections on 
 +# width = Width of display to use 
 +# height = Height of display to use 
 +# depth = Color depth of display to use 
 +
 +[VNCServer] 
 +#enabled=false 
 +#command=Xvnc 
 +#port=5900 
 +#width=1024 
 +#height=768 
 +#depth=8
 </code> </code>
  
-Copiez le contenu de /home vers /mnt :+La configuration de l'écran d'accueil GTK de LightDM se trouve dans le fichier **/etc/lightdm/lightdm-gtk-greeter.conf** :
  
 <code> <code>
-root@debian8:~# cp -a /home//mnt+root@debian8:~# cat /etc/lightdm/lightdm-gtk-greeter.conf 
 +
 +# background = Background file to use, either an image path or color (e.g. #772953) 
 +# theme-name = GTK+ theme to use 
 +# icon-theme-name = Icon theme to use 
 +# font-name = Font to use 
 +# xft-antialias = Whether to antialias Xft fonts (true or false) 
 +# xft-dpi = Resolution for Xft in dots per inch (e.g. 96) 
 +# xft-hintstyle = What degree of hinting to use (none, slight, medium, or hintfull) 
 +# xft-rgba = Type of subpixel antialiasing (none, rgb, bgr, vrgb or vbgr) 
 +# show-indicators = semi-colon ";" separated list of allowed indicator modules. Built-in indicators include "~a11y", "~language", "~session", "~power". Unity indicators can be represented by short name (e.g. "sound", "power"), service file name, or absolute path 
 +# show-clock (true or false) 
 +# clock-format = strftime-format string, e.g. %H:%M 
 +# keyboard = command to launch on-screen keyboard 
 +# position = main window position: x y 
 +# default-user-image = Image used as default user icon, path or #icon-name 
 +# screensaver-timeout = Timeout (in seconds) until the screen blanks when the greeter is called as lockscreen 
 +#  
 +[greeter] 
 +background=/usr/share/images/desktop-base/login-background.svg 
 +theme-name=Adwaita 
 +#icon-theme-name= 
 +#font-name= 
 +xft-antialias=true 
 +#xft-dpi= 
 +xft-hintstyle=hintfull 
 +xft-rgba=rgb 
 +show-indicators=~language;~session;~power 
 +#show-clock= 
 +#clock-format= 
 +#keyboard= 
 +#position= 
 +#screensaver-timeout=
 </code> </code>
  
-Démontez /dev/sdb1 et déplacez /home vers /root :+Notez que l'image de l'arrière plan est **/usr/share/images/desktop-base/desktop-background**. En réalité, ce fichier est un lien symbolique :
  
 <code> <code>
-root@debian8:~# umount /mnt +root@debian8:~# ls -l /usr/share/images/desktop-base/desktop-background 
-root@debian8:~# mv /home /root +lrwxrwxrwx 1 root root 36 Oct 23 16:36 /usr/share/images/desktop-base/desktop-background -/etc/alternatives/desktop-background
-</code>+
  
-Identifiez l'UUID de /dev/sdb1 : +root@debian8:~# ls -l /etc/alternatives/desktop-background 
- +lrwxrwxrwx 1 root root 60 Oct 23 16:34 /etc/alternatives/desktop-background -> /usr/share/images/desktop-base/lines-wallpaper_1920x1080.svg
-<code> +
-root@debian8:~# ls -l /dev/disk/by-uuid/ | grep sdb1 +
-lrwxrwxrwx 1 root root 10 Aug 13 12:26 6e4ea901-a36d-4b3f-bbbf-eeea866fca40 -> ../../sdb1+
 </code> </code>
  
-Editez le fichier **/etc/fstab** en ajoutant la ligne pour le montage de /home :+=====X.orgX11=====
  
-<file txt /etc/fstab> +====Présentation====
-# /etc/fstab: static file system information. +
-+
-# Use 'blkid' to print the universally unique identifier for a +
-# device; this may be used with UUIDas a more robust way to name devices +
-# that works even if disks are added and removed. See fstab(5). +
-+
-# <file system> <mount point>   <type>  <options>       <dump>  <pass> +
-# / was on /dev/sda1 during installation +
-UUID=4a230056-285f-42f4-bfe0-5a73dbc5b745 /               ext4    errors=remount-ro 0       1 +
-# swap was on /dev/sda5 during installation +
-UUID=da5a77e9-344d-42aa-aed6-a38d381ba436 none            swap    sw              0       0 +
-UUID=6e4ea901-a36d-4b3f-bbbf-eeea866fca40 /home   ext4   defaults 0 0 +
-/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto           0 +
-</file>+
  
-Créez le point de montage /home :+L'exécutable X.orgX11 se trouve dans **/usr/bin** :
  
 <code> <code>
-root@debian8:~# mkdir /home+root@debian8:~# whereis Xorg 
 +Xorg: /usr/bin/Xorg /usr/share/man/man1/Xorg.1.gz
 </code> </code>
  
-Montez /dev/sdb1 :+Les modules de **X.orgX11** sont installés par défaut dans **/usr/lib/xorg/** ou dans **/usr/lib64/xorg/** :
  
 <code> <code>
-root@debian8:~# mount -+root@debian8:~# ls -lR /usr/lib/xorg 
-root@debian8:~# mount +/usr/lib/xorg: 
-sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) +total 36 
-proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) +drwxr-xr-x 6 root root  4096 Oct 23 16:35 modules 
-udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=61148,mode=755) +-rw-r--r-- 1 root root 31614 Feb 11  2015 protocol.txt
-devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) +
-tmpfs on /run type tmpfs (rw,nosuid,relatime,size=101232k,mode=755) +
-/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered) +
-securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) +
-tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) +
-tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k) +
-tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755) +
-cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd) +
-pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime) +
-cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset) +
-cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct) +
-cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices) +
-cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer) +
-cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio) +
-cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio) +
-cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event) +
-systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct) +
-debugfs on /sys/kernel/debug type debugfs (rw,relatime) +
-mqueue on /dev/mqueue type mqueue (rw,relatime) +
-hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime) +
-fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime) +
-rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw,relatime) +
-tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=50616k,mode=700) +
-tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=50616k,mode=700,uid=1000,gid=1000) +
-/dev/sdb1 on /home type ext4 (rw,relatime,data=ordered) +
-</code>+
  
-Notez la taille de /home :+/usr/lib/xorg/modules: 
 +total 1072 
 +drwxr-xr-x 2 root root   4096 Nov  2 13:58 drivers 
 +drwxr-xr-x 2 root root   4096 Oct 23 16:35 extensions 
 +drwxr-xr-x 2 root root   4096 Oct 23 16:35 input 
 +-rw-r--r-- 1 root root 104144 Feb 11  2015 libexa.so 
 +-rw-r--r-- 1 root root  17920 Feb 11  2015 libfbdevhw.so 
 +-rw-r--r-- 1 root root 153600 Feb 11  2015 libfb.so 
 +-rw-r--r-- 1 root root 305920 Feb 11  2015 libglamoregl.so 
 +-rw-r--r-- 1 root root 175932 Feb 11  2015 libint10.so 
 +-rw-r--r-- 1 root root   5568 Feb 11  2015 libshadowfb.so 
 +-rw-r--r-- 1 root root  34272 Feb 11  2015 libshadow.so 
 +-rw-r--r-- 1 root root  26192 Feb 11  2015 libvbe.so 
 +-rw-r--r-- 1 root root  31036 Feb 11  2015 libvgahw.so 
 +-rw-r--r-- 1 root root 206848 Feb 11  2015 libwfb.so 
 +drwxr-xr-x 2 root root   4096 Oct 23 16:35 multimedia
  
-<code> +/usr/lib/xorg/modules/drivers: 
-root@debian8:~# df -h +total 4336 
-Filesystem      Size  Used Avail Use% Mounted on +-rw-r--r-- 1 root root    5600 Oct  5  2014 ati_drv.so 
-/dev/sda1       9.5G  5.7G  3.4G  63% / +-rw-r--r-- 1 root root   31144 Jul  8  2014 cirrus_alpine.so 
-udev             10M       10M   0% /dev +-rw-r--r-- 1 root root   14572 Jul  8  2014 cirrus_drv.so 
-tmpfs            99M  4.8M   95M   5% /run +-rw-r--r-- 1 root root   25800 Jul  8  2014 cirrus_laguna.so 
-tmpfs           248M      248M   0% /dev/shm +-rw-r--r-- 1 root root   19232 Jul  8  2014 fbdev_drv.so 
-tmpfs           5.0M  4.0K  5.0M   1% /run/lock +-rw-r--r-- 1 root root  260104 Jan 17  2015 geode_drv.so 
-tmpfs           248M      248M   0% /sys/fs/cgroup +-rw-r--r-- 1 root root 1513528 Jul  8  2014 intel_drv.so 
-tmpfs            50M       50M   0% /run/user/0 +-rw-r--r-- 1 root root  187008 Oct  7  2014 mach64_drv.so 
-tmpfs            50M       50M   0% /run/user/1000 +-rw-r--r-- 1 root root  144956 Jul  8  2014 mga_drv.so 
-/dev/sdb1        20G   46M   19G   1% /home +-rw-r--r-- 1 root root   41108 Jul 13 11:28 modesetting_drv.so 
-</code>+-rw-r--r-- 1 root root   65404 Jul  8  2014 neomagic_drv.so 
 +-rw-r--r-- 1 root root  225736 Sep  6  2014 nouveau_drv.so 
 +-rw-r--r-- 1 root root  370860 Jul  8  2014 openchrome_drv.so 
 +-rw-r--r-- 1 root root  184012 Jul  8  2014 qxl_drv.so 
 +-rw-r--r-- 1 root root  107708 Jul  8  2014 r128_drv.so 
 +-rw-r--r-- 1 root root  432540 Oct   2014 radeon_drv.so 
 +-rw-r--r-- root root  141612 Jul  8  2014 savage_drv.so 
 +-rw-r--r-- 1 root root  114232 Jul  8  2014 siliconmotion_drv.so 
 +-rw-r--r-- 1 root root   80956 Jul  8  2014 sisusb_drv.so 
 +-rw-r--r-- 1 root root   65736 Jul  8  2014 tdfx_drv.so 
 +-rw-r--r-- 1 root root  135256 Jul  8  2014 trident_drv.so 
 +lrwxrwxrwx 1 root root      63 Nov  2 13:58 vboxvideo_drv.so -> /usr/lib/i386-linux-gnu/VBoxGuestAdditions/vboxvideo_drv_116.so 
 +-rw-r--r-- 1 root root   25008 Jul  8  2014 vesa_drv.so 
 +-rw-r--r-- root root  164920 Mar 14  2015 vmware_drv.so 
 +-rw-r--r-- 1 root root   26868 Jan 17  2015 ztv_drv.so
  
-<WRAP center round todo> +/usr/lib/xorg/modules/extensions: 
-**A Faire** Fermez la session de root et connectez-vous en tant que trainee en ssh. +total 308 
-</WRAP>+-rw-r--r-- 1 root root 311452 Feb 11  2015 libglx.so
  
-====Télécharger le Code Source du Noyau====+/usr/lib/xorg/modules/input: 
 +total 312 
 +-rw-r--r-- 1 root root  63976 Aug 28  2014 evdev_drv.so 
 +-rw-r--r-- 1 root root  48812 Oct 26  2014 mouse_drv.so 
 +-rw-r--r-- 1 root root  72636 Sep 18  2014 synaptics_drv.so 
 +-rw-r--r-- 1 root root  12976 Jul  8  2014 vmmouse_drv.so 
 +-rw-r--r-- 1 root root 111240 Oct  4  2014 wacom_drv.so
  
-Le code source est disponible sur le site **www.kernel.org** : +/usr/lib/xorg/modules/multimedia: 
- +total 88 
-<code> +-rw-r--r-- 1 root root 13760 Feb 11  2015 bt829_drv.so 
-trainee@debian8:~$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.0.tar.xz +-rw-r--r-- 1 root root 13760 Feb 11  2015 fi1236_drv.so 
---2016-08-13 12:37:52--  https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.0.tar.xz +-rw-r--r-- 1 root root 13760 Feb 11  2015 msp3430_drv.so 
-Resolving www.kernel.org (www.kernel.org)... 198.145.20.140, 199.204.44.194, 149.20.4.69, ... +-rw-r--r-- 1 root root  5568 Feb 11  2015 tda8425_drv.so 
-Connecting to www.kernel.org (www.kernel.org)|198.145.20.140|:443... connected. +-rw-r--r-- 1 root root  9664 Feb 11  2015 tda9850_drv.so 
-HTTP request sent, awaiting response... 404 Not Found +-rw-r--r-- root root  5568 Feb 11  2015 tda9885_drv.so 
-2016-08-13 12:37:53 ERROR 404: Not Found. +-rw-r--r-- 1 root root  9664 Feb 11  2015 uda1380_drv.so
- +
-trainee@debian8:~$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.1.tar.xz +
---2016-08-13 12:39:37--  https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.1.tar.xz +
-Resolving www.kernel.org (www.kernel.org)... 198.145.20.140, 199.204.44.194, 149.20.4.69, ... +
-Connecting to www.kernel.org (www.kernel.org)|198.145.20.140|:443... connected. +
-HTTP request sent, awaiting response... 200 OK +
-Length: 80487456 (77M) [application/x-xz] +
-Saving to: ‘linux-3.16.1.tar.xz’ +
- +
-linux-3.16.1.tar.xz                       100%[=======================================================================================> 76.76M  2.51MB/  in 37s     +
- +
-2016-08-13 12:40:15 (2.08 MB/s) ‘linux-3.16.1.tar.xz’ saved [80487456/80487456]+
 </code> </code>
  
-Désarchivez le tar.xz que vous avez téléchargé :+Sous Debian 8 les paquets X.orgX11 installés peuvent être trouvés en utilisant la commande suivante :
  
 <code> <code>
-trainee@debian8:~$ tar xvJf linux-3.16.1.tar.xz+root@debian8:~# dpkg --get-selections | grep xorg 
 +xorg install 
 +xorg-docs-core install 
 +xserver-xorg install 
 +xserver-xorg-core install 
 +xserver-xorg-input-all install 
 +xserver-xorg-input-evdev install 
 +xserver-xorg-input-mouse install 
 +xserver-xorg-input-synaptics install 
 +xserver-xorg-input-vmmouse install 
 +xserver-xorg-input-wacom install 
 +xserver-xorg-video-all install 
 +xserver-xorg-video-ati install 
 +xserver-xorg-video-cirrus install 
 +xserver-xorg-video-fbdev install 
 +xserver-xorg-video-geode install 
 +xserver-xorg-video-intel install 
 +xserver-xorg-video-mach64 install 
 +xserver-xorg-video-mga install 
 +xserver-xorg-video-modesetting install 
 +xserver-xorg-video-neomagic install 
 +xserver-xorg-video-nouveau install 
 +xserver-xorg-video-openchrome install 
 +xserver-xorg-video-qxl install 
 +xserver-xorg-video-r128 install 
 +xserver-xorg-video-radeon install 
 +xserver-xorg-video-savage install 
 +xserver-xorg-video-siliconmotion install 
 +xserver-xorg-video-sisusb install 
 +xserver-xorg-video-tdfx install 
 +xserver-xorg-video-trident install 
 +xserver-xorg-video-vesa install 
 +xserver-xorg-video-vmware install
 </code> </code>
  
-Notez que l'occupation disque du code source du noyau 3.16.1 es de 634 Mo :+====Démarrage et Arrêt====
  
-<code> +Les distributions RHEL ont historiquement utilisés les niveaux d'exécution pour démarrer et arrêter le serveur XLes distributions Debian n'utilisaient pas le système de niveaux d'exécution. Dans ce cas, le serveur X est arrêté avec le script **/etc/init.d/xdm** ( ou kdm ou gdm3 selon le cas ) en passant l'option **stop** et démarrer avec l'option **start**.
-trainee@debian8:~$ du -hs ./linux-3.16.1 +
-634M ./linux-3.16.1 +
-</code>+
  
-====Configurer le Noyau====+====Utilisation====
  
-Le fichier **Makefile** contient le nom du noyau et spécifie les informations suivantes :+Pour interagir avec et contrôler X.orgX11, un utilisateur dispose de plusieurs raccourcis claviers :
  
-  * VERSION, +^ Raccourci  ^ Action ^ 
-  * PATCHLEVEL, +| <key>Ctrl</key>-<key>Alt</key>-<key>Retour arrière</key> | La session X est terminée et la boîte de connexion est affichée. | 
-  * SUBLEVEL, +| <key>Ctrl</key>-<key>Alt</key>-<key>Plus</key> | La résolution suivante dans la liste des celles admises est utilisée. | 
-  * EXTRAVERSION.+| <key>Ctrl</key>-<key>Alt</key>-<key>Moins</key> | La résolution précédente dans la liste des celles admises est utilisée|
  
-Les trois premières informations sont gérées par **kernel.org** et Linus Torvalds en personne tandis que l'EXTRAVERSION est gérée par Debian :+====Configuration====
  
-<code+<WRAP center round important
-trainee@debian8:~$ cat ./linux-3.16.1/Makefile | more +**Important** Notez que X.orgX11 s'auto-configureIl est rarement nécessaire de configurer X.orgX11 manuellement. Par contre il est toujours possible de créer le fichier **/etc/X11/xorg.conf** dans le cas où l'auto-configuration ne donne pas de résultats satisfaisants. 
-VERSION = 3 +</WRAP>
-PATCHLEVEL = 16 +
-SUBLEVEL = 1 +
-EXTRAVERSION = +
-NAME = Museum of Fishiegoodies+
  
-*DOCUMENTATION* +Un fichier de configuration **/etc/X11/xorg.conf** prend la forme suivante :
-# To see a list of typical targets execute "make help" +
-# More info can be located in ./README +
-# Comments in this file are targeted only to the developer, do not +
-# expect to learn how to build the kernel reading this file.+
  
-# Do not: +<file> 
-# o  use make's built-in rules and variables +Section "Monitor" 
-   (this increases performance and avoids hard-to-debug behaviour); +  Identifier   "Monitor[0]" 
-# o  print "Entering directory ..."; +  ModelName    "VirtualBox Virtual Output" 
-MAKEFLAGS += -rR --no-print-directory+  VendorName   "Oracle Corporation
 +EndSection
  
-# Avoid funny character set dependencies +Section "Device" 
-unexport LC_ALL +  BoardName    "VirtualBox Graphics" 
-LC_COLLATE=C +  Driver       "vboxvideo" 
-LC_NUMERIC=C +  Identifier   "Device[0]" 
-export LC_COLLATE LC_NUMERIC+  VendorName   "Oracle Corporation" 
 +EndSection
  
-# Avoid interference with shell env settings +Section "Screen" 
-unexport GREP_OPTIONS+  SubSection "Display" 
 +    Depth      24 
 +  EndSubSection 
 +  Device       "Device[0]" 
 +  Identifier   "Screen[0]" 
 +  Monitor      "Monitor[0]" 
 +EndSection 
 +</file>
  
-# We are using a recursive build, so we need to do a little thinking +Des applications tierces peuvent déposer des fichiers de configuration qui leur sont propres dans le répertoire **/usr/share/X11/xorg.conf.d/** : 
-# to get the ordering right+ 
-# +<code> 
-# Most importantly: sub-Makefiles should only ever modify files in +root@debian8:~ls -l /usr/share/X11/xorg.conf.d/ 
-their own directoryIf in some directory we have a dependency on +total 20 
-# a file in another dir (which doesn't happen often, but it's often +-rw-r--r-- 1 root root 1099 Feb 11  2015 10-evdev.conf 
-# unavoidable when linking the built-in.o targets which finally +-rw-r--r-- 1 root root 1350 Feb 11  2015 10-quirks.conf 
-# turn into vmlinux), we will call a sub make in that other dir, and +-rw-r--r-- 1 root root 1753 Sep 18  2014 50-synaptics.conf 
-# after that we are sure that everything which is in that other dir +-rw-r--r-- 1 root root  115 Jul  8  2014 50-vmmouse.conf 
-# is now up to date. +-rw-r--r-- 1 root root 1385 Oct  4  2014 50-wacom.conf
-+
-# The only cases where we need to modify files which have global +
---More--+
 </code> </code>
  
 <WRAP center round important> <WRAP center round important>
-**Important** - La version 2.6 du noyau a vu le jour en **2003**. Les **SUBLEVEL** se suivaient régulièrementAvec la version 2.6 du noyau, la valeur paire du **PATCHLEVEL** indiquait que le noyau était stable. Quand vous recompilez le noyau à partir des sources, vous devez modifier la valeur de l'EXTRAVERSION.  Le passage à la version 3.0 fut décidé par Linus Torvalds à l'occasion des 20 ans du noyau Linux.+**Important** : Les fichiers dans le répertoire **xorg.conf.d** sont numérotésL'ordre de prise en compte des fichiers de configuration suit la numérotationLe fichier xorg.conf lui-même est interprété en **dernier**.
 </WRAP> </WRAP>
  
-Utilisez maintenant la commande **make defconfig** pour créer le fichier de configuration .config :+Les fichiers de configuration contiennent des sections. Chaque section commence par une directive **Section** :
  
-<code+<file
-trainee@debian8:~$ su - +Section "Nom" 
-Password:  +... 
-root@debian8:~# cd /home/trainee/linux-3.16.1/ +</file>
-root@debian8:/home/trainee/linux-3.16.1# make defconfig +
-  HOSTCC  scripts/basic/fixdep +
-  HOSTCC  scripts/kconfig/conf.o +
-  SHIPPED scripts/kconfig/zconf.tab.c +
-  SHIPPED scripts/kconfig/zconf.lex.c +
-  SHIPPED scripts/kconfig/zconf.hash.c +
-  HOSTCC  scripts/kconfig/zconf.tab.o +
-In file included from scripts/kconfig/zconf.tab.c:2537:0: +
-scripts/kconfig/menu.c: In function ‘get_symbol_str’: +
-scripts/kconfig/menu.c:590:18: warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized] +
-     jump->offset = strlen(r->s); +
-                  ^ +
-scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here +
-  struct jump_key *jump; +
-                   ^ +
-  HOSTLD  scripts/kconfig/conf +
-*** Default configuration is based on 'x86_64_defconfig' +
-+
-# configuration written to .config +
-+
-</code>+
  
-Ce fichier est configuré par une des trois commandes suivantes :+et se termine par une directive **EndSection** :
  
-  * make config +<file> 
-  * make menuconfig +... 
-  * make xconfig+EndSection 
 +</file>
  
-Dans ce fichier, vous pouvez constater la présence de lignes correspondantes à des fonctionalités suivies par une lettre ou une valeur. Dans le cas d'une lettre, la signification est la suivante :+Dans chaque section se trouvent des lignes comprennant une **Option** suivi d'une ou de plusieurs **Valeurs** :
  
-  * **y** +<file> 
-    * la fonctionalité est incluse dans le noyau monolithique ou dans le cas d'une dépendance d'un module, dans le module concerné, +  Identifier   "Monitor[0]" 
-  * **m** +</file>
-    * la fonctionalité est incluse en tant que module, +
-  * **n** +
-    * la fonctionalité n'est pas incluse. Cette option est rarement visible car dans bien les cas, la fonctionalité est simplement commentée dans le fichier lui-même.+
  
-<code+<WRAP center round important
-root@debian8:/home/trainee/linux-3.16.1# more .config  +**A faire** Notez que la valeur est entourée de "
-+</WRAP>
-# Automatically generated file; DO NOT EDIT. +
-# Linux/x86 3.16.1 Kernel Configuration +
-+
-CONFIG_64BIT=y +
-CONFIG_X86_64=y +
-CONFIG_X86=y +
-CONFIG_INSTRUCTION_DECODER=y +
-CONFIG_OUTPUT_FORMAT="elf64-x86-64" +
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" +
-CONFIG_LOCKDEP_SUPPORT=y +
-CONFIG_STACKTRACE_SUPPORT=y +
-CONFIG_HAVE_LATENCYTOP_SUPPORT=y +
-CONFIG_MMU=y +
-CONFIG_NEED_DMA_MAP_STATE=y +
-CONFIG_NEED_SG_DMA_LENGTH=y +
-CONFIG_GENERIC_ISA_DMA=y +
-CONFIG_GENERIC_BUG=y +
-CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +
-CONFIG_GENERIC_HWEIGHT=y +
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y +
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y +
-CONFIG_GENERIC_CALIBRATE_DELAY=y +
-CONFIG_ARCH_HAS_CPU_RELAX=y +
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +
-CONFIG_HAVE_SETUP_PER_CPU_AREA=y +
-CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +
-CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y +
-CONFIG_ARCH_SUSPEND_POSSIBLE=y +
-CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +
-CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +
-CONFIG_ZONE_DMA32=y +
-CONFIG_AUDIT_ARCH=y +
-CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +
-CONFIG_HAVE_INTEL_TXT=y +
-CONFIG_X86_64_SMP=y +
-CONFIG_X86_HT=y +
---More--(1%) +
-</code>+
  
-Dernièrement, attribuez le répertoire **linux-3.16.1** et son contenu à l'utilisateur **trainee** et le groupe **src** :+Certaines options sont des booléenesLes valeurs admises sont :
  
-<code> +  * **Vrai** : 1, on, true, yes, 
-root@debian8:/home/trainee/linux-3.16.1# chown -R trainee:src /home/trainee/linux-3.16.1 +  * **Faux** 0, off, false, no.
-</code>+
  
-====La Commande make-kpkg====+===La Section ServerFlags===
  
-Cette commande permet d'effectuer un nettoyage avant toute nouvell compilation des sources du noyau :+Cette section optionnelle contient des directives globales. Cependant les valeurs attribuées ici peuvent être modifiées par les valeurs des directives dans la section **ServerLayout**. 
  
-<code> +Un exemple de cette section est :
-root@debian8:/home/trainee/linux-3.16.1# make-kpkg clean +
-exec make kpkg_version=13.014+nmu1 -f /usr/share/kernel-package/ruleset/minimal.mk clean  +
-====== making target minimal_clean [new prereqs: ]====== +
-This is kernel package version 13.014+nmu1. +
-test ! -f .config || cp -pf .config config.precious +
-test ! -e stamp-building || rm -f stamp-building +
-test ! -f Makefile || \ +
-            make    ARCH=x86_64 distclean +
-make[1]: Entering directory '/home/trainee/linux-3.16.1' +
-  CLEAN   scripts/basic +
-  CLEAN   scripts/kconfig +
-  CLEAN   include/config include/generated +
-  CLEAN   .config +
-make[1]: Leaving directory '/home/trainee/linux-3.16.1' +
-test ! -f config.precious || mv -f config.precious .config +
-rm -f modules/modversions.h modules/ksyms.ver scripts/cramfs/cramfsck scripts/cramfs/mkcramfs  +
-</code>+
  
-====Compiler le Noyau====+<file> 
 +Section "ServerFlags"        
 + Option "DontZap" "true"       
 +EndSection 
 +</file>
  
-La compilation du noyau peut prendre beaucoup de temps. La commande utilisée est la suivante :+Les directives les plus courantes dans cette section sont :
  
-<code> +^ Directive  ^  Type  ^  Exemple  ^ Description ^ 
-root@debian8:/home/trainee/linux-3.16.1# exit +| "DontZap" |  Bouléen  |  True  | Quand la valeur de cette directive est **vrai**, la terminaison de la session X en utilisant les touches <key>Ctrl</key>-<key>Alt</key>-<key>Retour arrière</key> est désactivée| 
-logout +| "DontZoom" |  Bouléen  |  True  | Quand la valeur de cette directive est **vrai**, il n'est plus possible de modifier la résolution en utilisant les touches <key>Ctrl</key>-<key>Alt</key>-<key>Plus</key> ou <key>Ctrl</key>-<key>Alt</key>-<key>Moins</key>. |
-trainee@debian8:~$ cd ./linux-3.16.1/ +
-trainee@debian8:~/linux-3.16.1$ fakeroot make-kpkg --initrd --appen-to-version=i2tch kernel-image kernel-headers +
-</code>+
  
-<WRAP center round important> +===La Section ServerLayout===
-**Important** : La commande **fakeroot** simule l'environnement de root pendant la compilation, **--initrd** stipule que l'image a besoin d'un initramfs, **--append-to-version** ajoute l'argument i2tch à la valeur de l'EXTRAVERSION du fichier Makefile tandis que **kernel-image** génère un paquet Debian contenant le nouveau noyau et **kernel-headers** crée un paquet contenant les fichiers d'en-têtes contenus dans le noyau Linux. +
-</WRAP>+
  
-A l'issu du processus, vous obtiendrez une sortie similaire à ce qui suit :+Cette section regroupe les informations concernant les périphériques en entrée et les périphériques en sortie.
  
-<code> +Un exemple de cette section est :
-... +
-cp -pf debian/control debian/control.dist +
-k=`find /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch -type f | ( while read i; do                    \ +
-          if file -b $i | egrep -q "^ELF.*executable.*dynamically linked" ; then \ +
-            j="$j $i";                                                  \ +
-           fi;                                                            \ +
-        done; echo $j; )`; test -z "$k" || dpkg-shlibdeps $k;          \ +
-        echo "Elf Files$K" >              /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch/usr/share/doc/linux-headers-3.16.1i2tch/elffiles;          \ +
-        test -n "$k" || perl -pli~ -e 's/\$\{shlibs:Depends\}\,?//g' debian/control +
-test ! -e debian/control~ || rm -f debian/control~ +
-dpkg-gencontrol -isp -DArchitecture=amd64 -plinux-headers-3.16.1i2tch \ +
-                                          -P/home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch/ +
-dpkg-gencontrol: warning: -isp is deprecated; it is without effect +
-create_md5sums_fn () { cd $1 ; find . -type f ! -regex './DEBIAN/.*' ! -regex './var/.*'      -printf '%P\0' | xargs -r0 md5sum > DEBIAN/md5sums ; if [ -z "DEBIAN/md5sums" ] ; then rm -f "DEBIAN/md5sums" ; fi ; } ; create_md5sums_fn                   /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch +
-chown -R root:root                  /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch +
-chmod -R og=rX                      /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch +
-dpkg --build                        /home/trainee/linux-3.16.1/debian/linux-headers-3.16.1i2tch .. +
-dpkg-deb: building package `linux-headers-3.16.1i2tch' in `../linux-headers-3.16.1i2tch_3.16.1i2tch-10.00.Custom_amd64.deb'+
-cp -pf debian/control.dist          debian/control +
-make[2]: Leaving directory '/home/trainee/linux-3.16.1' +
-make[1]: Leaving directory '/home/trainee/linux-3.16.1' +
-</code>+
  
-Notez que la génération du nouveau noyau a consommé presque 1,2 Go d'espace disque :+<file> 
 +Section  "ServerLayout"          
 + Identifier     "Default Layout"          
 + Screen      0  "Screen0" 0 0          
 + InputDevice    "Mouse0" "CorePointer"          
 + InputDevice    "Keyboard0" "CoreKeyboard"  
 +EndSection 
 +</file>
  
-<code> +Les directives les plus courantes dans cette section sont :
-trainee@debian8:~/linux-3.16.1$ df -h +
-Filesystem      Size  Used Avail Use% Mounted on +
-/dev/sda1       9.5G  5.7G  3.4G  63% / +
-udev             10M       10M   0% /dev +
-tmpfs            99M  4.8M   95M   5% /run +
-tmpfs           248M      248M   0% /dev/shm +
-tmpfs           5.0M  4.0K  5.0M   1% /run/lock +
-tmpfs           248M      248M   0% /sys/fs/cgroup +
-/dev/sdb1        20G  1.2G   18G   7% /home +
-tmpfs            50M       50M   0% /run/user/1000 +
-</code>+
  
-====Installer le Nouveau Noyau====+^ Directive  ^ Description ^ Commentaires ^ 
 +| "Identifier" | Définit un nom unique pour cette entrée dans la section. | S/O | 
 +| "Screen" | Spécifie l'entrée de la section Screen concernée par l'entrée courante. | Le premier 0 indique le premier moniteur connecté à la carte vidéo. Les deux derniers 0 indique la position du coins supérieur gauche de l'écran en coordonnées XY. Par défaut cette valaur est de 0 0. | 
 +| "InputDevice" | Spécifie l'entrée de la section InputDevice concernée par l'entrée courante. | Le terme **Core** indique que c'est le périphérique par défaut. | 
 +| "Option" | Une section optionnelle | Toute option définit ici prend précédence sur une option du même nom dans la section ServerFlags. |
  
-Les paquets du nouveau noyau est les fichiers en-tête se trouvent dans le répertoire **/home/trainee** :+<WRAP center round important> 
 +**Important** : Le fichier de configuration peut contenir deux ou plusieurs sections ServerLayout. Seule la première sera prise en compte. 
 +</WRAP>
  
-<code> +===La Section Files===
-trainee@debian8:~/linux-3.16.1$ cd .. +
-trainee@debian8:~$ ls +
-Desktop    Downloads     linux-3.16.1.tar.xz                                           linux-image-3.16.1i2tch_3.16.1i2tch-10.00.Custom_amd64.deb  Pictures  Templates +
-Documents  linux-3.16.1  linux-headers-3.16.1i2tch_3.16.1i2tch-10.00.Custom_amd64.deb  Music                                                       Public    Videos +
-</code>+
  
-Installez maintenant les deux paquets **linux-image** et **linux-headers** :+Cette section regroupe les informations concernant les fichiers de configuration supplémentaires.
  
-<code> +Un exemple de cette section est :
-root@debian8:~# dpkg -i /home/trainee/linux*.deb +
-Selecting previously unselected package linux-headers-3.16.1i2tch. +
-(Reading database ... 134500 files and directories currently installed.) +
-Preparing to unpack .../linux-headers-3.16.1i2tch_3.16.1i2tch-10.00.Custom_amd64.deb ... +
-Unpacking linux-headers-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Selecting previously unselected package linux-image-3.16.1i2tch. +
-Preparing to unpack .../linux-image-3.16.1i2tch_3.16.1i2tch-10.00.Custom_amd64.deb ... +
-Done. +
-Unpacking linux-image-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Setting up linux-headers-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Examining /etc/kernel/header_postinst.d. +
-Setting up linux-image-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Running depmod. +
-Examining /etc/kernel/postinst.d. +
-run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-update-initramfs: Generating /boot/initrd.img-3.16.1i2tch +
-run-parts: executing /etc/kernel/postinst.d/zz-update-grub 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-Generating grub configuration file ... +
-Found background image: /usr/share/images/desktop-base/desktop-grub.png +
-Found linux image: /boot/vmlinuz-3.16.1i2tch +
-Found initrd image: /boot/initrd.img-3.16.1i2tch +
-Found linux image: /boot/vmlinuz-3.16.0-4-amd64 +
-Found initrd image: /boot/initrd.img-3.16.0-4-amd64 +
-done +
-</code>+
  
-Constatez la création d'un nouveau grub.cfg :+<file> 
 +Section "Files"          
 + RgbPath      "/usr/share/X11/rgb.txt"          
 + FontPath     "unix/:7100"  
 +EndSection 
 +</file>
  
-<code> +Les directives les plus courantes dans cette section sont :
-root@debian8:~# grep 3.16.1 /boot/grub/grub.cfg +
- echo 'Loading Linux 3.16.1i2tch ...' +
- linux /boot/vmlinuz-3.16.1i2tch root=UUID=4a230056-285f-42f4-bfe0-5a73dbc5b745 ro  quiet +
- initrd /boot/initrd.img-3.16.1i2tch +
- menuentry 'Debian GNU/Linux, with Linux 3.16.1i2tch' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.1i2tch-advanced-4a230056-285f-42f4-bfe0-5a73dbc5b745'+
- echo 'Loading Linux 3.16.1i2tch ...' +
- linux /boot/vmlinuz-3.16.1i2tch root=UUID=4a230056-285f-42f4-bfe0-5a73dbc5b745 ro  quiet +
- initrd /boot/initrd.img-3.16.1i2tch +
- menuentry 'Debian GNU/Linux, with Linux 3.16.1i2tch (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.1i2tch-recovery-4a230056-285f-42f4-bfe0-5a73dbc5b745'+
- echo 'Loading Linux 3.16.1i2tch ...' +
- linux /boot/vmlinuz-3.16.1i2tch root=UUID=4a230056-285f-42f4-bfe0-5a73dbc5b745 ro single  +
- initrd /boot/initrd.img-3.16.1i2tch +
-</code>+
  
-====Désinstallez un Noyau====+^ Directive  ^ Description ^ Commentaires ^ 
 +| "RgbPath" | Spécifie l'emplacement de la base de données **RGB**. | Sous Redhat/CentOS : **/usr/share/X11/rgb.txt**. | 
 +| "FontPath" | Spécifie où doit connecter le serveur pour obtenir des polices pour le serveur de polices **xfs**. | **unix/:7100** par défaut. | 
 +| "ModulePath" | Spécifie un répertoire alternatif de modules. | Une directive optionnelle. |
  
-Re-démarrez votre VM en utilisant le noyau d'origine. Connectez-vous en tant que l'utilisateur **trainee** via ssh :+Voici le fichier **/usr/share/X11/rgb.txt** :
  
 <code> <code>
-Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent +root@debian8:~# more /usr/share/X11/rgb.txt 
-permitted by applicable law+! $Xorgrgb.txt,v 1.3 2000/08/17 19:54:00 cpqbld Exp 
-You have new mail. +255 250 250 snow 
-Last loginSat Aug 13 12:36:26 2016 from 10.0.2.2 +248 248 255 ghost white 
-trainee@debian8:~su - +248 248 255 GhostWhite 
-Password:  +245 245 245 white smoke 
-root@debian8:~# +245 245 245 WhiteSmoke 
 +220 220 220 gainsboro 
 +255 250 240 floral white 
 +255 250 240 FloralWhite 
 +253 245 230 old lace 
 +253 245 230 OldLace 
 +250 240 230 linen 
 +250 235 215 antique white 
 +250 235 215 AntiqueWhite 
 +255 239 213 papaya whip 
 +255 239 213 PapayaWhip 
 +255 235 205 blanched almond 
 +255 235 205 BlanchedAlmond 
 +255 228 196 bisque 
 +255 218 185 peach puff 
 +255 218 185 PeachPuff 
 +255 222 173 navajo white 
 +255 222 173 NavajoWhite 
 +255 228 181 moccasin 
 +255 248 220 cornsilk 
 +255 255 240 ivory 
 +255 250 205 lemon chiffon 
 +255 250 205 LemonChiffon 
 +255 245 238 seashell 
 +240 255 240 honeydew 
 +245 255 250 mint cream 
 +--More--(4%)
 </code> </code>
  
-Lister maintenant les noyaux installés :+===La Section Modules===
  
-<code> +Par défaut le serveur X charge ses modules à partir du répertoire **/usr/lib/xorg/modules/drivers** ou **/usr/lib64/xorg/modules/drivers** :
-root@debian8:~# dpkg -l | grep -i "linux-image*" | awk '{print $2}' +
-linux-image-3.16.0-4-amd64 +
-linux-image-3.16.1i2tch +
-linux-image-amd64 +
-</code> +
- +
-Le noyau se désinstalle comme tout autre paquet :+
  
 <code> <code>
-root@debian8:~# apt-get purge "linux-image-3.16.1i2tch" +root@debian8:~# ls /usr/lib/xorg/modules 
-Reading package lists... Done +drivers     input      libfbdevhw.so  libglamoregl.so  libshadowfb.so  libvbe.so    libwfb.so 
-Building dependency tree        +extensions  libexa.so  libfb.so       libint10.so      libshadow.so    libvgahw.so  multimedia
-Reading state information... Done +
-The following packages will be REMOVED: +
-  linux-image-3.16.1i2tch* +
-0 upgraded, 0 newly installed, 1 to remove and 1 not upgraded. +
-After this operation, 9,251 kB disk space will be freed. +
-Do you want to continue? [Y/n] y +
-(Reading database ... 147056 files and directories currently installed.) +
-Removing linux-image-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Examining /etc/kernel/prerm.d. +
-Examining /etc/kernel/postrm.d . +
-run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-update-initramfs: Deleting /boot/initrd.img-3.16.1i2tch +
-run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-Generating grub configuration file ... +
-Found background image: /usr/share/images/desktop-base/desktop-grub.png +
-Found linux image: /boot/vmlinuz-3.16.0-4-amd64 +
-Found initrd image: /boot/initrd.img-3.16.0-4-amd64 +
-done +
-Purging configuration files for linux-image-3.16.1i2tch (3.16.1i2tch-10.00.Custom) ... +
-Examining /etc/kernel/postrm.d . +
-run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch +
-run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.16.1i2tch /boot/vmlinuz-3.16.1i2tch+
 </code> </code>
  
-Vérifiez que le fichier grub.cfg a été modifié :+<WRAP center round important> 
 +**Important** Le chemin par défaut de l'emplacement des modules peut être modifié en utilisant la directive **ModulePath** dans la section **Files**. 
 +</WRAP>
  
-<code> +Un exemple de cette section est :
-root@debian8:~# grep 3.16.1 /boot/grub/grub.cfg +
-root@debian8:~# +
-</code>+
  
-Dernièrement, listez les noyaux disponibles : +<file
- +Section "Module  
-<code+ Load  "fbdevhw"  
-root@debian8:~# dpkg -l | grep -i "linux-image*| awk '{print $2}' +EndSection 
-linux-image-3.16.0-4-amd64 +</file>
-linux-image-amd64 +
-</code> +
- +
-=====Gestion des Quotas=====+
  
 <WRAP center round important> <WRAP center round important>
-**Important** : Déconnectez-vous et re-connectez-vous directement en tant que root.+**Attention** : Dans l'exemple ci-dessus, le module **fbdevhw** sera chargé **à la place des modules par défaut**. Pour charger les modules par défaut il faut les spécifier.
 </WRAP> </WRAP>
  
-Sous Linux il est possible de mettre en place des quotas par utilisateur et par groupe. Ceci étant, Linux ne sait pas gérer des quotas par répertoire, uniquement des  +===La Section InputDevice===
-quotas par partition. L'administrateur met souvent des quotas en place sur l'arborescence de /home pour limiter l'espace de stockage occupé par les utilisateurs.+
  
-Commencez par vérifiez que le paquet **quota** est bien installé :+Cette section décrit un périphérique en entrée. Il n'ya normalement qu'une section pour le clavier, les souris étant généralement détectées automatiquement. Vous pouvez cependant configurer une section **InputDevice** pour une souris en ecrasant la configuration par défaut.
  
-<code> +Un exemple de cette section est :
-root@debian8:~# dpkg --get-selections | grep quota +
-root@debian8:~# apt-get install quota +
-Reading package lists... Done +
-Building dependency tree        +
-Reading state information... Done +
-Suggested packages: +
-  libnet-ldap-perl +
-The following NEW packages will be installed: +
-  quota +
-0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. +
-Need to get 319 kB of archives. +
-After this operation, 1,580 kB of additional disk space will be used. +
-Get:1 http://ftp.fr.debian.org/debian/ jessie/main quota amd64 4.01-8+deb8u1 [319 kB] +
-Fetched 319 kB in 0s (1,884 kB/s) +
-Preconfiguring packages ... +
-Selecting previously unselected package quota. +
-(Reading database ... 146985 files and directories currently installed.) +
-Preparing to unpack .../quota_4.01-8+deb8u1_amd64.deb ... +
-Unpacking quota (4.01-8+deb8u1) ... +
-Processing triggers for man-db (2.7.0.2-5) ... +
-Processing triggers for systemd (215-17+deb8u4) ... +
-Setting up quota (4.01-8+deb8u1) ... +
-Processing triggers for systemd (215-17+deb8u4) ... +
-</code>+
  
-Editez le fichier **/etc/fstab** en ajoutant les options **usrquota** et **grpquota** à la ligne **/home** :+<file> 
 +Section "InputDevice" 
 +        Identifier  "Keyboard0" 
 +        Driver      "kbd" 
 +        Option      "XkbModel" "pc105" 
 +        Option      "XkbLayout" "us" 
 +EndSection 
 +</file>
  
-<code> +Les directives les plus courantes dans cette section sont :
-root@debian8:~# vi /etc/fstab +
-root@debian8:~# cat /etc/fstab +
-# /etc/fstab: static file system information. +
-+
-# Use 'blkid' to print the universally unique identifier for a +
-# device; this may be used with UUID= as a more robust way to name devices +
-# that works even if disks are added and removed. See fstab(5). +
-+
-# <file system> <mount point>   <type>  <options>       <dump>  <pass> +
-# / was on /dev/sda1 during installation +
-UUID=4a230056-285f-42f4-bfe0-5a73dbc5b745 /               ext4    errors=remount-ro 0       1 +
-# swap was on /dev/sda5 during installation +
-UUID=da5a77e9-344d-42aa-aed6-a38d381ba436 none            swap    sw              0       0 +
-UUID=6e4ea901-a36d-4b3f-bbbf-eeea866fca40 /home   ext4   defaults,usrquota,grpquota 0 0 +
-/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto           0 +
-</code>+
  
-Démontez puis remontez /home :+^ Directive  ^ Description ^ 
 +| "Identifier" | Spécifie un nom unique pour la section. Cette directive est obligatoire. | 
 +| "Driver" | Spécifie le pilote à charger. | 
 +| "Option" | Spécifie une option concernant le périphérique. |
  
-<code> +Quand la section décrit une souris, on trouve typiquement les options suivantes :
-root@debian8:~# umount /home +
-root@debian8:~# mount -a +
-</code>+
  
-Vérifiez ensuite que les options soient prises en compte :+^ Option  ^ Description ^ 
 +| "Protocol" | Spécifie le protocole à utiliser avec une souris, par exemple **IMPS/2**. | 
 +| "Device" | Spécifie l'emplacement physique du périphérique. | 
 +| "Emulate3Buttons " | Spécifie si une souris à deux boutons réagit comme une souris à trois boutons en appuyant sur les dexu boutons sumultanément. |
  
-<code> +===La Section Monitor===
-root@debian8:~# cat /etc/mtab +
-rootfs / rootfs rw 0 0 +
-sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 +
-proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 +
-udev /dev devtmpfs rw,relatime,size=10240k,nr_inodes=61148,mode=755 0 0 +
-devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 +
-tmpfs /run tmpfs rw,nosuid,relatime,size=101232k,mode=755 0 0 +
-/dev/sda1 / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0 +
-securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 +
-tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0 +
-tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0 +
-tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,mode=755 0 0 +
-cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0 +
-pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0 +
-cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0 +
-cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0 +
-cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0 +
-cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0 +
-cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0 +
-cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0 +
-cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0 +
-systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct 0 0 +
-hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0 +
-debugfs /sys/kernel/debug debugfs rw,relatime 0 0 +
-mqueue /dev/mqueue mqueue rw,relatime 0 0 +
-fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0 +
-rpc_pipefs /run/rpc_pipefs rpc_pipefs rw,relatime 0 0 +
-tmpfs /run/user/0 tmpfs rw,nosuid,nodev,relatime,size=50616k,mode=700 0 0 +
-/dev/sdb1 /home ext4 rw,relatime,quota,usrquota,grpquota,data=ordered 0 0 +
-</code>+
  
-====La Commande quotacheck====+Cette section décrit l'écran. Les écrans actuels sont tous de type **DCC** qui peuvent communiquer au pilote graphique les fréquences et les résolutions supportées. Cependant avec des anciens moniteurs, il est nécessaire d'éditer cette section manuellement.
  
-Pour activer les quotas sur /home, il convient d'utiliser la commande **quotacheck** :+<WRAP center round important> 
 +**Attention** : Il est important de se munir avec la documentation du moniteur afin de connaître **la taille de l'affichage en millimètres, les fréquences horizontales, les fréquences verticales ainsi que les résolutions supportées**. Une mauvaise configuration, notamment des fréquences, peut endomager un moniteur dès que la configuration soit appliquée. 
 +</WRAP>
  
-<code> +Un exemple de cette section est :
-root@debian8:~# quotacheck -cugvm -f /dev/sdb1 +
-quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quota to avoid running quotacheck after an unclean shutdown. +
-quotacheck: Scanning /dev/sdb1 [/home] done +
-quotacheck: Cannot stat old user quota file /home/aquota.user: No such file or directory. Usage will not be subtracted. +
-quotacheck: Cannot stat old group quota file /home/aquota.group: No such file or directory. Usage will not be subtracted. +
-quotacheck: Cannot stat old user quota file /home/aquota.user: No such file or directory. Usage will not be subtracted. +
-quotacheck: Cannot stat old group quota file /home/aquota.group: No such file or directory. Usage will not be subtracted. +
-quotacheck: Checked 6754 directories and 64246 files +
-quotacheck: Old file not found. +
-quotacheck: Old file not found. +
-</code>+
  
-Les options de la commande quotacheck sont :+<file> 
 +Section "Monitor"  
 + Identifier   "Monitor0"  
 + VendorName   "Monitor Vendor"  
 + ModelName    "DDC Probed Monitor - ViewSonic G773-2"  
 + DisplaySize  320 240  
 + HorizSync    30.0 - 70.0  
 + VertRefresh  50.0 - 180.0  
 +EndSection 
 +</file>
  
-<code> +Les directives les plus courantes dans cette section sont :
-root@debian8:~# quotacheck --help +
-Utility for checking and repairing quota files. +
-quotacheck [-gucbfinvdmMR] [-F <quota-format>] filesystem|-a+
  
--u, --user                check user files +^ Directive  ^ Description ^ 
--g, --group               check group files +| "Identifier" | Spécifie un nom unique pour la section. Cette directive est obligatoire. | 
--c, --create-files        create new quota files +| "VendorName" | Spécifie le nom du fabricant. | 
--b, --backup              create backups of old quota files +| "ModelName" | Spécifie le modèle du moniteur. | 
--f, --force               force check even if quotas are enabled +| "DisplaySize" | Spécifie la taille de l'écran du moniteur en mm. | 
--i, --interactive         interactive mode +| "HorizSync" | Spécifie la fréquence horizontale en kHz. | 
--n, --use-first-dquot     use the first copy of duplicated structure +| "VertRefresh" | Spécifie la fréquence verticale en kHz. | 
--v, --verbose             print more information +| "Modeline" | Spécifie les modes vidéo et les fréquences horizontales et verticales necessaire pour les obtenir. | 
--d, --debug               print even more messages +| "Option" | Spécifie une option. Voir le manuel de Xorg.conf |
--m, --no-remount          do not remount filesystem read-only +
--M, --try-remount         try remounting filesystem read-only, +
-                          continue even if it fails +
--R, --exclude-root        exclude root when checking all filesystems +
--F, --format=formatname   check quota files of specific format +
--a, --all                 check all filesystems +
--h, --help                display this message and exit +
--V, --version             display version information and exit+
  
-Bugs to jack@suse.cz 
-</code> 
  
-Les quotas ont été activés et les fichier **aquota.user** et **aquota.group** ont été créés dans le répertoire /home :+===La Section Device===
  
-<code> +Cette section décrit une carte vidéo. Il y a une section Device pour chaque carte vidéo présente dans la machine.
-root@debian8:~# ls -la /home +
-total 44 +
-drwxr-xr-x  4 root    root     4096 Aug 14 09:25 . +
-drwxr-xr-x 23 root    root     4096 Aug 13 15:38 .. +
--rw-------  1 root    root     7168 Aug 14 09:25 aquota.group +
--rw-------  1 root    root     7168 Aug 14 09:25 aquota.user +
-drwx------  2 root    root    16384 Aug 13 12:26 lost+found +
-drwxr-xr-x 18 trainee trainee  4096 Aug 13 13:31 trainee +
-</code>+
  
-Créez maintenant un utilisateur **fenestros** avec le mot de passe **fenestros** :+Un exemple de cette section est :
  
-<code+<file
-root@debian8:~# groupadd fenestros && useradd -m fenestros -c FenestrOs -d /home/fenestros -g fenestros -s /bin/bash +Section "Device"  
-root@debian8:~# passwd fenestros + Identifier  "Videocard0"  
-Enter new UNIX password:  + Driver      "mga"  
-Retype new UNIX password:  + VendorName  "Videocard vendor"  
-passwd: password updated successfully + BoardName   "Matrox Millennium G200"  
-</code>+ VideoRam    8192          
 + Option      "dpms"  
 +EndSection 
 +</file>
  
-====La Commande edquota====+Les directives les plus courantes dans cette section sont :
  
-Mettez en place maintenant un quota de 10Mo pour l'utilisateur **fenestros** :+^ Directive  ^ Description ^ 
 +| "Identifier" | Spécifie un nom unique pour la section. Cette directive est obligatoire. | 
 +| "Driver" | Spécifie le pilote à utiliser. Les pilotes se trouvent dans le répertoire **/usr/lib/xorg/modules/drivers/**. | 
 +| "VendorName" | Spécifie le nom du fabricant. | 
 +| "BoardName" | Spécifie le nom de la carte. 
 +| "VideoRam" | Spécifie la mémoire vidéo en Ko dans le cas où Xorg ne peut pas la détecter automatiquement. | 
 +| "BusID" | Spécifie l'ID du bus auquel est connecté la carte. | 
 +| "Screen" | Spécifie un numéro commençant par 0 corréspondant à la sortie vidéo de la carte. Si une carte a plusieurs sorties, une section Device doit être créée pour chaque sortie et ce numéro doit être unique. | 
 +| "Option" | Spécifie une option. L'option "dpms" est souvent présente et active l'économie d'énergie au niveau du moniteur. |
  
-<code> +===La Section Screen===
-root@debian8:~# EDITOR=/usr/bin/vi +
-root@debian8:~# export EDITOR +
-root@debian8:~# edquota -u fenestros -f /home +
-</code>+
  
-L'éditeur **vi** se lance et vous obtiendrez un résultat similaire à celui-ci :+Cette section associe une carte vidéo décrite par une section **Device** avec un moniteur décrit par une section **Monitor** :
  
-<file> +Un exemple de cette section est :
-Disk quotas for user fenestros (uid 1001): +
-  Filesystem                   blocks       soft       hard     inodes     soft     hard +
-  /dev/sdb1                                  0          0          0        0        0 +
-</file> +
- +
-Modifiez ce fichier ainsi :+
  
 <file> <file>
-Disk quotas for user fenestros (uid 1001): +Section "Screen"  
-  Filesystem                   blocks       soft       hard     inodes     soft     hard + Identifier "Screen0"  
-  /dev/sdb1                               8000      10000          0        0        0+ Device     "Videocard0"  
 + Monitor    "Monitor0"  
 + DefaultDepth     16  
 +SubSection "Display"  
 + Depth     24  
 + Modes    "1280x1024" "1280x960" "1152x864" "1024x768" "800x600" "640x480"  
 +EndSubSection  
 +SubSection "Display"  
 + Depth     16  
 + Modes    "1152x864" "1024x768" "800x600" "640x480"  
 +EndSubSection  
 +EndSection
 </file> </file>
  
-Les options de la commande **edquota** sont :+Les directives les plus courantes dans cette section sont :
  
-<code> +^ Directive  ^ Description ^ 
-root@debian8:~# edquota --help +| "Identifier" | Spécifie un nom unique pour la sectionCette directive est obligatoire| 
-edquota: Usage: +| "Device" | Spécifie la section Device concernéeCette directive est obligatoire
- edquota [-rm] [-u] [-F formatname] [-p username] [-f filesystem] username ... +| "Monitor" | Spécifie la section Monitor concernée| 
- edquota [-rm] -g [-F formatname] [-p groupname] [-f filesystem] groupname ... +"DefautDepth" | Spécifie la profondeur de couleurs par défaut.  | 
- edquota [-u|g] [-F formatname] [-f filesystem] -t +"Display" Spécifie les résolutions permises pour le DefaultDepth | 
- edquota [-u|g] [-F formatname] [-f filesystem] -T username|groupname ...+| "Option" | Spécifie une option|
  
--u, --user                    edit user data +====La Commande xwininfo====
--g, --group                   edit group data +
--r, --remote                  edit remote quota (via RPC) +
--m, --no-mixed-pathnames      trim leading slashes from NFSv4 mountpoints +
--F, --format=formatname       edit quotas of a specific format +
--p, --prototype=name          copy data from a prototype user/group +
-    --always-resolve          always try to resolve name, even if it is +
-                              composed only of digits +
--f, --filesystem=filesystem   edit data only on a specific filesystem +
--t, --edit-period             edit grace period +
--T, --edit-times              edit grace time of a user/group +
--h, --help                    display this help text and exit +
--V, --version                 display version information and exit+
  
-Bugs to: jack@suse.cz +La commande xwininfo permet d'obtenir de l'information concernant une fenêtre graphiqueDans la pratique il convient de saisir la commande puis de cliquer sur une fenêtre. Le résultat obtenu est similaire à celui-ci :
-</code>+
  
-<WRAP center round important+<code
-**Important** - Pour mettre en place un quota par group, la procédure est similaire. Il suffit d'utiliser l'option -g de la commande edquota. +root@debian8:~# xwininfo 
-</WRAP>+No protocol specified 
 +xwininfo: error: unable to open display ":0" 
 +root@debian8:~# exit 
 +logout 
 +trainee@debian8:~$ xwininfo
  
-====La Commande quotaon====+xwininfo: Please select the window about which you 
 +          would like information by clicking the 
 +          mouse in that window.
  
-Appliquez maintenant les quotas :+xwininfoWindow id: 0x2e0004a "*XWindows (~/Desktop) - gedit"
  
-<code> +  Absolute upper-left X:  0 
-root@debian8:~# quotaon -a+  Absolute upper-left Y 0 
 +  Relative upper-left X:  0 
 +  Relative upper-left Y:  0 
 +  Width: 1366 
 +  Height: 642 
 +  Depth: 32 
 +  Visual: 0x44 
 +  Visual Class: TrueColor 
 +  Border width: 0 
 +  Class: InputOutput 
 +  Colormap: 0x2e00049 (not installed) 
 +  Bit Gravity State: NorthWestGravity 
 +  Window Gravity State: NorthWestGravity 
 +  Backing Store State: NotUseful 
 +  Save Under State: no 
 +  Map State: IsViewable 
 +  Override Redirect State: no 
 +  Corners:  +0+0  -0+0  -0-25  +0-25 
 +  -geometry 1366x642+0+0
 </code> </code>
  
-Les options de la commande **quotaon** sont :+Les options de la commande xwininfo sont :
  
 <code> <code>
-root@debian8:~# quotaon --help +root@debian8:~# xwininfo --help 
-quotaonUsage: +usage xwininfo [-options ...]
- quotaon [-guvp] [-F quotaformat] [-x state] -a +
- quotaon [-guvp] [-F quotaformat] [-x state] filesys ...+
  
--a, --all                turn quotas on for all filesystems +where options include: 
--f, --off                turn quotas off +    -help                print this message 
--u, --user               operate on user quotas +    -display host:dpy    X server to contact 
--g, --group              operate on group quotas +    -root                use the root window 
--p, --print-state        print whether quotas are on or off +    -id windowid         use the window with the specified id 
--x, --xfs-command=cmd    perform XFS quota command +    -name windowname     use the window with the specified name 
--F, --format=formatname  operate on specific quota format +    -int                 print window id in decimal 
--v, --verbose            print more messages +    -children            print parent and child identifiers 
--h, --help               display this help text and exit +    -tree                print children identifiers recursively 
--V, --version            display version information and exit+    -stats               print window geometry [DEFAULT] 
 +    -bits                print window pixel information 
 +    -events              print events selected for on window 
 +    -size                print size hints 
 +    -wm                  print window manager hints 
 +    -shape               print shape extents 
 +    -frame               don't ignore window manager frames 
 +    -english             print sizes in english units 
 +    -metric              print sizes in metric units 
 +    -all                 -tree, -stats, -bits, -events, -wm, -size, -shape
 </code> </code>
  
-De cette manière vous avez mis en place un quota **souple** pour fenestros de 8 000 Ko et un quota **stricte** de 10 000 Ko. +====La Commande xdpyinfo====
  
-Quand l'utilisateur fenestros aura dépassé le quota **souple**, il recevra un message d'avertissement. Quand il dépasse le quota **stricte**, il ne pourra plus enregistrer dans /home, sauf dans le cas où il supprime des fichiers pour retomber en dessous de la limite **stricte**.+Xdpyinfo est un utilitaire utilisé pour afficher des informations concernant le serveur X :
  
-Il est à noter que vous pouvez soit mettre en place un quota en taille, soit mettre en place un quota basé sur le nombre d'inodes utilisés par l'utilisateur.+<code> 
 +trainee@debian8:~$ xdpyinfo 
 +name of display:    :0 
 +version number:    11.
 +vendor string:    The X.Org Foundation 
 +vendor release number:    11604000 
 +X.Org version: 1.16.4 
 +maximum request size:  16777212 bytes 
 +motion buffer size:  256 
 +bitmap unit, bit order, padding:    32, LSBFirst, 32 
 +image byte order:    LSBFirst 
 +number of supported pixmap formats:    7 
 +supported pixmap formats: 
 +    depth 1, bits_per_pixel 1, scanline_pad 32 
 +    depth 4, bits_per_pixel 8, scanline_pad 32 
 +    depth 8, bits_per_pixel 8, scanline_pad 32 
 +    depth 15, bits_per_pixel 16, scanline_pad 32 
 +    depth 16, bits_per_pixel 16, scanline_pad 32 
 +    depth 24, bits_per_pixel 32, scanline_pad 32 
 +    depth 32, bits_per_pixel 32, scanline_pad 32 
 +keycode range:    minimum 8, maximum 255 
 +focus:  window 0x3800007, revert to Parent 
 +number of extensions:    29 
 +    BIG-REQUESTS 
 +    Composite 
 +    DAMAGE 
 +    DOUBLE-BUFFER 
 +    DPMS 
 +    DRI2 
 +    DRI3 
 +    GLX 
 +    Generic Event Extension 
 +    MIT-SCREEN-SAVER 
 +    MIT-SHM 
 +    Present 
 +    RANDR 
 +    RECORD 
 +    RENDER 
 +    SECURITY 
 +    SGI-GLX 
 +    SHAPE 
 +    SYNC 
 +    X-Resource 
 +    XC-MISC 
 +    XFIXES 
 +    XFree86-DGA 
 +    XFree86-VidModeExtension 
 +    XINERAMA 
 +    XInputExtension 
 +    XKEYBOARD 
 +    XTEST 
 +    XVideo 
 +default screen number:    0 
 +number of screens:    1
  
-<WRAP center round important> +screen #0: 
-**Important** - La commande pour désactivez les quotas est **quotaoff**.  +  dimensions:    1366x667 pixels (270x203 millimeters) 
-</WRAP> +  resolution:    129x83 dots per inch 
- +  depths (7):    24, 1, 4, 8, 15, 16, 32 
-====La Commande repquota==== +  root window id:    0x170 
- +  depth of root window:    24 planes 
-Pour visualiser les quotas utilisez la commande **repquota** +  number of colormaps   minimum 1, maximum 1 
- +  default colormap:    0x20 
-<code> +  default number of colormap cells:    256 
-root@debian8:~# repquota /home +  preallocated pixels   black 0, white 16777215 
-*** Report for user quotas on device /dev/sdb1 +  options:    backing-store WHEN MAPPED, save-unders NO 
-Block grace time7days; Inode grace time7days +  largest cursor   64x64 
-                        Block limits                File limits +  current input event mask   0xfa8033 
-User            used    soft    hard  grace    used  soft  hard  grace +    KeyPressMask             KeyReleaseMask           EnterWindowMask           
----------------------------------------------------------------------- +    LeaveWindowMask          ExposureMask             StructureNotifyMask       
-root      --      20                          2                +    SubstructureNotifyMask   SubstructureRedirectMask FocusChangeMask           
-trainee   -- 1125912                      70998                 +    PropertyChangeMask       ColormapChangeMask        
-   +  number of visuals:    120 
 +  default visual id:  0x21 
 +  visual: 
 +    visual id:    0x21 
 +    class:    TrueColor 
 +    depth:    24 planes 
 +    available colormap entries:    256 per subfield 
 +    red, green, blue masks:    0xff0000, 0xff00, 0xff 
 +    significant bits in color specification:    8 bits 
 +  visual: 
 +    visual id:    0xf9 
 +    class:    TrueColor 
 +    depth:    24 planes 
 +    available colormap entries:    256 per subfield 
 +    red, green, blue masks:    0xff0000, 0xff00, 0xff 
 +    significant bits in color specification:    8 bits 
 +  visual: 
 +    visual id:    0xfa 
 +    class:    TrueColor 
 +    depth:    24 planes 
 +    available colormap entries:    256 per subfield 
 +    red, green, blue masks:    0xff0000, 0xff00, 0xff 
 +    significant bits in color specification:    8 bits 
 +  visual: 
 +    visual id:    0xfb 
 +    class:    TrueColor 
 +    depth:    24 planes 
 +    available colormap entries:    256 per subfield 
 +    red, green, blue masks:    0xff0000, 0xff00, 0xff 
 +    significant bits in color specification:    8 bits 
 +...
 </code> </code>
  
-<WRAP center round important> +Les options de la commande xwininfo sont :
-**Important** - Notez que l'utilisateur fenestros ne figure pas dans la liste. Sous Debian, le quota n'est pas visible tant que l'utilisateur ne s'est pas connecté pour la première fois. Notez aussi les période de grâce de **7** jours. +
-</WRAP> +
- +
-Les options de la commande **repquota** sont :+
  
 <code> <code>
-root@debian8:~# repquota --help +trainee@debian8:~$ xdpyinfo --help 
-repquotaUtility for reporting quotas. +usage xdpyinfo [options
-Usage: +-display displayname server to query 
-repquota [-vugsi[-c|C] [-t|n] [-F quotaformat] (-a | mntpoint) +-version print program version and exit 
- +-queryExtensions print info returned by XQueryExtension 
--v, --verbose               display also users/groups without any usage +-ext all print detailed info for all supported extensions 
--u, --user                  display information about users +-ext extension-name print detailed info for extension-name if one of: 
--g, --group                 display information about groups +     MIT-SHM XKEYBOARD Multi-Buffering SHAPE SYNC XFree86-DGA  
--s, --human-readable        show numbers in human friendly units (MB, GB, ...) +     XFree86-VidModeExtension XTEST DOUBLE-BUFFER RECORD XInputExtension  
--t, --truncate-names        truncate names to 9 characters +     RENDER Composite XINERAMA 
--p, --raw-grace             print grace time in seconds since epoch +
--n, --no-names              do not translate uid/gid to name +
--i, --no-autofs             avoid autofs mountpoints +
--c, --batch-translation     translate big number of ids at once +
--C, --no-batch-translation  translate ids one by one +
--F, --format=formatname     report information for specific format +
--h, --help                  display this help message and exit +
--V, --version               display version information and exit +
- +
-Bugs to jack@suse.cz+
 </code> </code>
  
-====La Commande quota====+=====L'Accès Universel=====
  
-Pour visualiser les quotas d'un utilisateur spécifique, il convient d'utiliser la commande **quota** :+L'Accès Universel ou //Accessibility// en anglais fait référence aux outils divers et variés permettant aux personnes qui présentent des handicaps à utiliser l'ordinateur.
  
-<code> +====Le Clavier et la Souris====
-root@debian8:~# quota fenestros +
-Disk quotas for user fenestros (uid 1001): none +
-root@debian8:~# su - fenestros +
-fenestros@debian8:~$ touch test +
-fenestros@debian8:~$ exit +
-logout +
-root@debian8:~# quota fenestros +
-Disk quotas for user fenestros (uid 1001):  +
-     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace +
-      /dev/sdb1      20    8000   10000                                         +
-</code>+
  
-Les options de la commande **quota** sont :+Historiquement, le logiciel graphique **AccessX** existait pour régler les paramètres du clavier. Ce logiciel a maintenant été largement remplacé par les panneaux de configuration des distributions. Parmi les paramètres reglables on trouve :
  
-<code> +^ Paramètre ^ Description ^ 
-root@debian8:~# quota --help +| Sticky Keys | Permet de maintenir les touches <key>Ctrl</key>, <key>Alt</key> et <key>Shift</key> enfoncées après avoir été relachées jusqu'à l'enfoncement d'une deuxième touche 
-quota: Usage: quota [-guqvswim] [-l | [-Q | -A]] [-F quotaformat] +Mouse Keys | Permet d'émuler une souris avec le pavé directionnel 
- quota [-qvswim] [-l [-Q -A]] [-F quotaformat] -u username ... +Bounce Keys | Permet de réduire l'effet causé quand un utilisateur appuie accidentellement plusieurs fois de suite sur la même touche 
- quota [-qvswim] [-l [-Q -A]] [-F quotaformat] -g groupname ... +| Slow Keys | Necéssite qu'une touche soit enfoncée pour une durée plus longue avant que le système réagisse |
- quota [-qvswugQm] [-F quotaformat] -f filesystem ...+
  
--u, --user                display quota for user +====Claviers Visuels====
--g, --group               display quota for group +
--q, --quiet               print more terse message +
--v, --verbose             print more verbose message +
--s, --human-readable      display numbers in human friendly units (MB, GB...) +
-    --always-resolve      always try to translate name to id, even if it is +
-   composed of only digits +
--w, --no-wrap             do not wrap long lines +
--p, --raw-grace           print grace time in seconds since epoch +
--l, --local-only          do not query NFS filesystems +
--Q, --quiet-refuse        do not print error message when NFS server does +
-                          not respond +
--i, --no-autofs           do not query autofs mountpoints +
--F, --format=formatname   display quota of a specific format +
--f, --filesystem-list     display quota information only for given filesystems +
--A, --nfs-all             display quota for all NFS mountpoints +
--m, --no-mixed-pathnames  trim leading slashes from NFSv4 mountpoints +
-    --show-mntpoint       show mount point of the file system in output +
-    --hide-device         do not show file system device in output +
--h, --help                display this help message and exit +
--V, --version             display version information and exit+
  
-Bugs to: jack@suse.cz +Un clavier visuel ou //Onscreen Keyboard// est un clavier qui est afficher à l'écran. Les touches sont activées en utilisant la souris.
-</code>+
  
-====La Commande warnquota====+Un exemple connu du clavier visuel est **[[http://library.gnome.org/users/gnomeaccessguide/stable/gok.html|GOK]]** (//Gnome On-Screen Keyboard//).
  
-La commande **warnquota** vérifie le ou les disques et envoie un message par mail à tout utilisateur qui a dépassé la limite soft. Elle est enrègle générale appelée par un job cron. Cependant elle peut aussi est appelée d'une manière intéractive.+====L'Ecran====
  
-Les options de la commande **warnquota** sont :+En ce qui concerne la visibilité de l'écran, plusieurs caractéristiques sont importants dont la luminosité, le contraste, la taille de la police ainsi que le choix de la police.
  
-<code> +Il existe aussi des loupes telles **Kmag**.
-root@debian8:~# warnquota --help +
-warnquota: Usage: +
-  warnquota [-ugsid] [-F quotaformat] [-c configfile] [-q quotatabfile] [-a adminsfile] [filesystem...]+
  
--u, --user                      warn users +====Autres Technologies====
--g, --group                     warn groups +
--s, --human-readable            send information in more human friendly units +
--i, --no-autofs                 avoid autofs mountpoints +
--d, --no-details                do not send quota information itself +
--F, --format=formatname         use quotafiles of specific format +
--c, --config=config-file        non-default config file +
--q, --quota-tab=quotatab-file   non-default quotatab +
--a, --admins-file=admins-file   non-default admins file +
--h, --help                      display this help message and exit +
--v, --version                   display version information and exit+
  
-Bugs to jack@suse.cz +Il existe aussi des logiciels de synthèse vocal tels **[[http://live.gnome.org/Orca|Orca]]** et **[[http://emacspeak.sourceforge.net|Emacspeak]]** ainsi que des moniteurs Braille qui utilisent **[[http://www.mielke.cc/brltty/|BRLTTY]]**.
-</code>+
  
 ----- -----
Ligne 1289: Ligne 1075:
 </div> </div>
 </html> </html>
------ 
  
Menu