Feat: début du chapitre sur les système d'expl

This commit is contained in:
Bertrand Benjamin 2022-10-29 14:06:26 +02:00
parent c4b9dde671
commit ee647329d7
8 changed files with 513 additions and 0 deletions

Binary file not shown.

View File

@ -0,0 +1,249 @@
\documentclass[a4paper,10pt]{article}
\usepackage{myXsim}
\usepackage{minted}
\author{Bertrand Benjamin}
\title{Système d'exploitation - Cours}
\date{octobre 2022}
\pagestyle{empty}
\begin{document}
\maketitle
\setcounter{section}{1}
\section{Commandes shell}
\begin{definition}[ Commande shell ]
Une commande shell est constituée du nom de la commande suivi dun ou plusieurs arguments. Des options peuvent être ajoutées pour modifier le comportement de la commande
\begin{center}
\begin{minipage}{0.5\linewidth}
\begin{minted}[bgcolor=base3]{bash}
commande -option1 -option2 ... arg1 arg2...
\end{minted}
\end{minipage}
\end{center}
\end{definition}
\subsection*{Mémo des commandes shell}
\setlength{\columnseprule}{0pt}
\begin{multicols}{2}
\begin{encadre}{\mintinline{bash}{ssh}}
\bigskip
\textbf{Description:} \dotfill \\[0.2cm] .\dotfill \\
\textbf{Exemples:}
\dotfill \\[0.2cm]
.\dotfill \\[0.2cm]
.\dotfill \\[0.2cm]
.\dotfill \\
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{pwd}}
\bigskip
\textbf{Description:} \dotfill \\[0.2cm] .\dotfill \\
\textbf{Exemples:}
\dotfill \\[0.2cm]
.\dotfill \\[0.2cm]
.\dotfill \\[0.2cm]
.\dotfill \\
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{cd [DOSSIER]}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{tree [OPTION]... [DOSSIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{cat [OPTION]... [FICHIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{mv [OPTION]... [SOURCE] [CIBLE]}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{cp [OPTION]... [SOURCE] [CIBLE]}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{touch [FICHIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{rm [OPTION]... [DOSSIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{mkdir [OPTION]... [DOSSIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Options courantes:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\end{itemize}
\bigskip
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\begin{encadre}{\mintinline{bash}{nano [FICHIER]...}}
\bigskip
\textbf{Description:}
\dotfill \\[0.2cm]
.\dotfill \\
\textbf{Exemples:}
\begin{itemize}[leftmargin=*]
\item \dotfill
\item \dotfill
\item \dotfill
\item \dotfill
\end{itemize}
\bigskip
\end{encadre}
\end{multicols}
\end{document}

View File

@ -0,0 +1,24 @@
user@server:$ pwd
/home/user
user@server:$ ls
Desktop Documents Download Pictures Scripts
user@server:$ cd Documents
user@server:$ ls -l
drwxr-xr-x 2 user users 4096 3 sept. 17:22 computing-fundamentals1
drwxr-xr-x 2 user users 4096 3 sept. 17:23 computing-fundamentals2
-rwxr-xr-x 2 user users 4096 3 sept. 17:23 notes.txt
user@server:$ cd ../Scripts
user@server:$ ls -l
drwxr-xr-x 2 user users 4096 3 sept. 17:22 beGood
drwxr-xr-x 2 user users 4096 3 sept. 17:23 WinAll
-rwxr-xr-x 2 user users 4096 3 sept. 17:23 cheat.doc
-rwxr-xr-x 2 user users 4096 3 sept. 17:23 ex1.py
-rwxr-xr-x 2 user users 4096 3 sept. 17:23 index.html
user@server:$ cd ../../
user@server:$ ls
Dan Foo user
user@server:$ ls -a user/Pictures/
. .. Vacances Famille 2022star.png
user@server:$ ls -a ~/
. .. .bashrc .cache .config
Desktop Documents Download Pictures Scripts

View File

@ -0,0 +1,81 @@
\begin{exercise}[subtitle={Classe renversée}, step={1}, origin={Ma tête}, topics={ Systeme d'exploitation }, tags={ Linux }, mode={\groupMode}]
Faire des recherches, préparer une diapositive puis faire la présentation de votre réponse à une des questions suivantes
\begin{multicols}{2}
\begin{enumerate}
\item À quoi sert un système d'exploitation ?
\item Quels sont les principaux systèmes d'exploitations et quels sont les liens historiques entre eux?
\item Expliquer ce qu'est un logiciel libre, un logiciel propriétaire et un logiciel gratuit.
\item Comment sont organisés les fichiers sous Linux?
\end{enumerate}
\end{multicols}
\end{exercise}
% ----------
% Étape 2
\begin{exercise}[subtitle={TP - navigation}, step={2}, origin={<++>}, topics={ Système d'exploitation }, tags={ Linux }, mode={\infoMode}]
Dans ce TP, nous allons nous déplacer et explorer le serveur où vous aviez déposé vos pages webs. Vous profiterez de ce TP pour compléter le mémo du cours.
\begin{enumerate}
\item \textbf{Connexion au serveur}
\item \textbf{Où suis-je ?} La commande \mintinline{bash}{pwd} permet de savoir quel est répertoire nous sommes. Exécuter cette commande, noter le résultat et reconnaître les différents éléments qui le composent.
\item \textbf{Que fais-je ?} Pour obtenir de l'aide, vous pouvez accéder au manuel des commandes. Pour cela, vous avez deux possibilités (qui dépendent de l'environnement Linux) :
\begin{itemize}
\item Exécuter \mintinline{bash}{man command}.
\item Exécuter \mintinline{bash}{command --help}.
\end{itemize}
Aller chercher l'aide de la commande \mintinline{bash}{pwd} pour compléter le mémo. Vous devrez par la suite explorer le manuel des commandes pour chercher le comportement voulu.
\item \textbf{Qu'y a-t-il ?} Pour lister les fichiers et dossiers du répertoire d'un répertoire, on utilise la commande \mintinline{bash}{ls}.
\begin{enumerate}
\item Lister le contenu du répertoire.
\item Lister le contenu du répertoire avec l'option \mintinline{bash}{-a}. Quel différence y a-t-il avec le résultat sans cette option?
\item Lister le contenu du répertoire avec l'option \mintinline{bash}{-l}. Noter les informations obtenus.
\item Lister le contenu du répertoire \texttt{public\_html}.
\end{enumerate}
On peut aussi utiliser la commande \mintinline{bash}{tree} qui liste les fichiers et dossiers sous forme d'arbre.
\begin{enumerate}
\setcounter{enumi}{4}
\item Exécuter la commande \mintinline{bash}{tree}.
\item Exécuter la commande \mintinline{bash}{tree} avec l'option \mintinline{bash}{-L 1} puis \mintinline{bash}{-L 2}. Que permet de faire cette option?
\end{enumerate}
\item \textbf{Où vais-je ?} Pour se déplacer, on utilisera la commande \mintinline{bash}{cd}.
\begin{enumerate}
\item Afficher le répertoire courant. Se déplacer dans le répertoire \texttt{public\_html}. Puis afficher à nouveau le répertoire courant.
\item Exécuter \mintinline{bash}{cd ../} puis afficher le répertoire courant. Que s'est-il passé ?
\item Recommencer l'opération. Afficher le répertoire courant et lister le contenu du répertoire. Que voyez-vous?
\item Recommencer encore une fois l'opération.
\item Exécuter \mintinline{bash}{cd ~}. Où êtes vous?
\item Exécuter \mintinline{bash}{cd ../../}. Où êtes vous?
\end{enumerate}
\end{enumerate}
\end{exercise}
\begin{exercise}[subtitle={Navigation virtuelle}, step={2}, origin={<++>}, topics={ Système d'exploitation }, tags={ Linux }, mode={\paperMode}]
Ci-dessous, vous trouverez un enchainement de commandes shells avec les sorties. Vous devrez dessiner l'arborescence correspondante (les dossiers seront dans des ovals et les fichiers dans des rectanbles) et indiquer en bleu les déplacements réalisés.
\begin{center}
\begin{minipage}{0.8\linewidth}
\inputminted[bgcolor=base3]{bash}{./annexes/nav_virtu.shell}
\end{minipage}
\end{center}
\end{exercise}
% ----------
% Étape 3
\begin{exercise}[subtitle={TP - interaction}, step={3}, origin={<++>}, topics={ Systeme d'exploitation }, tags={ Linux }, mode={\groupMode}]
\end{exercise}
\begin{exercise}[subtitle={Ranger \texttt{\textasciitilde\backslash public\_html}}, step={3}, origin={<++>}, topics={ Système d'exploitation }, tags={ Linux }, mode={\computerMode}]
\end{exercise}
% ----------
% Étape 4
\begin{exercise}[subtitle={Gestion des droits}, step={4}, origin={<++>}, topics={ Systeme d'exploitation }, tags={ Linux }, mode={\groupMode}]
\end{exercise}
% ----------
% Étape 4
\begin{exercise}[subtitle={Hacking}, step={5}, origin={<++>}, topics={ Systeme d'exploitation }, tags={ Linux }, mode={\groupMode}]
\end{exercise}

View File

@ -0,0 +1,73 @@
Système d'exploitation
######################
:date: 2022-10-29
:modified: 2022-10-29
:authors: Benjamin Bertrand
:tags: Linux
:category: 1NSI
:summary: Les systèmes d'exploitation et ligne de commande
Élements du programme
=====================
.. list-table:: Architectures matérielles et systèmes dexploitation
:header-rows: 1
* - Contenus
- Capacités attendues
- Commentaires
* - Systèmes d'exploitation
- Identifier les fonctions dun système dexploitation. Utiliser les commandes de base en ligne de commande. Gérer les droits et permissions daccès aux fichiers.
- Les différences entre systèmes dexploitation libres et propriétaires sont évoquées. Les élèves utilisent un système dexploitation libre. Il ne sagit pas dune étude théorique des systèmes
Progression
===========
Étape 1: système d'exploitation, classe renversée
-------------------------------------------------
Questions pour les élèves
- À quoi sert un système d'exploitation ?
- Quels sont les principaux systèmes d'exploitations et quels sont leurs liens historiques ?
- Différences entre logiciel libre et logiciel propriétaires.
- Il me faut une 4e question
Les élèves cherchent à la maison des réponses à ces questions. En classe et en groupe, ils font une synthèse, préparent une diapo puis présentent leur réponse à l'oral.
Le bilan se fera à partir des diapos commentées et complétées.
Étape 2: Ligne de commande: Navigation
--------------------------------------
Cours: anatomie d'une commande shell
.. image:: ./1B_command_memo.pdf
:height: 200px
:alt: Commande linux
TP: dans les TPs (navigation, interaction et droits) de découverte de quelques commandes shell, les élèves seront amenés à compléter une fiche mémo sur les commandes: leur fonction, les arguments et quelques options.
Commandes vues dans le TP navigation:
ssh ls pwd tree cd
Bilan: mise en commun du mémo, représentation de l'arborescence de fichiers, système de fichiers Linux.
Exercices techniques sur ordinateur ou au papier.
Étape 3: Ligne de commande: interaction
---------------------------------------
Commandes vues dans le TP navigation:
cat touch mkdir cp mv nano
Bilan: mise en commun de la fiche mémo
Exercices techniques sur ordinateur ou au papier.
Étape 4: Gérer les droits
-------------------------

Binary file not shown.

View File

@ -0,0 +1,58 @@
\documentclass[a4paper,12pt]{article}
\usepackage{myXsim}
\usepackage{minted}
\author{Benjamin Bertrand}
\title{Système d'exploitation - Plan de travail}
\tribe{1NSI}
\date{octobre 2022}
\pagestyle{empty}
\DeclareExerciseCollection{banque}
\xsimsetup{
}
\begin{document}
\maketitle
% Résumé
\bigskip
Savoir-faire de la séquence
\begin{itemize}
\item Identifier les fonctions dun système dexploitation.
\item Utiliser les commandes de base en ligne de commande.
\item Gérer les droits et permissions daccès aux fichiers.
\end{itemize}
\section{Système d'exploitation}
\listsectionexercises
\section{Navigation en ligne de commande}
\listsectionexercises
\section{Interactions en ligne de commande}
\listsectionexercises
\section{Gestion des droits}
\listsectionexercises
\section{Tout ensemble}
\listsectionexercises
\pagebreak
\input{exercises.tex}
\printcollection{banque}
\end{document}

View File

@ -0,0 +1,28 @@
\documentclass[a4paper,10pt]{article}
\usepackage{myXsim}
\usetikzlibrary{shapes.geometric}
\author{Benjamin Bertrand}
\title{Systeme d'exploitation - Solutions}
\tribe{1NSI}
\date{octobre 2022}
\DeclareExerciseCollection{banque}
\xsimsetup{
exercise/print=false,
solution/print=true,
}
\pagestyle{empty}
\begin{document}
\maketitle
\input{exercises.tex}
%\printcollection{banque}
%\printsolutions{exercises}
\end{document}