Remote Hardware
My laptop is slow, my tower-PC is fast. Sometimes I want to execute a program using the tower's hardware, but remain using the laptop.
Attempt 1: The Normal Way
- Copy the project files from the laptop to the tower.
- Connect to the tower with
ssh. - Install the program on I need to execute on the tower.
- Execute the program to generate a bunch of files.
- Copy the project files back from the tower to the laptop.
This is not a pleasant experience. The tower has a different operating system, so the program on the tower works a little differently to the program on the laptop. It's also not exactly what I want - I want to use all the programs and files on the laptop. The tower should only provide hardware.
Attempt 2: The Direct Way?
- Connect to the tower with
ssh. - Be root (this might be a bad idea).
- Make a directory called 'laptop'.
- Remotely mount the laptop's entire operating system into the 'laptop' directory.
- Change the computer's root (
/) to 'laptop'. - Execute the program.
This brings up all sorts of errors about using the wrong /dev/null and
various 'files not found'. But it works. Not cleanly, not 'properly working
in a reasonable fashion', but it's possible to use a remote computer's hardware
while still using local programs.
Making it practical would require a lot of work, starting with a proper
chroot command that sub-leases various /dev/ interfaces. Making it work
with a GUI sounds positively painful.