Soon we'll be debating whether we call it systemd/linux or gnu/systemd.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Red Hat: "we put the D in your System"
I'm happy that this is coming to linux (I believe Nutanix has a great method to expose storage over IPs), but I would have liked if this was a bit more project/dependence agnostic.
Oh, another arm growing.
Yay, yet another storage protocol over the network.
Not a storage protocol over the network, but yes :P
“ via NVMe-TCP (in case you wonder what that is: it's the new hot shit for exposing block devices over the network, kinda like iSCSI…”
So….?
The protocol already existed. This made it convenient to boot from it
So NVMe-TCP is yet another storage over network standard…. Regardless of making it work like this.
I guess if you had your way we'd still be doing token ring over twin-ax. Whatever
I see no flaw in this logic
This seems like a win for almost all distros
Link to the post (for accessibility and follow-up in the thread): https://mastodon.social/@pid_eins/111324093735348164
Pull request: https://github.com/systemd/systemd/pull/29748
Can someone eli5 pls?
"target disk mode", which this claims to be taking a lot of inspiration from, pretty much turns your computer into an external harddrive - so you can connect another machine to it for direct access. This appears to be trying to accomplish the same, but over the network.
If you've ever stuffed up a machine so badly that the best idea you could come up with, was to take the harddrive out and work on it from another machine - this pretty much allows you to do that. But instead of taking the drive out and putting it an external drive enclosure, you just ask the stuffed up machine to act as the external drive enclosure.
Great answer
Oh okay. Thanks for the simple explanation :)
same, i have no idea what any of that means and i use runit
runit gang !
Is this like booting over pxe? Is nvme tcp widely supported on motherboards?
No, this has nothing to do with your motherboard. Once you reach the boot menu you'll be able to pick your OS and alternatively systemd-storagetm
. If you chose the the latter then your disks will be available to other machines over NVME-TCP. Just like Apple.
The problem of keeping comparing and doing analogies with apple shit stuff is that many of us have no idea what tech of magic apple does, so saying things like "just like apple" is a completely useless phrase that gives zero info whatsoever about anything.
It's probably why we're getting the tech almost 20 years late. Apple started doing this with FireWire
So I could mount and chroot over TCP to fix problems? Looks a little more complicated at this point than fstabbing an iscsi target, but I imagine that'll improve. https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/managing_storage_devices/configuring-nvme-over-fabrics-using-nvme-tcp_managing-storage-devices
Sweet.
The PR aims to make it easy and simple.
So when it's booted it will just advertise the storage to the LAN over nvme-tcp protocol?
Not "booted", you won't be booting your full OS. It's just an option on the boot menu that launches systemd and a small program that does the magic and nothing else.
So share drive / simplified NAS, no?
Kind of... but you're directly accessing the hard drive like iSCSI does. Way less latency, no high (and slow) protocols like SMB are used.
NVMe/TCP is an extension of the NVMe base specification that defines the binding of the NVMe protocol to message-based fabrics using TCP. The rules for mapping NVMe queues, creation of NVMe-oF capsules, and the methods used to deliver the capsules over the TCP fabric are described in the NVMe/TCP Transport Specification. By binding the NVMe protocol to TCP, NVMe/TCP enables the efficient end-to-end transfer of commands and data between NVMe-oF hosts and NVMe-oF controller devices by any standard Ethernet-based TCP/IP networks. Large-scale data centers can use their existing Ethernet-based network infrastructure with multilayered switch topologies and traditional network adapters
- https://infohub.delltechnologies.com/l/nvme-nvme-tcp-and-dell-smartfabric-storage-software-overview-ip-san-solution-primer-1/what-is-nvme-tcp/
- https://nvmexpress.org/wp-content/uploads/March-2019-NVMe-TCP-What-You-Need-to-Know-About-the-Specification.pdf
- https://nvmexpress.org/answering-your-questions-nvme-tcp-what-you-need-to-know-about-the-specification-webcast-qa/
But is it running at the same time as a an OS or is it just a device without an OS running, sharing storage?
So NAS without any controls. Yay?
trivial to set up NAS with minimal overhead, plus you can boot any pc into this once it's standard, which would be nice for rescuing when you fuck something up: rather than fiddle around with rescue mode or digging out the drives you just boot into this mode and access the drives from your laptop or whatever.
It doesn't sound easier than ventoy tbh.
So like, grubd boot menu? And from there I can boot over a location on my nas for example? I set up ipxe a couple weeks ago but it couldn’t load over my thunderbolt to 10g nic. Would this help?
So this is a service aimed at exposing disks as nvme-tcp boot targets on boot of the system? I mean I love it, I wonder if this could be used to help with a chicken and egg problem I've had with building clustered systems easier. So far I either need a running service to host a network file system (like NFS or CEPH), or I need local disks that bootstrap the clustered storage environment.
And why would this need systemd of all things? Should basically be doable over something like SSH / TFTP, right?