Antagningsprov 2026 — examination bash (template).
Find a file Use this template
giacomo.turatto 86c0389d89
Some checks failed
Autograding Tests / run-autograding-tests (push) Failing after 8s
clarify applicant feedback: preliminary score, not a pass/fail verdict
The in-repo grading feedback previously showed "🎉 alla obligatoriska
tester ser gröna ut" for any submitted repo (no test is marked
required, so that branch fired even at 0/100), and the READMEs told
applicants to look under GitHub "Pull Requests". This confused
applicants and generated support requests to antagning.

- grading-feedback: submitted state now reads "Din inlämning är
  mottagen … preliminärt automatiskt testresultat — den officiella
  bedömningen görs av lärarna"; header 🎉📩; score relabeled
  "Preliminärt testresultat".
- README: GitHub/Pull-Requests language → Forgejo + the "Automatisk
  rättning — feedback" issue; "pusha till GitHub" → "pusha".

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 10:58:01 +02:00
.github clarify applicant feedback: preliminary score, not a pass/fail verdict 2026-07-02 10:58:01 +02:00
create_users.sh Initial commit 2026-02-09 12:22:16 +00:00
README.md clarify applicant feedback: preliminary score, not a pass/fail verdict 2026-07-02 10:58:01 +02:00
student.json Initial commit 2026-02-09 12:22:16 +00:00

🎓 Linux & Bash: Skapa Användarhanterings-script

Välkommen till detta prov i Linux & Bash! Din uppgift är att skapa ett automatiserat Bash-script som hanterar skapandet av nya användare och sätter upp deras katalogstruktur.


⚠️ VIKTIGT: LÄS DETTA FÖRST

För att din inlämning ska fungera och rättas korrekt måste du följa dessa regler:

  1. Rör ej systemfiler: Du får inte göra ändringar i mappen .github, eller i testfilerna. Om du ändrar dessa filer blir ditt prov ogiltigförklarat.
  2. Registrering: Du måste fylla i ditt ID i student.json innan du börjar (se nedan).
  3. Inlämningsstatus: Du styr själv när du är "klar" genom en inställning i student.json.
  4. Se till att feedback bottens rapporterade testresultat är det du vill ha, om den inte visar rätt så har du något fel i din kod.

🆔 Steg 1: Setup & ID

Innan du börjar koda måste du ställa in ditt projekt. Om du inte gör detta kommer inga av dina tester att köras.

Så här hittar du ditt ID:

  1. Logga in på antagningssidan (yh-antagning.se).
  2. Under "Inlämnade ansökningar", klicka på rutan för denna utbildning.
  3. Scrolla längst ner på sidan till sektionen "Mina personuppgifter" (klicka på pilen för att fälla ut om det behövs).
  4. Kopiera koden som står vid Ansökningsnummer (t.ex. FSAEFSAD).

Så här ställer du in repot:

  1. Öppna filen student.json i din kodeditor.
  2. Byt ut texten "SKRIV_DITT_ID_HÄR" mot ditt ID.
  3. Låt "submitted": false vara kvar. Detta betyder att du jobbar på ett utkast.
  4. Spara filen.
{
  "student_id": "SKRIV_DITT_ID_HÄR",
  "submitted": false
}

📝 Uppgiftsbeskrivning

Fil att arbeta i: create_users.sh

Scenario: Företaget växer och du behöver ett script som skapar en användare, sätter upp en hemkatalog och tilldelar rätt grupp. Du ska skapa ett script som konfigurerar och skapar användare utifrån en lista som skickas in till scriptet.

Scriptet ska hantera säkerhet (endast root får köra det), skapa specifika undermappar för varje användare och generera en personlig välkomstfil.

Totalt kan du få 100 poäng på provet.

Funktionella Krav

Din kod kommer att rättas automatiskt baserat på följande krav:

1. Grundstruktur och Behörighet (20p)

  • (10p) Scriptet ska ha en korrekt "Shebang" (#!/bin/bash) och innehålla kommentarer som förklarar koden.
  • (10p) Scriptet ska kontrollera att användaren som kör scriptet är root (Superuser / UID 0). Om inte, ska scriptet avbrytas med ett felmeddelande.

2. Användarskapande (20p)

  • (20p) Scriptet ska kunna ta emot en lista av användarnamn som argument (parametrar) och skapa dessa användare på systemet (t.ex. useradd).
    • Exempelanrop: ./create_users.sh Anna Bjorn Charlie

3. Katalogstruktur och Rättigheter (20p)

  • (10p) För varje ny användare ska mapparna Documents, Downloads och Work skapas i deras hemkatalog.
  • (10p) Se till att endast ägaren av mapparna kan redigera och läsa i dem.

4. Välkomstmeddelande (20p)

  • (20p) Filen welcome.txt ska skapas i användarens hemkatalog. Denna fil ska innehålla:
    1. Första raden ska innehålla ett personligt välkomstmeddelande i detta format: Välkommen <användare>
    2. En lista på alla andra användare som redan finns i systemet.

Inlämning & Video (20p)

Förutom koden ska du spela in en kort skärminspelning där du demonstrerar din lösning.

  1. Spela in när du visar din lösning och berättar om hur den fungerar.
  2. Döp filen till exakt: videoprov.mp4.
  3. Lägg filen i rotmappen (samma ställe som denna README).
  4. OBS: Filen får inte vara större än 100MB.

🚀 Hur du testar din kod

Detta projekt använder automatisk rättning. Du har två sätt att se dina poäng:

Alternativ 1: Köra lokalt (Rekommenderas)

För att slippa vänta på den automatiska rättningen kan du köra testerna på din egen dator med sudo .github/tests/test.sh. Alternativt sudo .github/tests/test.sh 1 för att välja specifika testfall. (Testerna skapar och tar bort testanvändare, så de behöver köras med sudo lokalt.)

Alternativ 2: Automatisk rättning i Forgejo

När du gör en git push körs testerna automatiskt i Forgejo.

  1. Gå till ditt repo i Forgejo.
  2. Öppna fliken Issues.
  3. Öppna issuen "Automatisk rättning — feedback".
  4. Botten postar/uppdaterar där en tabell med dina resultat.

OBS: Så länge submitted är false visar Forgejo ett Rött Kryss på körningen. Det är normalt och betyder bara att provet är ett "Arbete pågår" och inte inlämnat än.


Steg 2: Inlämning

När du känner dig klar och har fått de poäng du satsar på:

  1. Öppna student.json.
  2. Ändra "submitted": false till "submitted": true.
  3. Spara, committa och pusha.
{
  "student_id": "SKRIV_DITT_ID_HÄR",
  "submitted": true
}

När du pushat med "submitted": true uppdaterar botten feedback-issuen till "INLÄMNING MOTTAGEN". Poängen som visas där är ett preliminärt automatiskt testresultat — den officiella bedömningen görs av lärarna.


Lycka till! 🌟