Skolelinux-netboot-en-test/nb: Forskjell mellom sideversjoner

Fra pc-aid wiki
Created page with "b) Ellers hvis du installerte Debian 12 kde live, kjør denne kommandoen for å være root: sudo -i Skriv inn passordet for brukerkontoen din og du er root. <code>apt install ansible git</code> Kjør deretter ansible-pull for å kjøre oppgavene fra dette depotet:"
Created page with "=== Deaktiver Dvale/Hvilemodus på preseed-maskinen ==="
 
(7 mellomliggende sideversjoner av samme bruker vises ikke)
Linje 30: Linje 30:
Kjør deretter ansible-pull for å kjøre oppgavene fra dette depotet:
Kjør deretter ansible-pull for å kjøre oppgavene fra dette depotet:


<div lang="en" dir="ltr" class="mw-content-ltr">
Deretter kan du klone det offentlige git-depotet som brukes til å sette opp resten av netboot-infrastrukturen:
Then you can clone the public git repository used to set up the remainder of the netboot infrastructure:
  <code>git-klone <nowiki>https://git.nuug.no/nuug-public/skolelinux-netboot.git</nowiki></code>
  <code>git clone <nowiki>https://git.nuug.no/nuug-public/skolelinux-netboot.git</nowiki></code>
Dette vil opprette katalogen <code>skolelinux-netboot/</code> som inneholder den aktuelle spilleboken og andre data som trengs for å konfigurere netboot-verten.
This will create the directory <code>skolelinux-netboot/</code> that contains the ansible playbook and other data needed to configure the netboot host.
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
  <div lang="en" dir="ltr" class="mw-content-ltr">
Linje 40: Linje 38:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Configure_local_settings"></span>
=== Configure local settings ===
=== Konfigurer lokale innstillinger ===
</div>
 
Før du kjører spilleboken, må du lage en fil <code>local-vars.yml</code> (denne filen ignoreres av git) som inneholder verdier den mulige spilleboken vil bruke under oppsettet. Bruk favorittredigeringsprogrammet for å lage filen, og fyll den med følgende data:
internet_interface: "eno1" # Grensesnittnavn som har internettilgang
 
# DHCP-serverkonfigurasjon
dhcpd_interface: "enx7cc2c6469631" # Grensesnittnavn for lokalt netboot-nettverk
dhcpd_subnet_network: "192.168.100.0" # Nettverksadresse for lokalt nettverk
dhcpd_subnet_netmask: "255.255.252.0" # Nettverksnettmaske for lokalt nettverk
dhcpd_pool_start: "192.168.100.50" # Startadresse for DHCP IP-pool
dhcpd_pool_end: "192.168.103.250" # DHCP IP-utvalgsadresse
dhcpd_option_routers: "192.168.100.1" # Gateway for lokalt nettverk (din netboot-vert!)
dhcpd_option_domainnameservers: "1.1.1.1,1.0.0.1" # DNS-servere som skal sendes til klienter
dhcpd_option_nextserver: "192.168.100.1" # Netboot PXE-server (din netboot-vert!)


<div lang="en" dir="ltr" class="mw-content-ltr">
  # Fullt navn, brukernavn og klartekstpassord for ønsket ikke-root
Before running the playbook, you need to create a file <code>local-vars.yml</code> (this file is ignored by git) containing values the ansible playbook will use during the setup. Use your favourite editor to create the file, and fill it with the following data:
  # bruker skal opprettes under forhåndsinnstilling. Dette kommer til å være brukeren som
  internet_interface: "eno1" # Interface name that has internet access
  # logges automatisk inn som kioskbruker.
# DHCP server configuration
dhcpd_interface: "enx7cc2c6469631" # Interface name for local netboot network
dhcpd_subnet_network: "192.168.100.0" # Network address for local network
dhcpd_subnet_netmask: "255.255.252.0" # Network netmask for local network
dhcpd_pool_start: "192.168.100.50" # DHCP IP pool start address
dhcpd_pool_end: "192.168.103.250" # DHCP IP pool end address
dhcpd_option_routers: "192.168.100.1" # Gateway for local network (your netboot host!)
dhcpd_option_domainnameservers: "1.1.1.1,1.0.0.1" # DNS servers to push to clients
dhcpd_option_nextserver: "192.168.100.1" # Netboot PXE server (your netboot host!)
# Full name, username and cleartext password of your desired non-root
  # user to be created during preseed. This is going to be the user that
  # is automatically logged in as the kiosk user.
  preseed_user_fullname: ""
  preseed_user_fullname: ""
  preseed_username: ""
  preseed_username: ""
  preseed_user_password: ""
  preseed_user_password: ""
 
  # Username and password that will be configured in ProFTP and that ShredOS will
  # Brukernavn og passord som vil bli konfigurert i ProFTP og som ShredOS vil
  # use to upload PDF reports # after shredding of disks.
  # bruk for å laste opp PDF-rapporter # etter makulering av disker.
  proftpd_shredos_user: "someuser"
  proftpd_shredos_user: "noen bruker"
  proftpd_shredos_pass: "somepass"
  proftpd_shredos_pass: "noe pass"
 
  # A list of donors of laptops. IMPORTANT: Use only lowercase and uppalphanumeric
  # En liste over givere av bærbare datamaskiner. VIKTIG: Bruk kun små og oppalfanumeriske bokstaver
  # (a-z, A-Z, 0-9), no spaces! Each donor will get their own ShredOS netboot menu
  # (a-z, A-Z, 0-9), ingen mellomrom! Hver giver vil få sin egen ShredOS netboot-meny
  # choice, and their own ShredOS logs directory.
  # valg, og deres egen ShredOS-loggkatalog.
  donors:
  givere:
  - "bigcompany"
- "storselskap"
  - "district123"
- "distrikt 123"
Now you should be able to run the playbook that will perform all the necessary configuration tasks. This might take a little while.
Nå skal du kunne kjøre spilleboken som vil utføre alle nødvendige konfigurasjonsoppgaver. Dette kan ta litt tid.
  <code>ansible-playbook netboot-host-setup.yml -D</code>
  <code>ansible-playbook netboot-host-setup.yml -D</code>
It's probably a good idea to reboot your netboot host again after this (assuming all went well), to make sure services start at boot (DHCP server, ProFTPd, Apt-cacher-ng). You can check with e.g.:
Det er sannsynligvis en god idé å starte nettboot-verten på nytt etter dette (forutsatt at alt gikk bra), for å sikre at tjenestene starter ved oppstart (DHCP-server, ProFTPd, Apt-cacher-ng). Du kan sjekke med f.eks.:
  systemctl status proftpd.service
  systemctl status proftpd.service
  systemctl status isc-dhcp-server.service
  systemctl-status isc-dhcp-server.service
  systemctl status apt-cacher-ng.service
  systemctl-status apt-cacher-ng.service
You should now be able to use this host in the local network where you are performing the Skolelinux installations. This host should be the only DHCP server in the network, and the gateway IP must match what is being pushed by this host over DHCP.
Du skal nå kunne bruke denne verten i det lokale nettverket der du utfører Skolelinux-installasjonene. Denne verten skal være den eneste DHCP-serveren i nettverket, og gateway-IP-en må samsvare med det som blir presset av denne verten over DHCP.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Hvis det er noen endringer i <code>local-vars.yml</code>-filen, bør du bare kunne kjøre spilleboken på nytt, og systemet vil bli rekonfigurert tilsvarende.
If there are any changes in your <code>local-vars.yml</code> file, you should be able to simply re-run the playbook, and the system will be reconfigured accordingly.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Hvis det er noen ny utvikling for dette oppsettet gjort tilgjengelig i git-depotet, kan du oppdatere filene dine ved å kjøre en git-kommando mens du er i <code>skolelinux-netboot/</code>-katalogen:
If there are any new development for this setup made available in the git repository, you can update your files, by running a git command while being in the <code>skolelinux-netboot/</code> directory:
  <code>git pull</code>
  <code>git pull</code>
To apply the latest changes, re-run the ansible playbook again.
For å bruke de siste endringene, kjør den aktuelle spilleboken på nytt.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Disable_Suspend/Hvilemodus_på_preseed-maskinen"></span>
=== Disable Suspend/Hvilemodus på preseed-maskinen ===
=== Deaktiver Dvale/Hvilemodus på preseed-maskinen ===
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Når dette ikke er deaktivert, vil datamaskinene som blir tanket fra preseed-maskinen slutte å installere som vi har opplevd xD
When this is not disabled the computers getting tanked from the preseed machine wil stop installing as we have experienced xD
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
a) Gå til systeminnstillinger/systeminnstillinger -> Strømstyring/Strømstyring -> ta av haken i Lås økt / Lås økt og klikk på Bruk/Bruk
a) Go to systemsettings/systeminnstillinger -> Strømstyring/Powermanagement -> ta av haken i Lås økt / Lock session and click on Bruk/Use
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Share_wireless_internett_to_the_netboot_machine"></span>
=== Share wireless internett to the netboot machine ===
=== Del trådløst internett til netboot-maskinen ===
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
a) Start enten en forhåndsinstallert Debian 12 kde bærbar PC med både trådløst og ethernet-nettverk (kabel), eller start opp en Debian live KDE fra en USB-pinne
a) Either start a preinstalled Debian 12 kde laptop with both wireless and ethernet network (cable), or boot a Debian live KDE from a USB-stick
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
b) Når systemet startes til Desktop -> venstreklikk på nettverksikonet nederst i høyre hjørne og koble til et trådløst nettverk. Eksempel Rebel-Network
b) When the system is started to Desktop -> left click the network icon in the bottom right corner and connect to a wireless network. Example Rebel-Network
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
c) Høyreklikk nettverksikonet i høyre hjørne av skjermen igjen og gjør: > Konfigurer nettverkstilkoblinger/Sett opp nettverkskoblinger -> Kablet tilkobling 1 -> Kabelforbindelse 1 -> IPv4 (fane/fane -> Metode/Metode -> Delt til andre datamaskiner / Delt til andre datamaskiner -> Bruk/Bruk
c) Right click the network icon in the right corner of the screen again and do: > Configure Network Connections/Sett opp nettverkskoblinger -> Wired Connection 1 -> Kablet Forbindelse 1 -> IPv4 (tab/fane -> Method/Metode -> Shared to other computers / Delt til andre datamaskiner -> Use/Bruk
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
d) Gå til innstillinger -> strømstyring/strømstyring -> AC Strøm/På nettstørm (fane/vifte) -> fjern hake for Lås økt -> På batteri/På batteridrift > fjern hake for Lås økt -> På Lavt batteri/Lavt batterinivå fjern hake for Lås økt -> klikk Bruk/Bruk
d) Go to settings -> powermanagement/strømstyring -> On AC Power/På nettstørm (tab/fane) -> remove check mark for Lock session -> On battery/På batteridrift > remove check mark for Lock session -> On Low Battery/Lavt batterinivå remove check mark for Lock session -> click Use/Bruk
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
e) Koble en nettverkskabel fra nettverkskortet på den bærbare datamaskinen til Internett i nettverkskortet på forhåndsinnstilt maskin.
e) Connect a network cable from the network card on the laptop to Internet in network card on the preseed machine.
</div>

Siste sideversjon per 7. mar. 2025 kl. 12:31

skolelinux-netboot

kilde: https://git.nuug.no/nuug-public/skolelinux-netboot

Dette depotet inneholder mulige oppgaver for å sette opp en netboot-server med det eneste formålet å hjelpe til med å sette opp bærbare datamaskiner i NUUG/Skolelinux dugnad. Det er veldig spesifikt for vår nåværende bruk, og kan være nyttig for noen andre.

Bare Debian 12 har blitt testet.

Kom i gang

Du trenger en vanlig datamaskin med to nettverksporter. Ut fra dine behov, kan det hende det er ok med wifi til internett, og en ethernet-port (native eller usb-dongle) til det lokale pxe/netboot-nettverket. For større og mer stabile oppsett anbefales en datamaskin med to fysiske Ethernet-porter.

Etter du har installert standard Debian 12-installasjon, konfigurer din andre nettverksport for det lokale nettverket du skal nettstarte på. Sørg for at du har et stort nok subnett til å inneholde antall klienter du vil nettstarte til enhver tid.

Nettverket som er konfigurert på dette grensesnittet, vil også bli konfigurert senere for DHCP-serveren.

Sørg for at du oppgraderer alle tilgjengelige pakker, og etter at du har gjort oppsettet, start nettboot-verten på nytt for å sikre at den kjører den nyeste kjernen og at nettverksportene har sine IP-adresser etter behov.

Du må installere ansible og git på netboot-verten først:

a) Hvis du installerte Debian 12 netinstall, kjør følgende for å være root:

su -

Skriv inn passordet for brukerkontoen din og du er root.

b) Ellers hvis du installerte Debian 12 kde live, kjør denne kommandoen for å være root:

sudo -i

Skriv inn passordet for brukerkontoen din og du er root.

apt install ansible git

Kjør deretter ansible-pull for å kjøre oppgavene fra dette depotet:

Deretter kan du klone det offentlige git-depotet som brukes til å sette opp resten av netboot-infrastrukturen:

git-klone https://git.nuug.no/nuug-public/skolelinux-netboot.git

Dette vil opprette katalogen skolelinux-netboot/ som inneholder den aktuelle spilleboken og andre data som trengs for å konfigurere netboot-verten.

cd skolelinux-netboot

Konfigurer lokale innstillinger

Før du kjører spilleboken, må du lage en fil local-vars.yml (denne filen ignoreres av git) som inneholder verdier den mulige spilleboken vil bruke under oppsettet. Bruk favorittredigeringsprogrammet for å lage filen, og fyll den med følgende data:

internet_interface: "eno1" # Grensesnittnavn som har internettilgang
# DHCP-serverkonfigurasjon
dhcpd_interface: "enx7cc2c6469631" # Grensesnittnavn for lokalt netboot-nettverk
dhcpd_subnet_network: "192.168.100.0" # Nettverksadresse for lokalt nettverk
dhcpd_subnet_netmask: "255.255.252.0" # Nettverksnettmaske for lokalt nettverk
dhcpd_pool_start: "192.168.100.50" # Startadresse for DHCP IP-pool
dhcpd_pool_end: "192.168.103.250" # DHCP IP-utvalgsadresse
dhcpd_option_routers: "192.168.100.1" # Gateway for lokalt nettverk (din netboot-vert!)
dhcpd_option_domainnameservers: "1.1.1.1,1.0.0.1" # DNS-servere som skal sendes til klienter
dhcpd_option_nextserver: "192.168.100.1" # Netboot PXE-server (din netboot-vert!)
# Fullt navn, brukernavn og klartekstpassord for ønsket ikke-root
# bruker skal opprettes under forhåndsinnstilling. Dette kommer til å være brukeren som
# logges automatisk inn som kioskbruker.
preseed_user_fullname: ""
preseed_username: ""
preseed_user_password: ""
# Brukernavn og passord som vil bli konfigurert i ProFTP og som ShredOS vil
# bruk for å laste opp PDF-rapporter # etter makulering av disker.
proftpd_shredos_user: "noen bruker"
proftpd_shredos_pass: "noe pass"
# En liste over givere av bærbare datamaskiner. VIKTIG: Bruk kun små og oppalfanumeriske bokstaver
# (a-z, A-Z, 0-9), ingen mellomrom! Hver giver vil få sin egen ShredOS netboot-meny
# valg, og deres egen ShredOS-loggkatalog.
givere:
- "storselskap"
- "distrikt 123"

Nå skal du kunne kjøre spilleboken som vil utføre alle nødvendige konfigurasjonsoppgaver. Dette kan ta litt tid.

ansible-playbook netboot-host-setup.yml -D

Det er sannsynligvis en god idé å starte nettboot-verten på nytt etter dette (forutsatt at alt gikk bra), for å sikre at tjenestene starter ved oppstart (DHCP-server, ProFTPd, Apt-cacher-ng). Du kan sjekke med f.eks.:

systemctl status proftpd.service
systemctl-status isc-dhcp-server.service
systemctl-status apt-cacher-ng.service

Du skal nå kunne bruke denne verten i det lokale nettverket der du utfører Skolelinux-installasjonene. Denne verten skal være den eneste DHCP-serveren i nettverket, og gateway-IP-en må samsvare med det som blir presset av denne verten over DHCP.

Hvis det er noen endringer i local-vars.yml-filen, bør du bare kunne kjøre spilleboken på nytt, og systemet vil bli rekonfigurert tilsvarende.

Hvis det er noen ny utvikling for dette oppsettet gjort tilgjengelig i git-depotet, kan du oppdatere filene dine ved å kjøre en git-kommando mens du er i skolelinux-netboot/-katalogen:

git pull

For å bruke de siste endringene, kjør den aktuelle spilleboken på nytt.

Deaktiver Dvale/Hvilemodus på preseed-maskinen

Når dette ikke er deaktivert, vil datamaskinene som blir tanket fra preseed-maskinen slutte å installere som vi har opplevd xD

a) Gå til systeminnstillinger/systeminnstillinger -> Strømstyring/Strømstyring -> ta av haken i Lås økt / Lås økt og klikk på Bruk/Bruk

Del trådløst internett til netboot-maskinen

a) Start enten en forhåndsinstallert Debian 12 kde bærbar PC med både trådløst og ethernet-nettverk (kabel), eller start opp en Debian live KDE fra en USB-pinne

b) Når systemet startes til Desktop -> venstreklikk på nettverksikonet nederst i høyre hjørne og koble til et trådløst nettverk. Eksempel Rebel-Network

c) Høyreklikk nettverksikonet i høyre hjørne av skjermen igjen og gjør: > Konfigurer nettverkstilkoblinger/Sett opp nettverkskoblinger -> Kablet tilkobling 1 -> Kabelforbindelse 1 -> IPv4 (fane/fane -> Metode/Metode -> Delt til andre datamaskiner / Delt til andre datamaskiner -> Bruk/Bruk

d) Gå til innstillinger -> strømstyring/strømstyring -> På AC Strøm/På nettstørm (fane/vifte) -> fjern hake for Lås økt -> På batteri/På batteridrift > fjern hake for Lås økt -> På Lavt batteri/Lavt batterinivå fjern hake for Lås økt -> klikk Bruk/Bruk

e) Koble en nettverkskabel fra nettverkskortet på den bærbare datamaskinen til Internett i nettverkskortet på forhåndsinnstilt maskin.