-
Notifications
You must be signed in to change notification settings - Fork 24
Deploying MiniMyth2
You can deploy MiniMyth2 in 2 basic ways:
- Local boot from USB key / SD card (or HDD/SSD with some manual actions)
- Network boot
To run MiniMyth2 installed locally on USB key / SD card You may go with following procedure:
-
Go to https://github.com/warpme/minimyth2/releases and download SD card image.
-
Write image to SD card.
-
If Your:
-
master MythTV backend has different IP than your DHCP server You should edit settings in minimyth.conf residing on BOOT partition of SD card. For this - please do step 4. Otherwise you can skip step 4.
-
master MythTV backend DB name/user/pass are different from the default 'mythconverg' 'mythtv' 'mythtv' - You should edit settings in minimyth.conf residing on BOOT partition of SD card. For this - please do step 4. Otherwise you can skip step 4.
-
-
Mount SD card to have R/W access to BOOT partition on SD card and set appropriate variables in minimyth.conf:
MM_MASTER_SERVER=<DHCP_NEXT_SERVER address>
MM_MASTER_DBUSERNAME='<MythTV DB username>'
MM_MASTER_DBPASSWORD='<MythTV DB password>'
MM_MASTER_DBNAME='<MythTV DB name>'
-
Insert SD card into board/TVbox SD card slot or to USB port (remember to set BIOS/EFI to boot from USB first). It should boot!
-
Enjoy working MythTV frontend
Now you can further customise MiniMyth2: Customize MiniMyth2
Preferred method for network boot is PXE mode with rootfs loaded via HTTP protocol. HTTP protocol is preferred over TFTP purely because of speed
In PXE based network boot, the following sequence occurs:
- The appliance BIOS sends a BOOTP request to the DHCP server.
- The DHCP server tells the appliance BIOS the IP address of the TFTP server and the location of the iPXE boot loader.
- Appliance BIOS retrieves the iPXE boot loader from the TFTP server.
- The appliance iPXE sends another DHCP request.
- The DHCP server tells the iPXE boot loader the URL of the iPXE boot loader configuration file.
- iPXE boot loader retrieves configuration file. The configuration file tells the iPXE boot loader the URL of the kernel file and the URL of the initial root file system file.
- The iPXE boot loader retrieves the kernel and the inital root file system found at their respective URLs.
- The iPXE boot loader passes control to the downloaded kernel.
- Kernel file expands it’s initramfs and loads minimal set of drivers and creates RAM disk.
- Kernel finally expands the root file system into RAM disk and starts normal init process which is detecting all hardware, loading drivers and starting MythTV Frontend.
This is high level description of procedure to setup disk-less PXE boot from central server to MythTV Frontend appliance. Note: Config files in below download link are assuming:
- TFTP/DHCP/WWW servers and MythTV master backend are on the same IP.
- Example config files are assuming IP address of machine with TFTP/DHCP/WWW servers and MythTV master backend is 192.168.1.254.
If IP address of machine with TFTP/DHCP/WWW/MythTV is different than 192.168.1.254, You need to do appropriate changes in:
/var/lib/tftpboot/PXEclient/ipxe.cfg/Default
/etc/dhcp/dhcpd.conf
If TFTP/DHCP/WWW servers have different IP than MythTV master backend, Minimyth2 config-less setup is not possible and user have to add appropriate statements in minimyth.conf file.
Below is high level description of actions needed to setup PXE boot server:
- Download PXE-Bootloaders-and-Configs file. Unpack it.
- Install, enable start at boot: TFTP/DHCP/HTTP servers
- Copy content of: ./pxe-bootloaders-and-configs/ubuntu/var/lib/tftpboot/ to {root} of Your TFTP server
- Add DHCP statements like in ./pxe-bootloaders-and-configs/ubuntu/etc/dhcp/dhcpd.conf to Your’s DHCP config. Adjust IP addressing to Your’s needs.
- Enable alias to
/var/lib/tftpboot/PXEclient
asminimyth2
in Your’s HTTP server. - Enable HTTP PUT to
/var/lib/tftpboot/PXEclient/conf-rw
on Your’s HTTP server. - Download MiniMyth2 PXE image (acordingly to your backend version), unpack and put contents into
/var/lib/tftpboot/PXEclient/boot.img/
directory - Make sure mysql bind address in
/etc/mysql/my.conf
is set to Your’s machine IP (not 127.0.0.1)
- Power-on appliance and enter BIOS.
- Under boot devices options, enable
boot from LAN
. - Under boot sequence options, make sure
boot from LAN
is first option to boot from. - If You want to wake-up Frontend appliance from IR remote, under BIOS USB options enable
USB wake from S3
option. - If Your appliance hardware has on-board integrated graphics (i.e. ION/ION2), make sure Video RAM is set to 512M (otherwise playback HD content might be problematic).
- Save BIOS settings.
- Make sure Frontend appliance has network connection to PXE boot machine.
- Power-on appliance.
Now You should see:
- Appliance BIOS is asking server for IP.
- Server is assigning IP to Frontend appliance.
- Appliance quickly downloading iPXE loader.
- Appliance start to download http://{IP address}/minimyth2/boot.img/kernel
- Appliance start to download http://{IP address}/minimyth2/boot.img/rootfs
- Appliance start to draw splash screen with progress bar.
- Appliance shows MythTV setup screen.