# This Pi-KVM cookbook has some undocumented recipes for your Pi-KVM ## Take a HDMI screenshot via console on Pi-KVM ``` # curl --unix-socket /run/kvmd/ustreamer.sock http://localhost/snapshot -o screen.jpg ``` ## Get installed KVMD version via console ``` # pacman -Q | grep kvmd ``` ## Upload .ISO images manually 1. Remount internal storage to rw (read-write): ``` # kvmd-helper-otgmsd-remount rw ``` 2. Upload the .ISO image(s) to `/var/lib/kvmd/msd/images` via scp or similar. 3. Create an empty file in `/var/lib/kvmd/msd/meta/` with the exact name (case sensitive!) of the uploaded image. This will indicate Pi-KVM that the uploaded image is okay and can be used. For example: ``` /var/lib/kvmd/msd/meta/ubuntu-18.04.4-desktop-amd64.iso.complete ``` 4. Remount internal storage back to ro (read-only): ``` # kvmd-helper-otgmsd-remount ro ``` ## Enable serial console on Pi-KVM 1. Edit `/etc/kvmd/override.yaml` (Remove `{}` if this your first configuration entry) and add these lines: ``` yaml otg: devices: serial: enabled: true ``` 2. Run the following command: ``` # echo ttyGS0 >> /etc/securetty ``` 3. Create the directory `/etc/systemd/system/getty@ttyGS0.service.d` and add a file file named `ttyGS0.override` into it. Afterwards edit the file and copy this into it: ```ini [Service] TTYReset=no TTYVHangup=no TTYVTDisallocate=no ``` 4. Run these comands: ``` # systemctl enable getty@ttyGS0.service # reboot ``` 5. Once Pi-KVM is rebooted you will have access to a virtual serial port on the server that the USB is connected to. Use mingetty, screen, putty, or something like this to access the kvm from the server. The port is called `/dev/ttyAMA0`.