Newer
Older
cours-unix-shell / UnixShell_cours2018 / corrigesNewCommands.fre.html
<html>
  <head>
    
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link REL="STYLESHEET" TYPE="text/css" TITLE="Style DILIB" HREF="../../dilib.css">
    <title>CORRIG&Eacute;S TRAVAUX PRATIQUES (Nouvelles commandes) - UNIX</title>
    <style type="text/css">
      Q		{ font-style: italic; }
      TABLE	{ text-align: center; }
      .reponse	{ font-style: italic; }
    </style>
  </head>

  <body>

    <h1>CORRIG&Eacute;S TRAVAUX PRATIQUES<br>(Nouvelles commandes)</h1>

    <h3>Commandes utilisateurs</h3>

    <ul><a name="passwd"></a>
      <li>Changez votre mot de passe.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		<em>passwd: Changing password for [userid]<br>
		  Enter login password&nbsp;: </em>truc<br>
                <em>New password&nbsp;: </em>machin<br>
                <em>New password&nbsp;: </em>machin
	      </td></tr>
        </table><br>
      </li>
    <a name="uid"></a>
      <li>
	Identifiez-vous&nbsp;: quel sont votre user id (uid) et votre
	groupe (gid)&nbsp;?
        <table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">whoami<br>
                <em>[votre username]</em><br>
                id<br><em>uid=[votre username] gid=users</em>
	      </td></tr>
        </table><br>
      </li>
    </ul>

    <h3>Gestion des droits</h3>

    <ul><a name="niv"></a>
      <li>
	En restant dans votre r&eacute;pertoire de travail
	(<code>UnixShell</code>), listez compl&egrave;tement le
	contenu de votre <code>home directory</code>.  D&eacute;crivez
	ce que vous y trouvez&nbsp;:

	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		UnixShell est &agrave; 2 niveaux sous votre home directory&nbsp;:<br>
		ll ../..
              </td></tr>
	</table><br>

	<ul><a name="rep"></a>
	  <li>
	    quels sont les fichiers et r&eacute;pertoires
	    pr&eacute;sents&nbsp;?
	    <table bgcolor="yellow" border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    Des r&eacute;pertoires comme&nbsp;: ./  ../  public_html/<br>
		    Des fichiers comme&nbsp;: .profile
		  </td></tr>
	    </table><br>
	  </li>
    <a name="caches"></a>
	  <li>
	    lesquels sont cach&eacute;s&nbsp;?
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td>Tous ceux qui commencent par un point comme .profile</td></tr>
	    </table><br>
	  </li>
    <a name="proprietaire"></a>
	  <li>
	    quels sont leurs propri&eacute;taires et groupes
	    attach&eacute;s&nbsp;?
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    Propri&eacute;taires&nbsp;: surtout vous, &eacute;ventuellement l'utilisateur 
		    root<br>Groupes&nbsp;: surtout users, &eacute;ventuellement d'autres
		  </td></tr>
	    </table><br>
	  </li>
    <a name="droits"></a>
	  <li>
	    quels sont les droits aff&eacute;rants&nbsp;?
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    Possiblement variable, mais d&eacute;pendant surtout de votre umask (voir la suite)
		  </td></tr>
	    </table><br>
	  </li>
	</ul>
      </li>
      <a name="umask"></a>
      <li>
	Copiez dans votre r&eacute;pertoire <code>UnixShell</code> le
	fichier <a href="testUmask.txt"><code>testUmask.txt</code></a>
	(par un clic droit sur ce lien). Ses droits initiaux sont
	rwxrwxr-x.  Quel est votre umask&nbsp;?
        <table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left"> 
		D&eacute;pend de votre configuration, mais s'observe
		en faisant un ll pour afficher les droits pris par le
		fichier testUmask.txt lors de la copie sous votre
		compte. En prenant pour exemple les droits
		pr&eacute;sent&eacute;s plus haut : rwxrwxr-x<br>
		user (u)&nbsp;&nbsp;: rwx,&nbsp;binaire 111&nbsp;octal 7<br>
		group (g)&nbsp;: rwx,&nbsp;binaire 111&nbsp;octal 7<br>
		other (o)&nbsp;: r-x,&nbsp;binaire 101&nbsp;octal 5<br>
		Donc profil octal 775, d'o&ugrave; un umask de 002 (sa n&eacute;gation en octal).</br>
	On peut aussi lancer <code>umask</code> comme commande en ligne...</td></tr>
        </table><br>
      </li>
    <a name="chmod"></a>
      <li>
	Modifiez les droits de ce fichier de deux fa&ccedil;ons pour
	obtenir ceux qui suivent et &agrave; traiter en
	s&eacute;quence de proche en proche pour les trois cas. La
	premi&egrave;re fa&ccedil;on de proc&eacute;der utilisera un
	profil octal <em>(pas de n&eacute;gation de celui-ci comme
	pour umask)</em>, la seconde des lettres. Contr&ocirc;lez vos
	actions &agrave; chaque &eacute;tape.
	<ul>
	  <li>rwx------<br>
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    chmod 700 testUmask.txt<br>
		    chmod go-rwx testUmask.txt<br>
		    ll<br>
		    <em>-rwx------ 1 [uid] users 36 May 5 13:04 testUmask.txt</em>
		  </td></tr>
	    </table>
	  </li>
	  <li>rwxrwxrwx<br>
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    chmod 777 testUmask.txt<br>
		    chmod a+rwx testUmask.txt<br>
		    ll<br>
		    <em>-rwxrwxrwx 1 [uid] users 36 May 5 13:05 testUmask.txt</em>
		  </td></tr>
	    </table>
	  </li>
	  <li>rwxr-xr--<br>
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    chmod 754 testUmask.txt<br>
		    chmod go-w,o-x testUmask.txt<br>
		    ll<br>
		    <em>-rwxr-xr-- 1 [uid] users 36 May 5 13:06 testUmask.txt</em>
		  </td></tr>
	    </table>
	  </li>
	</ul><br>
      </li>
    <a name="find"></a>
      <li>
	Identifiez le chemin o&ugrave; se trouve votre fichier
	<code>.profile</code>, &agrave; partir de votre <code>home
	directory</code>.
        <table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		find ../.. -name .profile<br>
		<em>/dps/users/[uid]/.profile</em>
	      </td></tr>
        </table><br>
      </li>
  <a name="users"></a>
      <li>
	Affichez tous les fichiers du groupe <code>users</code> de
	votre r&eacute;pertoire
	<code>UnixShell</code>. Contr&ocirc;lez ce r&eacute;sultat
	avec un listing complet de son contenu.
        <table border="1" class="commands" style="margin-left:0;">
            <tr><td style="text-align:left">
		find /dps/users/[uid]/public_html/UnixShell -group users<br>
		<em>/dps/users/[uid]/public_html/UnixShell/monHistorique.txt<br>
		  /dps/users/[uid]/public_html/UnixShell/testUmask.txt</em><br>
		ll<br>
		<em>drwxrwxr-x&nbsp;&nbsp;4 [uid] users&nbsp;1024 May&nbsp;&nbsp;5 13:15 ./<br>
		  drwxrwxr-x&nbsp;16 [uid] users&nbsp;&nbsp;512 Apr&nbsp;25 16:35 ../<br>
		  -rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;&nbsp;212 May&nbsp;&nbsp;5 10:10 monHistorique.txt<br>
		  -rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;&nbsp;&nbsp;25 Apr&nbsp;&nbsp;5 13:01 testUmask.txt</em>
	      </td></tr>
        </table><br>
      </li>
  <a name="diff"></a>
      <li>
	Copiez dans votre r&eacute;pertoire <code>UnixShell</code> le
	fichier <a href="testDiff1.txt"><code>testDiff1.txt</code></a>
	(par un clic droit sur ce lien). Ouvrez-le dans xemacs et
	modifiez-le selon les consignes qui s'y trouvent. Ensuite,
	sauvegardez-le comme <code>testDiff2.txt</code>.  Comparez les
	deux fichiers, analysez le rapport obtenu en fonction de vos
	actions.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		diff testDiff1.txt testDiff2.txt<br>
		<em>3a4<br>
		  &gt; LIGNE AJOUTEE<br>
		  6d6<br>
		  &lt; LIGNE A SUPPRIMER<br>
		  9c9<br>
		  &lt; Modifiez-moi !!!<br>
		  ---<br>
		  &gt; Modifi&eacute;e</em>
	      </td></tr>
	</table><br>
      </li>
    </ul>

    <h3>Archivage et compression</h3>

    <ul><a name="tarUnixShell"></a>
      <li>
	Archivez en un seul tarfile tout le contenu de votre
	r&eacute;pertoire <code>UnixShell</code> (placez-vous
	au-dessus). Contr&ocirc;lez le fichier <code>.tar</code>
	r&eacute;sultat.

	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		Le plus simple est d'abord de vous d&eacute;placer dans le 
		r&eacute;pertoire parent de <code>UnixShell</code> pour 
		l'archiver&nbsp;:<br>
		cd ..<br>
		pwd<br>
		<em>/dps/users/[uid]/public_html</em>
		<br>ll<br>
		<em>drwxrwxr-x&nbsp;&nbsp;4 [uid] users&nbsp;&nbsp;1024 Apr&nbsp;&nbsp;5 13:15 ./<br>
		  drwxrwxr-x&nbsp;16 [uid] users&nbsp;&nbsp;&nbsp;512 Apr&nbsp;25 16:35 ../<br>
		  drwxrwxr-x&nbsp;&nbsp;4 [uid] users&nbsp;&nbsp;1024 Apr&nbsp;25 10:03 UnixShell</em><br><br>
		tar -cvf Archives.tar UnixShell<br>
		ll<br>
		<em>drwxrwxr-x&nbsp;&nbsp;4 [uid] users&nbsp;&nbsp;1024 Apr&nbsp;&nbsp;5 13:15 ./<br>
		  drwxrwxr-x&nbsp;16 [uid] users&nbsp;&nbsp;&nbsp;512 Apr&nbsp;25 16:35 ../<br>
		  drwxrwxr-x&nbsp;&nbsp;4 [uid] users&nbsp;&nbsp;1024 Apr&nbsp;25 10:03 UnixShell<br>
		  -rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;10240 May&nbsp;&nbsp;5 14:23 Archives.tar</em><br><br>
		tar -tvf Archives.tar<br>
		<em>drwxrwxr-x [uid]/users&nbsp;&nbsp;&nbsp;0 2003-05-05 14:02 UnixShell/<br>
		  -rwxrwxr-x [uid]/users&nbsp;212 2003-05-05 10:10 UnixShell/monHistorique.txt<br>
		  -rwxrwxr-x [uid]/users&nbsp;261 2003-05-05 14:12 UnixShell/testDiff1.txt<br>
		  -rwxrwxr-x [uid]/users&nbsp;249 2003-05-05 14:13 UnixShell/testDiff2.txt</em><br>
              </td></tr>
	</table><br>
      </li>
    <a name="tarzip"></a>
      <li>
	Cr&eacute;ez le sous-r&eacute;pertoire <code>tarzip</code>
	(sous <code>UnixShell</code> o&ugrave; vous revenez) et
	d&eacute;placez-y votre tarfile. Sans vous d&eacute;placer
	dans ce sous-r&eacute;pertoire, d&eacute;sarchivez le tarfile
	et contr&ocirc;lez le r&eacute;sultat.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		cd UnixShell<br>
		pwd<br>
		<em>/dps/users/[uid]/public_html/UnixShell</em><br><br>
		
		mkdir tarzip<br>
		mv ../Archives.tar tarzip<br><br>
		
		tar -xvf tarzip/Archives.tar<br>
		<em>UnixShell/<br>
		  UnixShell/monHistorique.txt<br>
		  UnixShell/testDiff1.txt<br>
		  UnixShell/testDiff2.txt<br></em><br>
		
		ll<br>
		<em>drwxrwxr-x 4 [uid] users&nbsp;&nbsp;&nbsp;512 May&nbsp;&nbsp;5 15:25 ./<br>
		  drwxrwxr-x 4 [uid] users&nbsp;&nbsp;1024 Apr&nbsp;25 10:03 ../<br>
		  drwxrwxr-x 4 [uid] users&nbsp;&nbsp;1024 May&nbsp;&nbsp;5 14:23 UnixShell/<br>
		  -rwxrwxr-x 1 [uid] users&nbsp;&nbsp;&nbsp;212 May&nbsp;&nbsp;5 10:10 monHistorique.txt<br>
		  drwxrwxr-x 2 [uid] users&nbsp;&nbsp;&nbsp;512 May&nbsp;&nbsp;5 15:18 tarzip/<br>
		  -rwxrwxr-x 1 [uid] users&nbsp;&nbsp;&nbsp;261 May&nbsp;&nbsp;5 14:12 testDiff1.txt<br>
		  -rwxrwxr-x 1 [uid] users&nbsp;&nbsp;&nbsp;249 May&nbsp;&nbsp;5 14:13 testDiff2.txt</em><br><br>
		
		
		Si vous avez travaill&eacute; comme cela, vous devez
		constater que le r&eacute;pertoire
		<code>UnixShell</code> s'est d&eacute;sarchiv&eacute;
		sous lui-m&ecirc;me... C'est bien s&ucirc;r un exemple
		se voulant surtout didactique. Dans une situation plus
		concr&egrave;te, le d&eacute;sarchivage doit
		s'op&eacute;rer aux bons endroits&nbsp;!
	      </td></tr>
	</table><br>
      </li>
    <a name="gzip"></a>
      <li>
	Toujours en restant sous <code>UnixShell</code>, compressez le
	tarfile en <code>.gz</code>. Affichez ensuite les informations
	relatives aux tailles de fichiers et au ratio de
	compression.<br>

	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		gzip tarzip/Archives.tar<br>
		ll tarzip<br>
		<em>-rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;612 May
		  &nbsp;&nbsp;5 16:23 Archives.tar.gz</em><br><br>
		gzip -l tarzip/Archives.tar.gz<br>
		<em>compressed uncompr. ratio uncompressed_name<br>
		  612&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
		  10240&nbsp;&nbsp;&nbsp;&nbsp;94.3% tarzip/Archives.tar</em><br>
              </td></tr>
	</table><br>
      </li>
      <a name="gunzip"></a>
      <li>
	Toujours en restant sous <code>UnixShell</code>,
	d&eacute;compressez le tarfile.gz sur le disque. Puis
	v&eacute;rifiez le r&eacute;sultat en listing
	complet. Recompressez le tarfile et contr&ocirc;lez de
	nouveau.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		gunzip tarzip/Archives.tar<br>
		ll tarzip<br>
		<em>-rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;10240 May
		  &nbsp;&nbsp;5 14:23 Archives.tar</em><br><br>
		
		gzip tarzip/Archives.tar<br>
		<em>-rwxrwxr-x&nbsp;&nbsp;1 [uid] users&nbsp;612 May
		  &nbsp;&nbsp;5 16:48 Archives.tar.gz</em><br>
              </td></tr>
	</table><br>
      </li>
    <a name="gzcat"></a>
      <li>
	Toujours en restant sous <code>UnixShell</code>, et sans
	d&eacute;compresser le tarfile.gz sur le disque, comptez le
	nombre de lignes non compress&eacute;es qu'il renferme.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		gunzip -c tarzip/Archives.tar | wc -l
              </td></tr>
	</table><br>
      </li>
    </ul>

    <h3>Gestion des processus</h3>
    
    <ul>
      <li>Activez plusieurs processus pour pouvoir travailler avec eux&nbsp;:
	<ul><a name="T1"></a>
	  <li>Dans votre terminal courant, ouvrez un xemacs si ce
	  n'est pas d&eacute;j&agrave; fait. Avec TeraTerm, omettez
	  ici le &amp;. Ouvrez-y l'un de vos fichiers texte puis
	  quittez xemacs, SANS FERMER, avec
	  <code>control-z</code>. Vous r&eacute;cup&eacute;rez la main
	  en conservant xemacs ouvert.
          <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
                    Ce premier terminal sera appel&eacute; T1 par la suite.
		  </td></tr>
	    </table><br>
          </li>
	<a name="T2"></a>
	  <li>
	    Ouvrez un second terminal (o&ugrave; vous pouvez rester en
	    <code>home directory</code>).
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
                    Ce second terminal sera appel&eacute; T2 par la suite.
		  </td></tr>
	    </table><br>
          </li>
	</ul>
      </li>
  <a name="ps"></a>
      <li>Affichez, dans chaque terminal, vos processus actifs.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		
		Les num&eacute;ros de processus qui suivent sont bien
		s&ucirc;r donn&eacute;s &agrave; titre indicatif. Les
		<code>PID</code> que vous aurez seront
		diff&eacute;rents lors de vos TP.<br><br>

		<b>POUR T1&nbsp;:</b><br>
		ps<br>
		<em>&nbsp;&nbsp;&nbsp;PID TTY&nbsp;&nbsp;&nbsp;&nbsp;TIME CMD<br>
		  &nbsp;14229 pts/19 0:01 xemacs-2<br>
		  &nbsp;13510 pts/19 0:00 ksh</em><br><br>
		<b>POUR T2&nbsp;:</b><br>
		ps<br>
		<em>&nbsp;&nbsp;&nbsp;PID TTY&nbsp;&nbsp;&nbsp;&nbsp;TIME CMD<br>
		  &nbsp;13843 pts/20 0:00 ksh</em>
              </td></tr>
	</table><br>
      </li>
  <a name="top"></a>
      <li>
	Affichez, dans votre terminal principal, la liste de tous les
	processus du site (sans alt&eacute;ration de
	priorit&eacute;). Comparez avec les deux commandes
	pr&eacute;c&eacute;dentes. Qu'en d&eacute;duire&nbsp;?
	<table bgcolor="yellow" border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		<b>POUR T1&nbsp;:</b><br>
		top<br><em>
		  last&nbsp;pid:&nbsp;16210;&nbsp;&nbsp;load&nbsp;averages:&nbsp;&nbsp;0.05,&nbsp;
		  &nbsp;0.09,&nbsp;&nbsp;0.11&nbsp;&nbsp;&nbsp;11:01:28<br>
		  260&nbsp;processes:&nbsp;257&nbsp;sleeping,&nbsp;1&nbsp;zombie,&nbsp;1
		  &nbsp;stopped,&nbsp;1&nbsp;on&nbsp;cpu<br>
		  CPU&nbsp;states:&nbsp;&nbsp;&nbsp;%&nbsp;idle,&nbsp;&nbsp;
		  &nbsp;%&nbsp;user,&nbsp;&nbsp;&nbsp;%&nbsp;kernel,&nbsp;
		  &nbsp;&nbsp;%&nbsp;iowait,&nbsp;&nbsp;&nbsp;%&nbsp;swap<br>
		  Memory: 2048M real, 1301M free, 318M swap in use, 5201M swap free<br><br>
		  
		  &nbsp;&nbsp;PID USERNAME THR PRI NICE&nbsp;SIZE&nbsp;
		  &nbsp;RES STATE TIME&nbsp;&nbsp;CPU COMMAND<br>
		  16210 [uid]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;38&nbsp;&nbsp;
		  &nbsp;0 1896K 1232K cpu/1 0:00 0.46% top<br>
		  19380 vidal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;46&nbsp;
		  &nbsp;&nbsp;4&nbsp;&nbsp;&nbsp;16M&nbsp;&nbsp;&nbsp;13M sleep 0:36
		  0.24% xemacs-21.4.10<br>
		  14977 haumont&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;58&nbsp;&nbsp;
		  &nbsp;0 8496K 5920K sleep 0:00 0.21% vim<br>
		  14229 [uid]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;42&nbsp;&nbsp;
		  &nbsp;4&nbsp;&nbsp;&nbsp;17M&nbsp;&nbsp;&nbsp;14M sleep 0:35
		  0.17% xemacs-2<br>
		  12720 stan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;&nbsp;28
		  &nbsp;&nbsp;10 4424K 1960K sleep 0:10 0.05% httpd<br>
		  14292 zasadzin&nbsp;&nbsp;1&nbsp;&nbsp;58&nbsp;&nbsp;
		  &nbsp;0 5000K 3608K sleep 0:00 0.04% textedit<br>
		  29591 root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;23&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;
		  &nbsp;0&nbsp;&nbsp;&nbsp;53M&nbsp;&nbsp;&nbsp;23M sleep 9:13
		  0.01% java<br>
		  13469 morelc&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;38&nbsp;&nbsp;
		  &nbsp;0 1824K 1192K sleep 0:00 0.01% ksh<br>
		  17942 haumont&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;58&nbsp;&nbsp;
		  &nbsp;0 2864K 2248K sleep 0:00 0.01% olwm<br>
		  19317 vidal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8&nbsp;&nbsp;58&nbsp;
		  &nbsp;&nbsp;0 9880K 7920K sleep 0:01 0.01% dtwm<br>
		  12719 stan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;
		  28&nbsp;&nbsp;&nbsp;10 4424K 1792K sleep 0:10 0.00% httpd<br>
		  12724 stan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;
		  28&nbsp;&nbsp;&nbsp;10 4424K 2064K sleep 0:09 0.00% httpd<br>
		  16200 morelc&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;48&nbsp;&nbsp;
		  &nbsp;0 1176K&nbsp;&nbsp;888K sleep 0:00 0.00% more<br>
		  16199 morelc&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;58&nbsp;&nbsp;
		  &nbsp;0&nbsp;&nbsp;976K&nbsp;&nbsp;640K sleep 0:00 0.00% DamCat<br>
		</em><br>
		<b>Que d&eacute;duire&nbsp;:</b><br>
		<ul>
		  <li>
		    Tous vos processus ne sont pas
		    n&eacute;cessairement visibles avec un
		    <code>top</code>. Ceci d&eacute;pend des
		    priorit&eacute;s qui leur sont affect&eacute;es
		    (col. PRI/NICE)
		  </li>
		  <li>
		    Vos principaux processus sont rep&eacute;rables
		    parmi l'ensemble de ceux du site. Cela permet de
		    savoir s'il faut alt&eacute;rer la priorit&eacute;
		    de l'un (ou de plusieurs) de vos processus pour
		    laisser de la CPU &agrave; d'autres processus plus
		    importants
		  </li>
		  <li>
		    La place prise en m&eacute;moire par vos processus
		    vous permet d'en suivre l'ex&eacute;cution (en
		    laissant un <code>top</code> actif pendant
		    plusieurs secondes)
		  </li>
		</ul>
              </td></tr>
	</table><br>
      </li>
  <a name="nice"></a>
      <li>
	La commande pr&eacute;c&eacute;dente &eacute;tant toujours
	active&nbsp;:
	<ul>
	  <li>Alt&eacute;rez sa priorit&eacute; en la passant &agrave; 10.
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    renice 10 16210<br>
		    <em>[...]<br>
		      16210 [uid]&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;38&nbsp;&nbsp;
		      10 2760K 1736K cpu/1 0:00 0.32% top<br>
		      [...]</em>
		  </td></tr>
	    </table><br>
          </li>
      <a name="u"></a>
	  <li>Affichez vos seuls processus.
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    u [uid]<br>
		    <em>[...]<br>
		      16210 [uid]&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;58&nbsp;
		      &nbsp;0 2760K 1744K cpu/0 0:00 0.49% top<br>
		      13510 [uid]&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;48&nbsp;
		      &nbsp;0 1800K 1120K sleep 0:00 0.03% ksh<br>
		      14229 [uid]&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;55&nbsp;
		      &nbsp;0&nbsp;&nbsp;&nbsp;14M&nbsp;&nbsp;&nbsp;10M&nbsp; 
		      stop 0:00 0.00% xemacs-2<br>
		      13843 [uid]&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;48&nbsp;
		      &nbsp;0 1800K 1096K sleep 0:00  0.00% ksh<br>
		      [...]<br></em>
                  </td></tr>
	    </table><br>
    </li>
    <a name="kill"></a>
	  <li>
	    Terminez le processus correspondant &agrave; xemacs en
	    t&acirc;che de fond.
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    kill -9 14229
		  </td></tr>
	    </table><br>
          </li>
<a name="quit"></a>
	  <li>Observez ce qui se passe et commentez-le.
	    <table border="1" class="commands" style="margin-left:0;">
		<tr><td style="text-align:left">
		    Pensez &agrave; quitter <code>top</code>.
		  </td></tr>
	    </table><br>
          </li>
	</ul>
      </li>
  <a name="ps2"></a>
      <li>
	Affichez de nouveau, dans votre terminal principal, vos
	processus actifs.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left"> 

		Pour contr&ocirc;ler, fa&icirc;tes un <code>ps</code>
		car vous ne voyiez peut-&ecirc;tre pas ce processus
		par <code>top</code> pr&eacute;c&eacute;demment. Le
		processus 14229 correspondant &agrave; xemacs a bien
		disparu.<br>
		
		Mais le processus 13510 correspondant au
		<code>ksh</code> du terminal T1 est lui toujours
		l&agrave; (ce qu'est ce <code>ksh</code> sera vu
		d&egrave;s le cours suivant).
	      </td></tr>
	</table><br>
      </li>
  <a name="kill2"></a>
      <li>
	&Agrave; partir de votre terminal principal, terminez le
	processus correspondant au second terminal.
	<table border="1" class="commands" style="margin-left:0;">
	    <tr><td style="text-align:left">
		
		Ces <code>ksh</code> sont donc li&eacute;s aux
		terminaux ouverts.  Au besoin, par un <code>ps</code>,
		vous pouvez v&eacute;rifier le <code>PID</code> du
		<code>ksh</code> reli&eacute; au terminal T2 (vu avant
		ici&nbsp;: 13843).<br><br>

		top<br>
		kill -9 13843<br>
		q<br><br>
		Cela a bien pour effet de fermer votre terminal T2.
	      </td></tr>
	</table><br>
      </li>
    </ul>
    
    <hr>
    <address><a href="mailto:philippe.houdry@inist.fr">Philippe.Houdry@inist.fr</a></address>
  </body>
</html>