update readme

This commit is contained in:
Mateusz779 2023-04-28 11:07:26 +02:00
parent e0c7058cb1
commit 17d33e70cb
3 changed files with 85 additions and 3 deletions

View File

@ -9,7 +9,7 @@ Projekt uruchamiania zdalnych systemów.
Aby zainstalować wymagane składniki wydaj komendę: Aby zainstalować wymagane składniki wydaj komendę:
```bash ```bash
sudo apt install python3-venv python3-pip sudo apt install python3-venv python3-pip postgresql postgresql-contrib
``` ```
A następnie: A następnie:
@ -29,10 +29,30 @@ I zainstaluj wymagane paczki pip
## Konfiguracja ## Konfiguracja
Konfiguracja znajduje się w pliku config.py Aby dodać bazę i użytkownika w PostgreSQL należy wykonać następujące kroki:
```bash
sudo adduser <username>
sudo passwd <username>
sudo -u postgres psql
```
```sql
CREATE USER <username> WITH PASSWORD 'PASSWORD';
CREATE DATABASE <db_name>;
GRANT ALL PRIVILEGES ON DATABASE <db_name> to <username> ;
```
Konfiguracja dostępu do serwera PostgreSQL znajduje się w pliku config.py
## Pliki konfiguracyjne
- config.py - zawiera konfiguracje dostępu do bazy danych plik domyslny czy też port dostępu do serwera ssh
- configs/msmtprc - zawiera konfiguracje msmtp
- configs/sendmail.sh - skrypt w którym znajduje sie konfiguracja co i w jaki sposób ma zostac wysłane mailem
- configs/sshd_config - plik zawierający konfiguracje serwera ssh
- configs/uVPN.conf,uVPN.ini - pliki konfiguracyjne do uVPNa
## Uruchomienie ## Uruchomienie
Aby uruchomić serwer deweloperski: Aby uruchomić serwer deweloperski:
@ -70,4 +90,67 @@ sudo ./update_rootfs.sh -n <obraz wyjściowy> -s <obraz żródłowy> -i "<pakiet
Natomiast w celu aktualizacji pakietów w obrazie : Natomiast w celu aktualizacji pakietów w obrazie :
```bash ```bash
sudo ./update_rootfs.sh -n <obraz wyjściowy> -s <obraz żródłowy> -u sudo ./update_rootfs.sh -n <obraz wyjściowy> -s <obraz żródłowy> -u
```
## Tworzenie initramfs
Aby zacząć tworzenie obrazu initramfs należy najpierw zainstalować poniższe składniki:
```bash
sudo apt install build-essential libncurses5-dev
```
Następnie pobrac i rozpakować buildroota z tej strony: https://buildroot.org/download.html i przejść do katalogu w którym został on wypakowany. Kolejnym krokiem jest wypakowanie paczki external.tar.gz do głównego katalogu buildroota i skopiowanie pliku .config również do głównego katalogu.
Kolejnym krokiem jest wydanie polecenia
```bash
make BR2_EXTERNAL=/path/to/external
```
I finalnie uruchomienie kompilacji
```bash
make
```
W katalogu ./output/images znajdują sie pliki:
- bzImage - kernel linuxa
- rootfs.cpio.xz - spakowany obraz initramfs
## Przykładowe parametry startowe
Dodatkowe parametry wymagane:
- root=/dev/ram0
- server=<adres serwera dysponującego wraz z portem>
- sqfile=<nazwa obrazu rootfs>
- nfsrootfs=<ip>:/<ścieżka do folderu z plikami systemu>
- token=<nazwa tokenu>
Opcjonalnie podawane do uruchomienia systemu:
- ip=<ip>
- netmask=<maska podsieci w postaci pełnej>
- gateway=<adres gateway>
Przykład uruchomienia qemu:
```bash
sudo qemu-system-x86_64 -kernel bzImage -append "root=/dev/ram0 console=ttyS0 ip=dhcp nfsrootfs=<ip>:/<path/to/foo> sqfile=<obraz> server=<adres serwera z portem> token=<token> panic=5" -initrd rootfs.cpio.xz -nographic -net nic,model=virtio,macaddr=00:00:00:00:00:02 -net tap,ifname=tap0 -m 512 -no-reboot -smp cpus=4
```
## Przykład konfiguracji dla iPXE
```ipxe
#!ipxe
set server_ip <ip serwera>
set root_path /tftpboot/os-images
set boot_url http://${server_ip}
set os_locate <nazwa folderu z obrazami>
set os_root ${boot_url}/${url_path}/${os_locate}
kernel ${os_root}/bzImage
initrd ${os_root}/initramfs.cpio.xz
imgargs bzImage initrd=initramfs.cpio.xz root=/dev/ram0 console=ttyS0 ip=dhcp nfsrootfs=${server_ip}:${root_path}/${os_locate} sqfile=<obraz> server=<adres serwera z portem> token=<token> panic=5
boot || goto failed
``` ```

View File

@ -1 +0,0 @@
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCWyVkbAlKLlqmgtbIDYVbuLzoZ9WqzR/STVYOX3dVwN6/JTjTwfwziqB709jQC3xjHucn0BG60CugTw3VpegRiq8sh7Fza72TlBgxZ+HtzfP3hEybv+Ig4EHrILScDE9TQfuijID8ymB2mk2lj8C87UsWGUv7yPabgHK+/XkEOn5BKlr6wTibGu4tNUiOPEQIUiKZ5CLm7OfWxaL1RXsgitUcT+i6GtGjOz+9Xy+1dNa/btt6V+V5PDMh3NM4tXRImpr8B1C0g9uUDsRQTUw8mfAmN0fpBGEaM4/MBnAfSL2AVft4HIbFD6/Qs7EPS14rnz1gZwUlwfERriWLBvxeVapQgwk8qmoJVmtIUHxorYrLsanq+SDsX9Jj/X/X1hA3XtRMbuBZEQOeOxUmajyiA3A2tyMZbio/vNwA9b4a3JR9hOw+kZpJ4UjF9adJmiGYzxS9GE/DNIi2AdKUyBsLzUkP7966AzIT3vGrVwjyygUZHzOlp7bOS5PLDRHJw0FU= mateusz@pop-os

Binary file not shown.