• 6 Posts
  • 191 Comments
Joined 1 year ago
cake
Cake day: July 3rd, 2023

help-circle



  • There is no silver bullet that will let you understand all about “the self hosting world” from the get-go without getting your hands dirty and without making mistakes.

    I recommend formulating a concrete goal (e.g., I want to run a Nextcloud instance on a Raspberry Pi 4 on my LAN, and I want to be able to reach it from outside via Wireguard), and trying to tackle this goal step by step:

    • Which OS on the Pi and why?
    • Container or bare metal and why?
    • How to install Wireguard?
    • What precautions need to be in place before I open an ingress point into my LAN for Wireguard and how do I do it?
    • What about TLS, how do I get a nice lock icon in my browser? Selfsigned? Letsencrypt?

    It’s much easier to help with concrete problems and sub-problems like these, too, and you will find this community here incredibly helpful when you ask specific questions on which you’re stuck or unsure about.

    All that said, I started learning about network administration before containerisation was a thing, and I feel like I learned a lot by setting many things up manually and bare metal. I’m not sure if it’s the best course of action for a beginner today, but it exposes you to many topics very directly. While Docker and other modern tools are incredibly convenient and a godsend for tasks that used to be horribly error prone and tedious, I have a feeling they abstract away things that might make it harder to “peek behind the curtain”, even if they might lower the entrance barrier significantly.

    But no matter which route you take, you will struggle, and you will learn, and you will break things and learn some more. Get your hands on it!








  • I have done a similar thing in the past, but to flash firmware onto any device with a certain USB descriptor that gets plugged in. It was a mess of USB hubs and cables, but it worked.

    What I did was write a udev rule that checks for the vendor and product id of a newly plugged in device and calls a script when there’s a match. The script then performs the flashing and logs the output.

    In your case:

    1. dd the source USB to a file (make sure the partition you’re dding is smalled than any target drive
    2. Udev rule according to your needs (all the same product or different drives?)
    3. Script that dds the file you created earlier back to the newly plugged in drive.

    Edit. Did this on a rpi3