initial commit

This commit is contained in:
Guillaume-Sanchez
2026-05-26 13:56:03 +02:00
parent 4c720637a1
commit ff4bb12d22
539 changed files with 12415 additions and 0 deletions
Binary file not shown.
+23
View File
@@ -0,0 +1,23 @@
# GND100-27-09-24
## Qu'est-ce qu'un projet ?
### Des instances :
Les différentes instance :
* La direction général doit être appliqué.
Le comité de pilotage
* Rassurer le client, être honête, rassurer, ou on en est, ce qu'il reste.
* equipe projet,
* les pilotes
a partir d'un certaine taille d'une entreprise, on peut retrouver un cohoridinateur.
La Loi de 80/20%
TP :
Eddie Obeng est un entrepreneur, éducateur et auteur reconnu pour ses travaux sur le management et l'innovation. Il est le fondateur de l'école de management "Pentacle" et a développé des concepts sur la façon de naviguer dans un monde en constante évolution, en mettant l'accent sur la créativité et la collaboration. Ses conférences et publications portent souvent sur l'importance de l'adaptabilité et de l'apprentissage continu dans le milieu professionnel. Si tu cherches des informations spécifiques sur ses travaux ou ses idées, n'hésite pas à demander !
Binary file not shown.
+4
View File
@@ -0,0 +1,4 @@
# GND100-08-01-25
## Les fondamentaux du management de projet
Binary file not shown.
+6
View File
@@ -0,0 +1,6 @@
# GDN 100 Management
* [27/09/24](./GDN100-27-09-24/)
* [08/01/25](./GDN100-08-01-25/)
* [06/03/25](./GDN100-06-03-25/)
* [17/04/25](./GDN100-17-04-25/)
+32
View File
@@ -0,0 +1,32 @@
# NFE114 05 03 2025
## Différente méthode
- Méthode en V, la classque
- Methode Agile
Etre agil, c'est surtout, concidérer le bien être.
Accorder une grande importance sur l'avis client.
Avoir une productivité efficace.
## Commeent commencer un projet :
* Besoins
* Analyse des besoins
* Etude de faisabilités
* Expression de Besoin
* Cahier des charges
* Expression fonctionnelles
* Etude
* Modelisation
* Developpement
## La Méthode Agil
Créé en 2001 par 17 consultants
Découper le besoin et prioriser
Découper la réalisation
- Livrer fréquemment des incréments de produit
- Accepter les changement
Controller régulièrement les changements.
Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

+39
View File
@@ -0,0 +1,39 @@
# NFE114 16 04 2025
## Agilité
Représente les 3 éléments :
- Lesindividus et leur interactions
- Des logiciels opérationnels
- L'adaptation au changement
Product BackLog :
Product Owner :
Sprint backlog :
Equipe :
Daily meeting :
Sprint :
Produit lirable :
## Scrum
USER STORIES :
| En tant que | Je voudrais | Afin de |
| :---------------: |:---------------:| :-----:|
| Visiteur | Visualiser la page d'acceuil | Voir les dernière offre du moment |
| Visiteur | Chercher un restaurant | Trouver un endroit ou manger |
| Visiteur | Vérifier les restaurants autour de moi | Trouver un endroit ou manger |
| Visiteur | M'inscrir | Pouvoir reserver un restaurant |
| Visiteur | Me connecter | Pouvoir reserver un restaurant |
| Membre | Pouvoir reserver un restaurant | Organiser un repas en restaurant |
| Membre | D'accèder a un profil | Pouvoir changer mes données |
| Membre | Supprimer mon compte | Pouvoir converserver mon anonyma sur internet |
| Modératuer | Ajouter une annonce | Promouvoir un restaurant |
| Admnistrateur | Accèder au back office | Pouvoir gérer les rôles utilisateur |
![Image](./Image.png)
quel est m'inportance entre Scrum master et product owner
+2
View File
@@ -0,0 +1,2 @@
# NFE114 30 04 25
+19
View File
@@ -0,0 +1,19 @@
# NFE114 12 06 25
## Date exam
NFE114 23 Juin Mr Larcher ou Madame Kanaoui
RSX101 27 juin après midi Mr Karouit
NSY104 8 Juillet Matin Mr Kourital
Sec102 CC
Sec101 Jeudi 7/10/11 Septembre Mr LARCHER
RSX112 Vendredi 7/10/11 Septembre Mr LARCHER
## Soutenance :
Fin juin
Entreprise, Service, Mission,
## NFE114 :
+3
View File
@@ -0,0 +1,3 @@
# NFE114 Système d'information Web
* [05/03/25](./NFE114-05-03-25)
+191
View File
@@ -0,0 +1,191 @@
# Revision NFE114
## Agil
>origine USA, en 2001
### Les étapes dun projet classique
- besoin
- analyse des besoins
- etude de faisabilité
- expression des besoins
- cahier des charges
- expression fonctionnel
- etude
- modelisation
- dev
### Faiblesses méthode classique :
- peu dadaptation aux changement du client
- peu de relation avec le client
- faible gestion de lincertitude et du risque
### Objectif de lagilité :
- trouver un compromis entre minimum de méthode tout en restant adaptable et créatif
- accepter le changement des besoins et être capable dy répondre
- privilégier le code plutôt que la documentation
### Les moyens :
- utiliser un dev iteratif et incrémental
- decouper le besoin et prioriser
- decouper la réalisation : livrer fréquemment des incrément de produit, accepter les changement
-controler régulièrement lavancement avec les parties prenantes
Def partie prenante : `personne qui est intéressé dune façon ou dune autre par le produit réalisé par l équipe`
### Manifeste Agile
- Individus et interactions -plutot-que-> Procédures et outils
- Un logiciel fonctionne -plutot-que-> Documentation exhaustive
- Collaboration avec le clien -plutot-que-> Négociation du contrat
- Adaptation au changement -plutot-que-> Exécution d'un plan
![tradicionelVSAgil](./tradicionelVSAgil.png)
### Facteurs de succès des méth. agiles
- Le client / lutilisateur (ou son représentant) est impliqué quotidiennement
- Le management intermédiaire soutient l’équipe
- L’équipe est auto-organisée
- Les pratiques sont adaptées au mode incrémental
- "Des tests automatisés : rejoués souvent
- Code compréhensible car va être sans doute modifié
- Code collectif
### Attentes et bénéfices des Méth Agiles
#### Attentes
1. Accélérer la livraison des logiciels et leur mise sur le marché (75%)
2. Bien gérer les changements de priorité dans les besoins des utilisateurs (64%)
3. Accroître la productivité des équipes (55%)
4. Mieux aligner les attentes du Métier et de la DSI (49%)
5. Améliorer la qualité du code produit (46%)
#### Bénéfices
1. Bien gérer les changements de priorité dans les besoins des utilisateurs (71%)
2. Avoir une bonne visibilité des projets
3. Mieux aligner les attentes du Métier et de la DSI (65%)
4. Accélérer la livraison des logiciels et leur mise sur le marché (62%)
5. Accroître la productivité des équipes (61%)
## Scrum
### ROLES SCRUM
- PRODUCT OWNER
- Définit les caractéristiques du produit
- Décide de la date de livraison et du contenu
- Responsable du retour sur investissement du produit
- Priorise les fonctions conformément à leurs valeurs business
- Ajuste les priorités pour chaque sprint
- Accepte ou rejette les résultats
- SCRUM MASTER
- Responsable de la mise en œuvre des valeurs et des pratiques de SCRUM
- Eliminer les obstacles
- Sassurer que l’équipe est fonctionnelle et productive
- Permettre la bonne coopération entre les divers rôles et fonctions
- Protéger l’équipe de toute intervention extérieure
- EQUIPE DE DÉVELOPPEMENT
- Entre 5 et 9 personnes
- Pluridisciplinaire
- Dédiée au projet
- Auto organisée
- PARTIES PRENANTES
- Personne, ou groupe de personnes qui a des intérêts sur un projet et qui est concerné par les résultats obtenus
- Exemple de parties prenantes :
- Marché
- Client final / utilisateur
- Stratégie dinnovation
- Autres équipes de lentreprise
- UTILISATEURS
- Expert
- Source dinformation privilégiée pour
- Priorité
- Détails des fonctionnalités
### CÉRÉMONIES
![sprint](./sprint.png)
#### SPRINT PLANNING : PARTIE 1
Role : PRODUCT OWNER, SCRUM MASTER, EQUIPE DE DÉVELOPPEMENT, PARTIES PRENANTES
Temps : 90 min
- Présentation de lobjectif du sprint
- Présentation des stories
- Construction du backlog de sprint
- Engagement de l’équipe
#### SPRINT PLANNING : PARTIE 2
Role : SCRUM MASTER, EQUIPE DE DÉVELOPPEMENT
Temps : 60 min
- Conception en équipe
- Découpage en tâche
- Estimation des tâches
#### MÊLÉE QUOTIDIENNE
>C'est un daily
Role : SCRUM MASTER, EQUIPE DE DÉVELOPPEMENT
Temps : 15 min, tout les jours
- Quai-je fait hier ?
- Que vais-je faire aujourdhui ?
- Est-ce que je rencontre des obstacles ?
#### DÉMONSTRATION
Role : PRODUCT OWNER, SCRUM MASTER, EQUIPE DE DÉVELOPPEMENT, PARTIES PRENANTES, UTILISATEURS
Temps : 90 min
- Chacun présente ce quil a fait
- Le PO accepte ou rejette les résultats
- Le PO note les retour
#### RÉTROSPECTIVE
- Mise en condition
- Revue des précédentes actions
- Rassembler les données
- Chercher des idées
- Plan daction
## USER STORIES
`« En tant que, j'aimerai, afin de »`
![userstories](./userstories.PNG)
| En tant que | je voudrais | afin de |
|:--|:--|:--|
| Invité | pouvoir me créer un compte | créer un compte |
| Technicien | pouvoir ajouter des tickets à mon tableau | pouvoir accéder à mes tickets |
| Technicien | pouvoir ajouter des tickets à mon tableau | pouvoir tracer les interventions |
| Technicien | pouvoir modifier mes tickets | rectifier et décrire lavancée dun ticket |
| Technicien | pouvoir organiser mes tickets | d’être organisé |
| Technicien | pouvoir créer plusieurs tableaux Kanban | séparer les différents projets |
| Technicien | pouvoir mauthentifier | daccéder à lapplication |
| Technicien | pouvoir ajouter des images à un ticket | ajouter des détails à mon ticket |
| Technicien | pouvoir rechercher mes tickets | retrouver mes anciens tickets |
| Chef d’équipe | pouvoir assigner des tickets | mieux gérer la résolution de ticket |
| Chef d’équipe| pouvoir mauthentifier | accéder à lapplication |
| Chef d’équipe | pouvoir faire tout ce quun technicien peut faire | accès aux mêmes fonctionnalités |
| Administrateur | pouvoir gérer les rôles des utilisateurs | attribuer la bon rôle au bon utilisateur |
| Administrateur | je veux pouvoir mauthentifier | accéder à lapplication |
Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

+16
View File
@@ -0,0 +1,16 @@
| En tant que | je voudrais | afin de |
|:--|:--|:--|
| Invité | pouvoir me créer un compte | créer un compte |
| Technicien | pouvoir ajouter des tickets à mon tableau | pouvoir accéder à mes tickets |
| Technicien | pouvoir ajouter des tickets à mon tableau | pouvoir tracer les interventions |
| Technicien | pouvoir modifier mes tickets | rectifier et décrire lavancée dun ticket |
| Technicien | pouvoir organiser mes tickets | d’être organisé |
| Technicien | pouvoir créer plusieurs tableaux Kanban | séparer les différents projets |
| Technicien | pouvoir mauthentifier | daccéder à lapplication |
| Technicien | pouvoir ajouter des images à un ticket | ajouter des détails à mon ticket |
| Technicien | pouvoir rechercher mes tickets | retrouver mes anciens tickets |
| Chef d’équipe | pouvoir assigner des tickets | mieux gérer la résolution de ticket |
| Chef d’équipe| pouvoir mauthentifier | accéder à lapplication |
| Chef d’équipe | pouvoir faire tout ce quun technicien peut faire | accès aux mêmes fonctionnalités |
| Administrateur | pouvoir gérer les rôles des utilisateurs | attribuer la bon rôle au bon utilisateur |
| Administrateur | je veux pouvoir mauthentifier | accéder à lapplication |
@@ -0,0 +1,13 @@
#!/usr/bin/python3
nbDecimal = int(input("Donner un nombre entier à convertir en binaire : "))
nbBinaire = []
tmp = nbDecimal
while tmp != 0:
reste = tmp % 2
nbBinaire.append(reste)
tmp = tmp // 2
nbBinaire.reverse()
print("({})b10 = ({})b2".format(nbDecimal, nbBinaire))
@@ -0,0 +1,11 @@
nbDecimal = int(input("Donner un nombre entier à convertir en binaire : "))
nbBinaire = []
tmp = nbDecimal
while tmp != 0:
reste = tmp % 2
nbBinaire.append(reste)
tmp = tmp // 2
nbBinaire.reverse()
print("({})b10 = ({})b2".format(nbDecimal, nbBinaire))
@@ -0,0 +1,15 @@
#!/usr/bin/python3
''' conversion partie fractionnaire d'un nombre décimal en binaire '''
def calcul(nbDec):
digit = []
while nbDec != 0:
nbDec *= 2
digit.append((int(nbDec)))
nbDec = nbDec - int(nbDec)
return digit
if __name__ == '__main__':
nbDec = float(input("Donner le nombre décimal à convertir : "))
print(calcul(nbDec))
@@ -0,0 +1,15 @@
#!/usr/bin/python3
''' conversion partie fractionnaire d'un nombre décimal en binaire '''
def calcul(nbDec):
digit = []
while nbDec != 0:
nbDec *= 2
digit.append((int(nbDec)))
nbDec = nbDec - int(nbDec)
return digit
if __name__ == '__main__':
nbDec = float(input("Donner le nombre décimal à convertir : "))
print(calcul(nbDec))
@@ -0,0 +1,15 @@
#!/usr/bin/python3
''' conversion partie fractionnaire d'un nombre décimal en binaire '''
def calcul(nbDec):
digit = []
while nbDec != 0:
nbDec *= 2
digit.append((int(nbDec)))
nbDec = nbDec - int(nbDec)
return digit
if __name__ == '__main__':
nbDec = float(input("Donner le nombre décimal à convertir : "))
print(calcul(nbDec))
@@ -0,0 +1,15 @@
#!/usr/bin/python3
''' conversion partie fractionnaire d'un nombre décimal en binaire '''
def calcul(nbDec):
digit = []
while nbDec != 0:
nbDec *= 2
digit.append((int(nbDec)))
nbDec = nbDec - int(nbDec)
return digit
if __name__ == '__main__':
nbDec = float(input("Donner le nombre décimal à convertir : "))
print(calcul(nbDec))
@@ -0,0 +1,16 @@
#!/usr/bin/python3
''' conversion partie fractionnaire d'un nombre décimal en binaire '''
def calcul(nbDec):
digit = []
nbDec = nbDec - int(nbDec)
while nbDec != 0:
nbDec *= 2
digit.append((int(nbDec)))
nbDec = nbDec - int(nbDec)
return digit
if __name__ == '__main__':
nbDec = float(input("Donner le nombre décimal à convertir : "))
print(calcul(nbDec))
+73
View File
@@ -0,0 +1,73 @@
# NSY104 09 01 2025
> Le Module est un 100% parcielle, il n'y a pas e devoir maison.
## Numération de base
### Addition Binaire :
01101+10111 = 100100
### Soustraction Binaire :
1101110-10111 = 1010111
Voir des video car le prof explique ... commme à son habitude.
### Exercice :
#### 2.1 :
397 = 110001101
133 = 10000101
110 = 1101110
101 = 5
0101 = 5
1101110 = 110
#### 2.2
a) 1100+1000 =
1100
+1000
------
10100
b) 1001+1011 =
1001
+1011
------
10100
c) 1100-1000 =
1100
-1000
------
0100
d) 1000-101 =
1000
- 101
------
0011
e) 1+1+1+1 =
1 1 10
+ 1 -> + 1 -> + 10
---- ---- ----
10 10 100
#### 2.3
a) 1011*11
1011
* 11
----
@@ -0,0 +1,36 @@
/*
Ce programme initialise la variable n à 10, et l’élève au carré plusieurs fois. Les valeurs
affichées devraient donc être toutes des puissances de 10, mais en exécutant le programme,
vous verrez que ce nest pas le cas pour les dernières valeurs, qui sont trop grandes pour
être représentées correctement par le type int. Vous pouvez également changer le type de
n de int à long et short pour voir limpact sur les valeurs calculées.
Soyez donc vigilants quand votre programme doit travailler avec de grandes valeurs !
Les entiers :
byte : 1 octet de 128 à 127
short : 2 octets de 32 768 à 32 767
int : 4 octets de 2 147 483 648 à 2 147 483 647
long : 8 octets de 9 223 372 036 854 775 808 à 9 223 372 036 854 775 807
Les réels :
float : 4 octets de 1.40239846e-45F à 3.402823347e38F
double : 8 octets de 4.94065645841246544e-324D à 1.79769313486231570e308D
Note : Pour utiliser les valeurs limites en Java, on peut utiliser les constantes suivantes :
- Integer.MAX_VALUE
- Double.MAX_VALUE
*/
public class Depassement {
public static void main(String[] args) {
int n = 10;
System.out.println( n );
for (int i = 0; i < 5; i++){
n = n * n;
System.out.println( n );
}
}
}
@@ -0,0 +1,56 @@
public class Imprecision {
public static void main(String[] args) {
test1();
test2();
test3();
}//main
static void test1(){
/*Si le type double pouvait représenter parfaitement les valeurs réelles, ce programme
afficherait 0. Or, sur mon ordinateur, jobtiens environ la valeur 7.10E15 , qui est une valeur
très petite mais pas nulle. Cest parce que la variable racine ne peut stocker exactement
la racine de a, et donc lexpression racine * racine ne vaut pas exactement a.
*/
double a = 37.0;
double racine = Math.sqrt(a);
System.out.println("test1 : " + (a - racine * racine) );
}//test1
static void test2(){
/*Cest pour ça que les tests d’égalité ou dinégalité entre double (ou float) NE DEVRAIENT PAS ÊTRE utilisés.
Par exemple, le code suivant, naffiche rien, contrairement à ce quon pourrait sattendre.
*/
double a = 37.0;
double racine = Math.sqrt(a);
if (a == racine * racine) {
System.out.println( "test2 : ok" );
}
else System.out.println("test2 : pas ok !");
}//test2
static void test3(){
/*Si vous devez absolument comparer des valeurs de type double vous pouvez utiliser un test tel que celui-ci :*/
double a = 37.0;
double racine = Math.sqrt(a);
double epsilon = 7.105427357601003E-15; // test1() donne pour (a - racine * racine) = 7.105427357601002E-15
if (Math.abs(a - racine * racine) < epsilon) {
System.out.println( "test3 : ok" );
}
/*où epsilon est une très petite valeur et abs calcule la valeur absolue. Cette valeur de-
vrait être choisie selon la précision du type utilisé, mais comment déterminer cette valeur
idéalement sort largement du cadre de ce cours.*/
}//test3
}//class
@@ -0,0 +1,25 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
def twos_comp(val, bits):
"""compute the 2's compliment of int value val"""
if( (val&(1<<(bits-1))) != 0 ):
val = val - (1<<bits)
return val
binary_string = '1111' # or whatever... no '0b' prefix
out = twos_comp(int(binary_string,2), len(binary_string))
print(out)
hex_string = '0xFFFFFFFF' # or whatever... '0x' prefix doesn't matter
out = twos_comp(int(hex_string,16), 32)
print(out)
overflow = bin(129) # en binaire = 0b1000001 et en hexa = 0x81
out = twos_comp(int(overflow,2), 8)
print(out)
overflow = bin(4294967292) # en binaire = 0b11111111111111111111111111111100 et en hexa = 0xfffffffc
out = twos_comp(int(overflow,2), 32)
print(out)
@@ -0,0 +1,49 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
def dec2bin(d,nb=0):
"""dec2bin(d,nb=0): conversion nombre entier positif ou nul -> chaîne binaire (si nb>0, complète à gauche par des zéros)"""
if d==0:
b="0"
else:
b=""
while d!=0:
b="01"[d&1]+b
d=d>>1
return b.zfill(nb)
def dec2bins(d,nb=0):
"""dec2bins(d,nb=0): conversion nombre entier signé d -> chaîne binaire pour un mot de nb bits (=0 par defaut) """
# calcul de la taille mini du mot permettant de représenter la valeur signée d (signe compris)
n=1
if d>=0:
x=d
else:
x=-d-1
while (1<<n)<=x:
n+=1
n+=1
# valeur de nb à prendre pour la suite des calculs (si nb<n, le nb donné est trop faible pour le d donné)
if (nb==0) or (nb<n):
nb=n
# calculs
if d>=0:
# on renvoie la chaîne normale, complétée par des "0" à gauche et par le bit de signe = "0"
b='0' + dec2bin(d,nb-1)
else:
# on renvoie la chaîne signée, complétée par des "1" à gauche et par le bit de signe "1"
b='1' + dec2bin((1<<(nb-1))+d,(nb-1))
return b
# Exemple d'utilisation:
#print dec2bins(4294967292,32)
#komo
entier = int(input('Donner le nombre entier à convertir : '))
form = int(input('Donner le format de conversion : '))
print dec2bins(entier,form)
@@ -0,0 +1,70 @@
#include <stdio.h>
/*On peut consulter le fichier /usr/include/limits.h pour connaître les valeurs limites des différents types.
Type Occupation mémoire Plage de valeur
char 1 octet 128 to 127
int 2 à 4 octets
selon implémentation
short 2 octet 32,768 to 32,767
long 4 octet 2,147,483,648 to 2,147,483,647
unsigned char 1 octet 0 to 255
unsigned int 2 à 4 octets
selon implémentation
unsigned short 2 octet 0 to 65,535
unsigned long 4 octet 0 to 4,294,967,295
float 4 octet ±3.4 x 10e38 to ±3.4 x 10e38
double 8 octet ±1.7 x 10e308 to ±1.7 x 10e308
long double 10 octet ±3.4 x 10e4932 to ±3.4 x 10e4932
*/
int main(){
int entier = 4294967292;
int entier2 = 129; // sur 4 octets de 0 a 2147483647 et de -1 a -2147483648
char car = 'A'; //sur un octet de 0 a 127 et de -1 a -128
printf(" taille car= %d\n", sizeof( car ));
printf(" taille short = %d\n", sizeof( short ));
printf(" taille unsigned short = %d\n", sizeof( unsigned short ));
printf(" taille int = %d\n", sizeof( int ));
printf(" taille unsigned int = %d\n", sizeof( unsigned int ));
printf(" taille long int = %d\n", sizeof( long int ));
printf(" taille unsigned long int = %d\n", sizeof( unsigned long int ));
printf(" taille long long int = %d\n", sizeof( long long int ));
printf(" taille unsigned long long int = %d\n", sizeof( unsigned long long int ));
printf("4 et 4294967292 en tant que nombre sans signe : %u %u\n", 4, entier);
printf("4 et 4294967292 en tant que nombre avec signe : %d %d\n", 4, entier);
/*
4294967292 -> 11111111111111111111111111111100
complément à 2 : 00000000000000000000000000000011 + 1 = 00000000000000000000000000000100 -> -4
*/
/*entier2 = car;
printf("entier = %d\n", entier);*/
car = entier2;
printf("car = %d\n", car);
// printf("A = %x\n", car); //en hexa
// printf("A = %d\n", car); //en decimal
return 0;
}
+4
View File
@@ -0,0 +1,4 @@
# NSY104 18 02 2025
>Reprise du cours du 09/01/2025
+6
View File
@@ -0,0 +1,6 @@
# NSY104-04-03-25
Reprise "Représentation des nombres"
C'est sur à l'examen
+2
View File
@@ -0,0 +1,2 @@
# NSY 104 21 05 2025
+133
View File
@@ -0,0 +1,133 @@
# NSY104-23-05-2025
## Créer un raid 5 :
### Installation du packet mdadm :
```
apt install mdadm
```
### création des partitions :
```
cfdisk /dev/sdb
```
> -> gpt -> New -> Type -> Linux RAID -> Whrite -> Yes
```
cfdisk /dev/sdc
```
> -> gpt -> New -> Type -> Linux RAID -> Whrite -> Yes
```
cfdisk /dev/sdd
```
> -> gpt -> New -> Type -> Linux RAID -> Whrite -> Yes
```
cfdisk /dev/sde
```
> -> gpt -> New -> Type -> Linux RAID -> Whrite -> Yes
### Création du RAID5 avec mdadm :
```
mdadm --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-device=1 /dev/sde1
```
### Sauvegarde de configuration de la matrice :
```
mkfs -t ext4 /dev/md0
```
`en root :`
```
echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
```
### Montage du RAID5 :
```
mount /dev/md0 /mnt
```
### Pour voir les info :
```
cat /proc/mdstat
mdadm --detail /dev/md0
```
### Pour simuler une pan :
```
mdadm /dev/md0 -f /dev/sdc1
```
### Force L'arrêt du disque dans le RAID5
```
mdadm /dev/md0 --fail /dev/sdc1
```
### Supprimer un disque du RAID5
```
mdadm /dev/md0 --remove /dev/sdc1
```
### Supprimer les informations d'appartenance du disque
```
mdadm --zero-superblock /dev/sdc1
```
### Ajouter un disque au RAID5 :
```
mdadm /dev/md0 -a /dev/sdc1
```
### Arrêter la matrice :
```
unmount /mnt
mdadm --stop /dev/md0
```
mdadm --zero-superblock /dev/sdb1
mdadm --zero-superblock /dev/sdc1
## Pour créer un un LVM et suite du TP
apt install lvm2
```
cfdisk /dev/sdb
```
> -> gpt -> New -> Type -> Linux LVM -> Whrite -> Yes
```
cfdisk /dev/sdc
```
> -> gpt -> New -> Type -> Linux LVM -> Whrite -> Yes
fdisk -l /dev/sdb
fdisk -l /dev/sdc
pvcreate /dev/sdb1
pvdisplay /dev/sdb1
vgcreate vg01 /dev/sdb1
vgdisplay vg01
lvcreate -n data01 -L 512 vg01
ls /dev/vg01/data01
lvdeisplay -m /dev/vg01/data01
mkfs -t ext4 /dev/vg01/data01
mkdir /mnt/data01
mount /dev/vg01/data01 /mnt/data01
lvcreate -n data02 -L 512m vg01
lvdisplay -m /dev/vg01/data02
mkfs -t ext4 /dev/vg01/data02
mkdir /mnt/data02
mount /dev/vg01/data02 /mnt/data02
1 : Question de cour représentation de informations - 6 points
2 : Machine de turing - 4 points
3 : Fonctionnement d'une unité central - 4 points
4 : QCM 6 points
+2
View File
@@ -0,0 +1,2 @@
# NSY104 10 06 2025
+5
View File
@@ -0,0 +1,5 @@
# NSY 104 Architecture des systèmes informatiques
* [09/01/25](./NSY104-09-01-25)
* [18/02/25](./NSY104-18-02-25)
* [04/03/25](./NSY104-04-03-25)
+34
View File
@@ -0,0 +1,34 @@
Un projet pro stratégie qu'on met en place pour le réaliser. LA strétégie qu'on met en place pour le réaliser
- sa doit correspondre à ce que vous aimez faire
- a ce que vous savez ou saurez faire
- La réalité du marché
- embissieu
- I. Faire un bilan personnel
- II. Explorer le champs des possibles
- III. Etablire un projet concrès avec un plan d'action pour y arriver
type de compétences
- Le savoir (Les connaissances)
- Le savoir faire (ce qu'on a apprit à faire)
- Le savoir être (softskills)
première étape pour explorer les métiers et consulter les fiches métires
une fiche métier est un document qui donne des indications sur :
- La définition du poste et les missions principales (Indications potentiellement théoriques)
- Les compétences demandées
- Les profils recherchés par les entreprises (CAD : diplôme requis, expérience professionnelles recommandées)
- Les types de travail (Rémunération, types de contrat)
- Les métiers proches et les évolutions professionnelles possibles
- Des liens vers des offres d'emplois pertinentes
France travail, onisep, apec
Intégrateur Web :
L'intégrateur web assemble les différents éléments qui composent un site, de la mise en pages générale jusqu'aux animations graphiques et sonores.
:wq
+45
View File
@@ -0,0 +1,45 @@
server {
listen 80;
server_name pterodactyl.guillaume-sanchez.fr;
root /var/www/pelican/public;
index index.html index.htm index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log off;
error_log /var/log/nginx/pelican.app-error.log error;
# allow larger file uploads and longer script runtimes
client_max_body_size 100m;
client_body_timeout 120s;
sendfile off;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PHP_VALUE "upload_max_filesize = 100M \n post_max_size=100M";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
location ~ /\.ht {
deny all;
}
}
+86
View File
@@ -0,0 +1,86 @@
services:
app:
image: nextcloud
restart: always
ports:
- 80:80
depends_on:
- nextclouddb
volumes:
- ./applications/nextcloud:/var/www/html
- /mnt/data:/var/www/html/data
environment:
- MYSQL_PASSWORD=vkurnucfwirs?xxzsyf?hrhf?pllqzo?
- MYSQL_DATABASE=Nextcloud
- MYSQL_USER=nextcloud_user
- MYSQL_HOST=nextclouddb
nextclouddb:
image: app
container_name: nextcloud-db
restart: unless-stopped
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- ./nextclouddb:/var/lib/mysql
environment:
- TZ=Europe/Paris
- MYSQL_RANDOM_ROOT_PASSWORD=true
- MYSQL_PASSWORD=vkurnucfwirs?xxzsyf?hrhf?pllqzo?
- MYSQL_DATABASE=Nextcloud
- MYSQL_USER=nextcloud_user
volumes:
nextcloud:
services:
db:
image: mariadb:lts
restart: always
command: --transaction-isolation=READ-COMMITTED
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=vkurnucfwirs?xxzsyf?hrhf?pllqzo?
- MYSQL_PASSWORD=vkurnucfwirs?xxzsyf?hrhf?pllqzo?
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
redis:
image: redis:alpine
restart: always
app:
image: nextcloud
restart: always
ports:
- 80:80
depends_on:
- redis
- db
volumes:
- ./applications/nextcloud:/var/www/html
- /mnt/data:/var/www/html/data
environment:
- MYSQL_PASSWORD=vkurnucfwirs?xxzsyf?hrhf?pllqzo?
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
volumes:
nextcloud:
db:
+2
View File
@@ -0,0 +1,2 @@
# NSY104-17-12-24
Binary file not shown.
Binary file not shown.
Binary file not shown.
+2
View File
@@ -0,0 +1,2 @@
# NSY104-29-01-25
@@ -0,0 +1,27 @@
{
"auto_close": true,
"auto_open": false,
"auto_start": false,
"drawing_grid_size": 25,
"grid_size": 75,
"name": "GNS3-exercice",
"project_id": "8c9b6101-c955-41cc-8f80-c18617f0c325",
"revision": 9,
"scene_height": 1000,
"scene_width": 2000,
"show_grid": false,
"show_interface_labels": false,
"show_layers": false,
"snap_to_grid": false,
"supplier": null,
"topology": {
"computes": [],
"drawings": [],
"links": [],
"nodes": []
},
"type": "topology",
"variables": null,
"version": "2.2.53",
"zoom": 100
}
@@ -0,0 +1,10 @@
Feb 20 08:40:52.856 HYPERVISOR: Release 0.2.23-amd64/Linux (tag 2023010200)
Feb 20 08:40:52.856 HYPERVISOR: Started on IP = 127.0.0.1, TCP port = 45587.
Feb 20 08:40:52.860 HYPERVISOR: exec_cmd: hypervisor version
Feb 20 08:40:52.860 HYPERVISOR: exec_cmd: hypervisor working_dir /home/nk/Documents/UTEC-Lic_ME_2024_2025/RSX101/RSX101-20-02-25/GNS3-exercice/project-files/dynamips
Feb 20 08:40:52.860 GENERAL: working_dir=/home/nk/Documents/UTEC-Lic_ME_2024_2025/RSX101/RSX101-20-02-25/GNS3-exercice/project-files/dynamips
Feb 20 08:40:52.860 HYPERVISOR: exec_cmd: nio_bridge create Hub1
Feb 20 08:40:59.594 HYPERVISOR: exec_cmd: nio_bridge delete Hub1
Feb 20 08:40:59.597 HYPERVISOR: exec_cmd: hypervisor stop
Feb 20 08:40:59.866 HYPERVISOR: Stopped.
Feb 20 08:40:59.866 GENERAL: reset done.
@@ -0,0 +1,10 @@
Feb 20 08:45:15.793 HYPERVISOR: Release 0.2.23-amd64/Linux (tag 2023010200)
Feb 20 08:45:15.793 HYPERVISOR: Started on IP = 127.0.0.1, TCP port = 45429.
Feb 20 08:45:15.802 HYPERVISOR: exec_cmd: hypervisor version
Feb 20 08:45:15.802 HYPERVISOR: exec_cmd: hypervisor working_dir /home/nk/Documents/UTEC-Lic_ME_2024_2025/RSX101/RSX101-20-02-25/GNS3-exercice/project-files/dynamips
Feb 20 08:45:15.802 GENERAL: working_dir=/home/nk/Documents/UTEC-Lic_ME_2024_2025/RSX101/RSX101-20-02-25/GNS3-exercice/project-files/dynamips
Feb 20 08:45:15.802 HYPERVISOR: exec_cmd: atmsw create ATMSW1
Feb 20 08:45:29.403 HYPERVISOR: exec_cmd: atmsw delete ATMSW1
Feb 20 08:45:29.405 HYPERVISOR: exec_cmd: hypervisor stop
Feb 20 08:45:29.815 HYPERVISOR: Stopped.
Feb 20 08:45:29.815 GENERAL: reset done.
+47
View File
@@ -0,0 +1,47 @@
# NSY104-17-12-24
## Exercice 1(plan dadressage)
Le TD concerne la mise ne place dun plan dadressage, il est proposé sous la forme de quatre exercices
### 1.2.1 Exo 1 : Détermination de lID réseau, le masque réseau, …etc. à partir dune adresse IP
#### 179.13.33.14/29
Adresse de réseau : 179.13.33.8
Première adresse : 179.13.33.9
Dernière adresse : 179.13.33.14
Adresse de broadcast : 179.13.33.15
#### 16.23.15.33/18
00010000.00010111.00001111.000100001
Adresse de réseau : 16.23.0.0 -> 14 dernier bits tu les passe à 0 : 00010000.00010111.**00000000.00000000**
Première adresse : 16.23.0.1 -> Première on ajoute un
Dernière adresse : 16.23.63.254 -> -1 par rapport à l'adresse broadcast
Adresse de broadcast : 16.23.63.255 -> 14 dernier et tu les passes à 1 : 00010000.00010111.00**111111.11111111**
#### 178.223.0.15/12
Adresse de réseau : 178.208.0.0 -> 20 dernier bits tu les passe à 0 : 10110010.1101**0000.00000000.00000000**
Première adresse : 178.208.0.1 -> Première on ajoute un
Dernière adresse : 178.223.255.254 -> -1 par rapport à l'adresse broadcast
Adresse de broadcast : 178.223.255.255 -> 20 dernier bits tu les passe à 1 : 10110010.1101**1111.11111111.11111111**
## Routage
Routage static, définir une route manuelement
Routage Dynamique,
Lien de rondodence -> ajout d'un routeur de secours
+15
View File
@@ -0,0 +1,15 @@
# RSX101 15 04 2025
## Exercice 1
### R1
2
3
### R2
2
2
## Exercice 2
+1
View File
@@ -0,0 +1 @@
# RSX101 20 05 2025
+95
View File
@@ -0,0 +1,95 @@
# Exercice QoS
## Exercice 1 : Mise en œuvre de la QoS dans un routeur
### Question 1 :
- Entête IP : 46 80 00 20 00 00 40 00 01 02 42 AD C0 A8 01 01 E0 00 00 01 94 04 00 00
- Adresse Eternet Destination : 01 00 5E 00 00 01
- Adresse Eternet Source : A4 08 F5 61 5d 1f
- protocole IP : 4 donc IPv4
- longueur de l'entête IP : 6*4 donc 24 octets
- IP source et destination en hexadécimal :
- source : C0 A8 01 01
- destination : E0 00 00 01
- longueur totale du datagramme en décimal : 0020 -> 2*16 + 0 donc 32 octets
### Question 2 :
Non , Classe 4, si on suit la logique du tableau, on peut voir qu'il est en dessous du Low (voir correction)
### Question 3 :
#### Ingress
```
____
4 9 3 12
_____
8 5
_____
10
_____
_____
_____
_____
11 7 6 2 1
_____
```
------------------------->
11, 7, 12, 6, 9, 2, 8, 4, 1, 10, 5, 3
------------------------->
#### Egress
```
____
4 9 3 12
_____
8 5
_____
10
_____
_____
_____
_____
11 7 6 2 1
_____
```
------------------------->
11, 7, 6, 2, 8, 1, 10, 5, 12, 9, 4, 3
------------------------->
### Question 4
## Exercice 2 Voix QoS
### Question 1
## Exercice 3 Réseau IP et QoS
### Question 1
+128
View File
@@ -0,0 +1,128 @@
# RSX101 du 24 06 25
## QoS :
Avec un QoS mis en place dans un routeur, un paquet arrive au routeur, le QoS calcul sa priorité et le place dans la fil d'attente de sortie calculé selon son importance.
Mis en place par des contrat de service.
## Classifieur
Identification des flots, Lissage du trafique
DSCP : `Le DSCP est un champ d'en-tête dans le protocole IP, utilisé pour marquer les paquets de données. Ce marquage informe les routeurs et commutateurs du type de service que chaque paquet doit recevoir.`
Une fois le flux identifié, il essaye de le classifier selon l'ordenancement.
ACL : `Liste de contrôle d'accès au réseau (ACL), est constituée de règles qui permettent l'accès à un environnement informatique ou le refusent`
Ordonnancement round robin : `Le Round-robin (ou tourniquet) est un algorithme d'ordonnancement courant dans les systèmes d'exploitation adapté aux systèmes travaillant en temps partagés.`
LE paquet doit être marqué pour être identifié.
QoE : `Evaluation du retour utilisateur par rapport au QoS`
GIGUE : `la gigue (en anglais jitter) est la variation de la latence au fil du temps. Plus précisément, la gigue est la différence de délai de transmission de bout en bout entre des paquets choisis dans un même flux de paquets, sans prendre en compte les paquets éventuellement perdus.`
## Leaky Bucket (Le seau percé)
L'algorithme du seau percé (leaky bucket en anglais) permet de contrôler le nombre de paquets passant à chaque seconde par un nœud d'un réseau informatique
Si le debit de flux augmente, le seau déborde et les paquets se perde.
Pour remedier à ça, on utilise le Token Bucket.
Un paquet reçois un jetton qui donne l'ordre de sortie après le passage dans le classfieur.
lissage vs Vérification
- Dans le cas du lissage, on retarde le flux excessif, en supposant qu'il n'excède pas le débit annoncé (attention aux flux sensibles à la latence ou a la gigue comme la voix).
- Dans le cas de la vérification, on élimine le trafic en excès ou on le marque pour élimination lors de congestion (passage en mode best effort).
best effort : `C'est le trafic que les administrateurs réseau considèrent comme moins important que le trafic en temps réel.`
MPLS : `La commutation multiprotocole d'étiquettes (MPLS) est un protocole conçu pour acheminer des paquets de données vers leurs destinations rapidement et efficacement`
RSVP : `Resource ReSerVation Protocol (ou RSVP) est un protocole de la couche transport du modèle OSI, permettant de réserver des ressources dans un réseau informatique. `
## IntServ et DiffServ
## IntServ (Integrated Services) "Réservation individuelle"
- Principe : chaque flux de données (vidéo, appel, etc.) demande une réservation de ressources (bande passante, délais, etc.) à tous les routeurs du réseau avant de commencer.
- Fonctionnement : utilise le protocole RSVP (Resource Reservation Protocol) pour réserver.
- Avantages : Garantie de qualité de service (QoS) très fine et précise pour chaque flux.
- Inconvénients :
- Ne passe pas à l’échelle (trop lourd à gérer pour Internet entier).
- Beaucoup de mémoire et de traitement sur les routeurs.
> Cest comme réserver une place assise dans un train pour chaque passager individuellement.
### DiffServ (Differentiated Services) "Classes de service"
- Principe : les paquets sont marqués (avec des bits dans len-tête IP) selon leur classe de priorité, et chaque routeur traite les classes selon des règles prédéfinies.
- Pas de réservation individuelle.
- Avantages :
- Scalable : fonctionne bien sur de grands réseaux comme Internet.
- Plus simple pour les routeurs.
- Inconvénients :
- Pas de garantie absolue pour chaque flux, seulement des priorités.
- Moins précis quIntServ.
> Cest comme avoir des files prioritaires à laéroport (VIP, économique, etc.) mais sans réservation de siège.
### Résumé :
| Caractéristique | IntServ | DiffServ |
| ------------------- | ------------------------ | ------------------------------- |
| Type de QoS | Finesse par flux | Classes de service |
| Réservation | Oui (RSVP) | Non |
| Scalabilité | Faible | Bonne |
| Complexité | Haute (par flux) | Moyenne (par classe) |
| Utilisation typique | Réseaux privés critiques | Réseaux dentreprise / Internet |
### Exemple concret pour bien comprendre la différence entre IntServ et DiffServ :
Contexte :
Imaginons une entreprise qui utilise :
- des appels vidéo entre employés (sensibles au délai),
- de la navigation web (moins critique),
- et des téléchargements de fichiers lourds (peu sensibles au temps).
#### Avec IntServ (Integrated Services) :
Quand un employé commence un appel vidéo :
- Son ordinateur envoie une demande de réservation de ressources via le protocole RSVP.
- Tous les routeurs sur le chemin réservent de la bande passante et des délais spécifiques pour ce flux dappel.
- Si la réservation est acceptée, lappel commence avec des garanties fortes : pas de coupure, bonne qualité.
Avantage : chaque appel est traité comme un VIP avec sa propre "autoroute".
Inconvénient : sil y a 500 appels en même temps, chaque routeur doit gérer 500 réservations → lourd et complexe.
#### Avec DiffServ (Differentiated Services) :
Avant que les données partent :
- Ladministrateur réseau a défini que les appels vidéo seront marqués avec une priorité haute, les fichiers lourds avec une priorité basse, etc.
- Quand un appel démarre, les paquets sont marqués (ex : DSCP = Expedited Forwarding).
- Les routeurs ne réservent rien, mais ils priorisent automatiquement les paquets marqués "vidéo" par rapport aux autres.
Avantage : très simple à mettre en œuvre même si des milliers de flux circulent.
Inconvénient : si le réseau est saturé, lappel vidéo peut subir des perturbations, car rien na été réservé.
#### Conclusion :
- IntServ = comme réserver un taxi juste pour toi → service personnalisé, mais coûteux à grande échelle.
- DiffServ = comme prendre un bus avec un ticket VIP → prioritaire, mais tu partages avec dautres.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+5
View File
@@ -0,0 +1,5 @@
# NSY104
* [Cours](./Cours/)
* [17/12/24](./RSX101-17-12-24/)
* [29/01/25](./RSX101-29-01-25/)
Binary file not shown.
+22
View File
@@ -0,0 +1,22 @@
# RSX112 28 04 2025 Sécurité des Réseaux
## Systèmes d'exploitation et Droits
ASL
Capacité -> Modèle utilisateur
## AGDLP
Les groupes de sécurité.
Méthode utilisé par Microsoft.
coté utilisateur et coté fichiers géré de manière indépendante.
étendu des groupe
- GL
- GG
- GU
Binary file not shown.
Binary file not shown.
+14
View File
@@ -0,0 +1,14 @@
#!/bin/bash
# Liste des utilisateurs à créer
tab_user=('yannick' 'eulalie' 'jean' 'justine' 'pierre' 'sandrine' 'cecile' 'michel')
# Boucle pour créer chaque utilisateur
for user in "${tab_user[@]}"
do
# Création de l'utilisateur
useradd -m -s /bin/bash $user
echo -e "$user\n$user" | passwd $user
echo "Utilisateur $user créé avec succès avec le mot de passe par défaut."
done
Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

+27
View File
@@ -0,0 +1,27 @@
# Exercice2
## 3
root@ubuntu-RSX112:~# groupadd visiteurs -g 1404
## 4
root@ubuntu-RSX112:~# useradd -u 140401 -g visiteurs -m -s /bin/bash invite
## 5
root@ubuntu-RSX112:~# cat /etc/passwd | grep invite
invite:x:140401:1404::/home/invite:/bin/bash
root@ubuntu-RSX112:~# cat /etc/group | grep visiteurs
visiteurs:x:1404:
## 6
root@ubuntu-RSX112:~# chage -M 90 -W 14 -I 7 invite
## 7
root@ubuntu-RSX112:~# cat /etc/shadow | grep invite
invite:!:20206:0:90:14:7::
## 8
root@ubuntu-RSX112:~# echo -e "welc0me\nwelc0me" | passwd "invite"
## 9
useradd -u 140402 -g visiteurs -m -s /bin/bash intrus
chage -M 90 -W 14 -I 7 invite
echo -e "1234\n1234" | passwd intrus
## 10
root@ubuntu-RSX112:~# tail -n 2 /etc/shadow
invite:$6$P87urVNAHId2z7fG$GHn/.vL4nI6nsgq.uaxmGqSgTn4n39bD/0HsQwFICgKp.4dhKOiu5scPs4tdkN2Avya09zPBI5qSxfF2Fu.eC0:20206:0:90:14:7::
intrus:$6$F8Zh5OOiIrskScOO$WdDFLGZakeBdyv4DM0RCL5zvPkYpxllgi9IcucoVXb6z5ujYW.KtfW4ZsZrUkjFssJqta5ZG2qvpRmfduL6tJ/:20206:0:99999:7:::
Le nombre de jours avant expiation du mdp est passé à 99999 pour l'utilisateur intrus

Some files were not shown because too many files have changed in this diff Show More