this post was submitted on 16 Jun 2024
59 points (100.0% liked)

Selfhosted

39253 readers
227 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I don't have spare peripherals like a monitor and a keyboard. How do you suggest I do a bare-metal install of Debian on a computer (meant to be a server)?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 3 months ago

A Debian preseed I guess

[–] [email protected] 3 points 3 months ago (2 children)

Can you remove the boot disk?

[–] [email protected] 3 points 3 months ago

Do you have a second computer running Linux? If you do install virtual manager and then pass though the disk. (LUN passthough)

Next boot the VM with the Debian installer and install. Finally shutdown the VM and plug it into the physical device.

[–] [email protected] 2 points 3 months ago (1 children)
[–] [email protected] 2 points 3 months ago (2 children)

Connect it to your PC or laptop and do a netinstall. Configure SSHD and a static ip. Plugin the disk to your server and then connect via ssh to admin it.

You could also set your laptop or PC to boot from the attached disk in the bios to test the services you want to start are starting

[–] [email protected] 2 points 3 months ago

Planning to do that yes

[–] [email protected] 4 points 3 months ago* (last edited 3 months ago) (1 children)

If you really, really, really don't want to buy a keyboard and monitor, you can buy a USB KVM console, but it'll likely cost more. Something like this: https://www.startech.com/en-us/server-management/notecons01

[–] [email protected] 1 points 3 months ago

Wow that's expensive. But thanks something to keep in mind. I'm planning to build my own $25 KVM with Chinese parts off of Aliexpress and PiKVM (if that's possible)

[–] [email protected] 7 points 3 months ago (1 children)

PXE boot? It must be enable in the bios already. Then you could prep a image and deploy it that way.

[–] [email protected] 1 points 3 months ago

I don't think it's enabled, but I guess I can't check

[–] [email protected] 5 points 3 months ago

My go-to solution is to use a vm and pass it raw access to the os disk on my normal desktop. Then I just put the disk into the server.

[–] [email protected] 12 points 3 months ago (2 children)

Buy a keyboard and monitor

[–] [email protected] 1 points 3 months ago

No thrift stores nearby though

[–] [email protected] 7 points 3 months ago (1 children)

If OP has a thrift store nearby it's pretty likely they can get both for under $30.

[–] [email protected] 2 points 3 months ago

I bought a 21 inch 1080p Viewsonic monitor from a thrift store just the other day for $6. I got it just for this use case.

I had a spare for this purpose up until about a month ago when the backlight went out on one of my daily drivers.

Also, a couple of days ago I got a pretty nice steelcase apex 3 keyboard with RGB lights for $5.

[–] [email protected] 23 points 3 months ago (2 children)

While I agree with most people here that finding a keyboard and screen would be the easiest option, you do have a couple of other options:

  • Use a preseed file A preseed lets the installer run completely automatically, without user intervention. Get it to install a basic system with SSH and take it from there. You'll want to test the install in a VM, where you can see what's going on before letting it run on the real server. More information here: https://wiki.debian.org/DebianInstaller/Preseed

  • Boot from a live image with SSH Take a look at https://wiki.debian.org/LiveCD in particular 'Debian Live'. It looks like ssh is included, but you'd want to check the service comes up on boot. You can then SSH to the machine and install to the harddrive that way. Again, test on a VM until you know you have the image working, and know how to run the install, then write it to a USB key and boot the tsrget server from that.

This all assumes the target server has USB or CD at the top of its boot order. If it doesn't you'll have to change that first, either with a keyboard and screen, or via a remote management interface sych as IPMI.

[–] [email protected] 1 points 3 months ago (1 children)

I did look at Preseed and it's probably a good idea if I'm doing many installs at once. I will still look at it but I'll likely have to purchase a monitor anyway. It is unfortunate because I don't have any thrift stores nearby

[–] [email protected] 1 points 3 months ago (1 children)

It's going to be a balance between your time getting an automated approach to work and the cost/effort of getting a monitor. Getting preseed working can be a bit fiddly, but it does mean you've learnt a new skill, getting a monitor sounds like it'll be a pain, and you might only need it once.

[–] [email protected] 1 points 3 months ago (1 children)

Exactly. It's junk after that

[–] [email protected] 1 points 3 months ago (1 children)

Putting a simple preseed file on a debian install image is probably going to be your best bet. Assuming you can run a VM on your current machine it shouldn't be too difficult to test it until you're happy with it.

[–] [email protected] 1 points 3 months ago (1 children)

I'll have to try that. Thanks!

[–] [email protected] 2 points 3 months ago (1 children)

example preseed file which I use to provision new servers (VMs)

[–] [email protected] 1 points 3 months ago
[–] [email protected] 2 points 3 months ago (2 children)

Once upon a time you could use a thing called debootstrap to install Debian on the hard disk in a chroot on another machine, then switch the hdd to the target machine. Not sure if that thing is still around.

[–] [email protected] 1 points 3 months ago

You could just use the installer

[–] [email protected] 1 points 3 months ago

Yes, that'll work too, it does involve adding the disk to your machine temporarily though, so just be carefully which disk you format to do it. Please don't ask why I say that, it brings back painful memories...

[–] [email protected] 1 points 3 months ago* (last edited 2 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
IP Internet Protocol
SATA Serial AT Attachment interface for mass storage
SSD Solid State Drive mass storage
SSH Secure Shell for remote terminal access

4 acronyms in this thread; the most compressed thread commented on today has 3 acronyms.

[Thread #808 for this sub, first seen 16th Jun 2024, 10:05] [FAQ] [Full list] [Contact] [Source code]

[–] [email protected] 18 points 3 months ago (1 children)

https://github.com/philpagel/debian-headless

It is possible but I wouldn’t do it. Too much effort for too little result.

Just plug your main monitor / keyboard into the server, run the setup and don’t install a DE. Afterwards login, enable SSH, unplug the monitor and do whatever you need over SSH.

Let’s face it, you’ll have to do this procedure once every xyz years, there’s no point in complicating this stuff. Also depending on your motherboard you may or may not be able to boot into the installer without a screen / keyboard attached. Another option is to install the OS in another computer and the move the hard drive to the target server - this is all fine until you run into UEFI security or another detail and it doesn’t boot your OS.

[–] [email protected] 3 points 3 months ago (4 children)

All I have is a laptop. I'm getting these machines for free from a friend

[–] [email protected] 2 points 3 months ago

Take out the hard drive out of your laptop and put the drive for the server in it, install Debian using the built in monitor and keyboard of your laptop.

[–] [email protected] 0 points 3 months ago* (last edited 3 months ago)

Well I see your problem, but you're going to have a bad time without a screen. Maybe you can get something second hand / cheap or even ask a friend to borrow one for a few days?

[–] [email protected] 9 points 3 months ago (1 children)

You're going to want a monitor and keyboard anyway. It's going to be pretty hard to troubleshoot a boot issue in the future without them.

[–] [email protected] 4 points 3 months ago

yep, a tiny boot error and suddenly you need to punch commands into initramfs. good luck with that headlessly.

[–] [email protected] 10 points 3 months ago (1 children)

I picked up a second hand monitor from a goodwill shop for like $7USD. It would be worth having a display of some sort for troubleshooting.

[–] [email protected] 1 points 3 months ago

Yeah at those price points it isn't worth it at all to attempt a headless install.

[–] [email protected] 2 points 3 months ago* (last edited 3 months ago) (1 children)

Not sure about debian, but the archlinux iso has ssh on per default, so if you have no other bootable drives in your server other than the usb with the iso, just fire it up and try to connect to it via ssh.

[–] [email protected] 2 points 3 months ago

Arch linux install wouldn't be a problem really because the way the install is done. Pretty sure I could it all over SSH. Unfortunately, Debian isn't exactly that..

[–] [email protected] 97 points 3 months ago (2 children)

You'll waste more time trying to figure out how to do this than it would take to move a monitor and keyboard to the server, do the install, and plug the monitor and keyboard back into your main computer. Once the server is up, you can administer it over the network via ssh.

[–] [email protected] 1 points 3 months ago

True, it's just that I'd like to avoid purchasing more useless stuff. I might move in a few months and maybe carry these computers but I definitely won't be able to take my monitor. Just going to be a waste of money, and I'm trying to be frugal.

I am planning to build a small cheap DIY KVM using PiKVM and cheap Aliexpress parts (Raxda's Zero 3W or the Banana Pi Zero, not sure if they are supported though) in about $25 which I can probably carry around

[–] [email protected] 27 points 3 months ago (1 children)

Definitely agree for a single install. If OP has a bunch of these installs to do, then editing an install USB to configure networking and enable sshd might be worth the effort. Do the install over ssh and hope the machine starts up as desired, but even then, if it doesn't just magically appear on the network, he's going to need a monitor to see where the startup failed.

Raspberry Pi's disk imager will let you pre-configure networking, accounts, and ssh, so you just write the image to an SD card, plug it in, and go. That's a great solutions for systems usually meant to be headless and removable media. If OP's client hardware allows, he could plug in the M2 or SATA drive meant to be the server's startup, install Deb there, and. transfer to the server hardware. That's definitely more work that just swapping the keyboard & monitor, but it accomplishes OP's stated goal. (Otherwise, a lot of this thread follows the linux meme of "How do I [X]?" "[X] is dumb, do [Y] instead.")

[–] [email protected] 3 points 3 months ago

Agreed on all counts.

My reply initially had a "if you had a fleet of these things..." addendum, but OP's post read (to me) as though he was converting commodity hardware into a makeshift home server, so I removed it because it was almost certainly not relevant.

[–] [email protected] 3 points 3 months ago* (last edited 3 months ago) (2 children)

I use a KVM over IP.

I made my own tiny pilot device for less than £100 and it has worked flawlessly for a few years.

This assumes your server has a hdmi output, if not you will need a VGA to hdmi or similar converter, danger of it becoming a bit of a hodge-podge of adapters, but hey, if it works, it works!

[–] [email protected] 1 points 3 months ago (1 children)

I'm planning to use a Raxda Zero 3W/Banana Pi Zero for this. Do you think this will suffice? I don't need speed or power, it just needs to be usable.

[–] [email protected] 1 points 2 months ago (1 children)

I've no experience with either of those devices. So long as they're comparable in terms of USBC features (otg) to emulate the keyboard and mouse then you should be good as the overhead of running the software seems to be minimal from my usage.

Without that, you'll get video without keyboard and mouse support.

[–] [email protected] 1 points 2 months ago

Thanks, I'll take a look!

[–] [email protected] 2 points 3 months ago* (last edited 3 months ago)

There's a bunch of other variants like PiKVM and BIiKVM as well. Even some cheap knockoffs on Aliexpress that may do the job.

load more comments
view more: next ›