This is an old revision of the document!


Devoir 1 - Utilisation de Linux

Ayant déjà reçu un feedback, on vous propose:

Etudiez tres bien Connaissance évaluée et le support requis pour le devoir.

N'hesitez pas d'utiliser le “issues” section sur Git-ul Sd'E si vous avez des questions!

Cherchez sur la page avec issues l'information que vous voulez obtenir, avant de le demander vous meme. Il y a une grande posibilite que quelq'un a deja demande la meme information.

Si vous voulez publier un screenshot, on vous propose d'utiliser les sites qui vous permets le téléchargement gratuit des images: imgur ou ses alternatives. Dans les issues vous pouvez directement utiliser les liens vers les screenshots.

Suivez les issues et aussi les modifications apportées au énonces. Les modifications seront publier dans les paragraphes en dessous.

Informations generales

Parce qu'il y a deja des materiaux pour la mathiere USO (trouve ici ocw.cs.pub.ro) on va utiliser les machines virtuelles et les materiaux existantes sur le site. Beaucoup des liens qui se trouvent sur cette page vont vous y diriger pour des clarifications, telechargements et d'autres.

Date limite: 26 Février, heure 23:55
Temps de travaille: 7 jours

Mises a jour du l'enonce:

  • Il n'y a pas des mises a jours

Mises a jour du checker:
Version actuelle: version 1.0.0

  • Il n'y a pas des mises a jours

Si vous trouvez vous memes la solution pour une contrainte poste sur “issues”, nous vous encourageons a poster aussi la solurion une vous que vous l'avez trouve. En plus, si vous savez repondre aux questions de vos collegues n'hesitez pas de le faire.

Attention a ne pas publier sur “issues” les solutions du tasks! Vous pouvez donner des consailles ou des idees.

Connaissance évaluée

  • L'installation, la configuration, l'utilisation de la machine virtuelle et du cheker pour le Devoir 1 du Sd'e
  • La navigations dans le systeme de fichiers
  • L'utilisation du git
  • La compilation de programmes

Les machines virtuelles Devoir 1 Sd'E 2019

Lire la sectione sur les machines virtuelles - Machine Virtuelle

Utiliser le meme nom d'utilisateur et le meme mot de passe que sur fils.curs.pub.ro

En fonction de votre systeme d'exploitation telecharger la machine virtuelle compatible.

IMPORTANT: si vous avez le nouveaux processeurs (e.g. AMD Ryzen, Intel CoffeLake, KabyLake etc.) ou votre processeur est sur 64-bit et vous avez Windows 10 ou Ubuntu >= 16.04 installe vous pouvez telecharger la machine virtuelle sur 64-bit.

Comment verifier si mon systeme d'exploitation est 32-bit ou 64-bit?

Merci de parcourir les tutoriels souivants en fonction de votre systeme d'exploitation:

Verifier le devoir

Des instrcuctions d'utilisation du checker uso

Tester le devoir: le test va etre effectue sur la machine virtuelle autentifie avec l'utilisateur student, en utilisant uso. Cela peut etre execute tout le temps pour verifier si les taches ont ete bien resolues. N'essayer pas authentifier avec l'utilisateur root pour aucun devoir. Ca peut etre une raison pour l'echec des taches. Du l'autre cote, c'est pas bien pour la securite de travailler comme root.

L'utilite uso met en ouvre que les tests pour les taches du devoir actuel. Pour utiliser l'utilitaire uso, le premiere pas est de lancer Devoir 1 en utilisant sudo uso start 1. Si vous ne faites pas ca, vous n'aurez pas le checker mis en ouvre pour le devoir actuel.

Verifier la version du checker, montre a l'utilisation du commande sudo uso version. Soyez sur que vous avez la derniere version avant de continuer le travaille pour le devoir. La version actuelle est montre dans la section Informations generales presente dans l'enonce du devoir. Si vous n'avez pas la derniere version, lancez sudo uso update.

L'achemvement du devoir va etre complete en outlisant la commande sudo uso submit.

Les taches

Est interdit de publier dans la section “issue” des commandes ou de photos qui font partie de la solution partielle ou complete du devoir ou d'une tache. A la premiere infraction l'etudiant va recevoir un avertissement, est le score final du devoir est reduit avec les score du tache en discussion. A la deuxieme infraction le devoir actuel sera annule. Les infractions restent disponible tout le semestre, elles ne sont pas annulees au debut d'un autre devoir. Chaque fois que la regle est brisee , on va verifier l'historique des infractions. Les infractions vont etre mis a jour dans le cathalogue.

Tache 01 (0p)

La machine virtuelle Sd'E

Primul pas este să rulați mașina virtuală pusă la dispoziție. Informațiile necesare pentru a rula mașina virtuală se găsesc la link-ul de mai jos. Le premiere pas est de lancer la machine virtuelle disponible. Les informations necessaires pour la lancer se trouvent ci-dessus.

Verifier la connexion internet en outilisant ping vers un site et verifier que le site vous repond. (Hint: man ping)

Pour commencer le devoir vous avez besoin de connexion internet a l'interieur de la machine virtuelle, mais pour le resoudre la connexion permanente c'est pas necessaire. Pour chaque probleme trouve merci d'utiliser la sectione “issue” sur github.com/UPB-FILS/sde/issues. Soyez sur que vous avez connexion internet a l'interieur de la machine virtuelle avant de continuer le devoir.

Tache 02 (0p)

Maintenant vous avez connexion internet sur la machine virtuelle et la machine phisique (host) peut communiquer avec la machine virtuelle (guest). La machine virtuelle peut commencer assez lentement, jusqu'a 120 secondes. La machine virtuelle dispose d'une regle port forwarding qui permet la connexion facile entre la machine phisique et la machine virtuelle.

Tache 03 (0p)

SSH

Le but du ce tache est de vous connecter de la machine phisique(appele host) a la machine virtuelle(appele guest) en utilisant le protocol SSH. Du Linux/macOS vous pouvez utiliser l'utilitaire ssh (man ssh), et du windows vous pouvez utiliser le logiciel PuTTy, que vous pouvez trouver sur le lien http://www.putty.org/, section Download PuTTy. Il suffit de choisir putty.exe en dessous de la section For Windows on Intel x86.

Pour accomplir cette tache, vous avez besoin de:

  • le nom d'utilisateur de la machine guest (student)
  • le mot de passe de la machine guest (student)
  • le IP (l'adresse) de l'interface sur laquelle on veut se connecter : localhost (Hint: c'est localhost parcequ'on a utilise port forwarding)
  • Le port de l'interface sur laquelle on se connecte : 2222

Vous pouvez vous connecter de la machine host a la machine guest avec un nombre pas limite des instances de programmes utlisees au-dessus.(ssh ou PuTTy). Sur Linux/macOS vous pouvez faire la meme chose en l'ouvrant sur la machine host un nouveau tab/terminal dans lequel vous allez vous connecter a la machine guest par SSH. Lancez la commande man ssh et chercher apres le parametre -l (L petit). Sur Windows vous pouvez faire la meme chose en l'ouvrent une nouvelle instance PuTTy et en introduisant comme IP localhost et comme port 2222.

Avertisment

C'est interdit aux etudiants de modifier les parametres de roulement de la machine virtuelle. Chaque tentative de modifications de fichiers et des executables de la machine virtuelle nous donne le droit d'offrir 0 points au devoirs de l'etudiant.

Merci d'utiliser avec confiance la section “issue” qui se trouve sur github.com/UPB-FILS/sde/issues pour questions ou des choses pas claire en ce qui concerne le devoir.

Lorsque vous etes en train de faire votre devoire, si vous rencontrez des contraintes et vous avez besoin d'aide, merci de parcourir la liste des questions frequentes sur le devoir.

Tache 04 (25p)

Le checker

Devoir 1 Sd'E est verifie automatiquement a l'aide d'un checker, installe sur la machine virtuelle, sous forme de l'executable uso. Le checker doit etre lance dans un terminal et il a besoin de droits privilegiees (sudo). Lire la manierre dans la quelle vous pouvez utiliser uso mode d'emploi.

Pour ce devoir vous devez vous inscrire le nom d'utilisateur et le mot de passe du http://fils.curs.pub.ro en outilisant uso et apres en suivant les instructions du terminal (qui vont vous conduire vers http://temeuso.cs.pub.ro).

student@usohomework ~ $ sudo uso

ATTENTION!! Toutes les touches entrees au clavier dans la machine virtuelle sont enregistrees. Evitez d'entroduire des mots de passe ou des donnees sensibles/personnels.

Apres l'inscription, commencez le travaille sur Devoir 1.

student@usohomework ~ $ sudo uso start 1

Pentru a verifica dacă tema rulează corect, rulați checkerul. Pour verifier si le devoir marche bien, lancez le checker.

student@usohomework ~ $ sudo uso check

Verifiez que les premieres 4 taches sont OK

Tache 05 (35p)

[5p] Clonez dans le dossier /home/student le repository disponibile a l'adresse https://github.com/UPB-FILS/sde. Le dossier cree apres le clonage doit avoir le nom sde.

[25p] Ajoutez dans le dossier sde la structure de dossiers et fichers suivante:

Halloween
├── The Nun/
│   ├── Monastery/
│   │   ├── Finit hic Deo
│   │   ├── Crosses/
│   │   ├── Cemetery
│   ├── Castle of the Dukes
│   └── Evil $pirits
├── Anabelle/
│   ├── Motifs/
│   │   ├── Well.c
│   │   ├── Scarecrow.c
│   │   └── Staircase.c
│   ├── Ghosts/
│   │   └── The Doll
│   └── Favourite game/
│       └── Hide & Seek
└── Hotel Transylvania/
    ├── Holiday/
    │   ├── Cruise: 'Legacy'
    │   ├── Island/
    │   └── City of Atlantis
    ├── Instrument of destruction/
    │   ├── Note_sheet.c
    │   └── Kraken
    └── Monsters/
        ├── Skeleton
        ├── Mummy
        └── Werewolf

Les dossiers ont apres le nom le charactere /(slash).

Le scores est attribue du dossier racine vers les feuilles. Ca veut dire que vous pouvez faire des dossiers et fichiers qui se trouvent dans la structure et que le checker ne vas pas vous donner les points que si vous faites la structure dans une ordre. C'est pas un probleme. Si vouz creez l'ensemble de la structure, vouz pouvez creer les fichiers ou les dossiers dans n'importe quelle ordre et vous allez recevoir le scores completes.

Apres resoudre cette tache, il faut pas supprimer ou modifier le contenu du dossier ~/sde/Halloween/. Il doit rester dans cette forme pour les verifications suivants du checker. Vous aller perdre les points obtenues pout cette tache si vous faites de modifications et il serra necessaire de refaire la tache.

Tache 06 (12p)

[12p] Entrez dans le dossier sde, et utilisez une seule commande pour chaque tache suivante:

  1. Faites une copie du dossier Halloween du dossier sde qui doit s'appeller Copie et qui doit se trouve toujours dans le dossier sde(maintenant, dans le dossier sde vous allez voire les deux dossiers: Halloween et Copie).
  2. Dans le dossier Copie: Virez le dossier Kraken du Instrument of destruction dans Monsters.
  3. Dans le dossier Copie: renommez Hide & Seek en Hide and Seek.
  4. Dans le dossier Copie: renommez Evil $pirits en Evil Spirits.
  5. Dans le dossier Copie: Ajoutez le fichier Hunted.c dans le dossier Ghosts.

Les taches au-dessus doivent etre resolues dans l'ordre.

După rezolvarea cerințelor acestui task, nu ștergeți sau modificați conținutul directorului ~/sde/Copie/. Acesta trebuie să râmână în această formă pentru verificările ulterioare ale checkerului. Veți pierde punctele obținute pentru acest task dacă faceți modificări și va fi nevoie de refacerea taskului. Apres la resolution du cette tache (Tache 06), il faut pas supprimer ou modifier le contenu du dossier ~/sde/Copie/. Il doit rester dans cette forme pour les verifications suivants du checker. Vous aller perdre les points obtenues pout cette tache si vous faites de modifications et il serra necessaire de refaire la tache.

Tache 07 (28p)

Pour cette tache vous avez besoin du fichier boo.c qui se trouve a l'adresse:

https://raw.githubusercontent.com/UPB-FILS/sde/master/tema1/boo.c

Hint: man wget

[8p] Creez le dossier task4 dans le dossier sde, et telecharger dedans le fichier boo.c.

Pour ceux avec les machines virtuelles sur 64 bit, le fichier light.o peut etre telecharge du:
https://github.com/UPB-FILS/sde/raw/master/tema1/64/light.o

[15p] Generez dans le dossier task7 l'executable exec, en outilisant le fichier objet light.o, et aussi le fichier objet sound.o obtenu apres la compilation du source sound.c mis en ouvre tout a l'heure. En fin, l'executable exec doit etre genere automatiquement dans le dossier task7.

[5p] Utilisez des commandes de compilation pour creer toutes les fichieres intermediaires (appeles boo.o, boo.s) apres la compilation du fichier source boo.c. Les deux fichieres doivent se trouver a la fin dans le dossier task7

Tache 08 (0p)

Finissez le devoir et soyez sur que vous l'avez envoye avec sudo uso submit.

student@usohomework ~ $ sudo uso submit

C'est interdit aux etudiants de modifier les parametres de roulement de la machine virtuelle. Chaque tentative de modifications de fichiers et des executables de la machine virtuelle nous donne le droit d'offrir 0 points au devoirs de l'etudiant.

Des instructions pour l'utilisation du checker

Mises a jour:

  • 12 Octobre 2018, 23:55 - Publication

Description

La machine virtuelle disponible offre toutes les reglages necessaires pour l'efectuation du devoir et aussi des reglages necessaires pour la collection de statistiques concernant la difficulte du devoir.

Pour chaque utilisation du uso l'utilisateur student est necessaire, mais avec des droits privilegies (en utilisant sudo avant). La seul exception est valable pour la commande uso version, qui ne demandes pas des droits privilegies.

L'executable uso va etre utilise pour obtenir le checker pour chaque devoir, pour verifier les devoirs et pour envoyer le code final lorsque vous avez fini.

Syntaxe

La syntaxe utilise par le checker est uso [OPTION]…, ou [OPTION]… represente une liste de parametres optionnels et qui peut avoir une valeure comme ci-dessous. Dans le cas ou il n'y a aucun parametre OPTION specifie, l'action par defaut est de rouler le parametre check.

  • version : Affiche la versio actuelle du l'executable uso.
  • check : Verifie le devoir actuel en entier et vous affice les points pour chaque tache.
  • check N : Ou N represent le nombre du tache du l'enonciation
  • update : Met a jour le checker pour le devoir actuel et aussi l'executable uso. On vous recommande d'utiliser update chaque fois que vous voyez un annonce sur forum qui vous dit que le checker a ete mis a jour.
  • start N : Telecharge les executables necessaires pour la fonctionnement d'un nouveau devoir. Il peut aussi restaurer un devoir a la configuration du depart, seulement s'il est specifie dans l'enonciation du devoir.
    • Un devoir contient plusieurs taches
    • Il faut pas utiliser uso start au debut du chaque tache
    • Vous pouvez pas commencer un nouveau devoir sans executer uso start en avance.
  • submit : Finalise le devoir.

Tous les parametres demande une connexion internet, sauf version et check.

L'achevement du devoir au l'aide du commande uso submit est obligatoire!

Meme apres le chargement du code, il faut pas modifier les fichiers qui lui corresponde! S'il y a des problemmes concernant la correction du devoir, et les fichiers ont ete modifies apres l'envoi du code, les appels ne vont pas etre pris en compte. Vouz pouvez travailler sur la machine virtuelle sans problems, aussi longtemps que les fichiers et le conditions de fonctionnement du devoir precedent ne sont pas modifies.

Des pas

Faut retenir que pour chaque utilisation du uso l'utilisateur student est necessaire, mais avec des droits privilegies (en utilisant sudo avant). La seul exception est valable pour la commande uso version, qui ne demandes pas des droits privilegies.

En ce moment on considere que la machine virtuelle est bien enregistre avec le compte d'utilisateur du chaque etudiant. Les etapes habituelles pour un devoir se trouve ci-dessous:

  1. le devoir est lance avec uso start N ou N est le devoir actuel.
  2. le devoir est verifie avec uso check
    1. pour verifier une seule tache on peut utiliser la commande uso check N, ou N represente le nombre du tache
    2. exemple: uso check 4
  3. si les resultats du l'etape precedente ne sont pas bonnes, repetez les etapes 2 et 3
    1. autrement, le devoir est fini avec uso submit.
  4. vous gardez les fichiers lies avec le devoir - vous devez pas les supprimer (pour un appel, si necessaire)
  5. si apres l'envoi du devoir vous voulez faire des modifications sur les exercices vous devez repeter les etapes 2, 3, 4, 5 et 6
    1. vouz pouvez faire des modifications meme si la date limite n'est pas depassee
  6. dans le cycle ci-dessus vouz pouvez toujours utiliser uso update

Vouz pouvez envoyer le devoir (etape 3.a) a chaque fois que vous voulez (si vous faites des modifications sur le devoir), mais seulement si la date limite n'est pas depasse. Il va etre pris en compte le dernier cod envoye avant la date limite. Les envois qui sont apres la date limite vont pas etre prises en compte!

sde/teme/tema_fr_1.1550477087.txt.gz · Last modified: 2019/02/18 10:04 by razvan.serban
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0