this post was submitted on 31 Oct 2023
285 points (95.2% liked)

Linux

56522 readers
917 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

Yet another win for Systemd.

top 50 comments
sorted by: hot top controversial new old
[–] Satelllliiiiiiiteeee@kbin.social 54 points 2 years ago (2 children)

Target disk mode is fantastic, I'm thrilled to see this coming to Linux

[–] stardreamer@lemmy.blahaj.zone 16 points 2 years ago* (last edited 2 years ago)

Worked in IT, target disk mode is a life saver when you have to recover data from a laptop with a broken screen/keyboard/bad ribbon cable and don't want to take apart something held together by glue.

[–] RaoulDook@lemmy.world 14 points 2 years ago

It's a nice feature. I used it a few times on old Macs with external FireWire hard drives for booting a different OS or troubleshooting.

[–] loaExMachina@sh.itjust.works 31 points 2 years ago (2 children)

Soon we'll be debating whether we call it systemd/linux or gnu/systemd.

[–] MonkderZweite@feddit.ch 23 points 2 years ago

Oh, another arm growing.

[–] kittenzrulz123@lemmy.ml 15 points 2 years ago

This seems like a win for almost all distros

[–] woelkchen@lemmy.world 13 points 2 years ago

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

[–] ramble81@lemm.ee 12 points 2 years ago (1 children)

Yay, yet another storage protocol over the network.

[–] TCB13@lemmy.world 12 points 2 years ago (1 children)

Not a storage protocol over the network, but yes :P

[–] ramble81@lemm.ee 2 points 2 years ago (1 children)

“ 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….?

[–] maryjayjay@lemmy.world 24 points 2 years ago* (last edited 2 years ago) (3 children)

The protocol already existed. This made it convenient to boot from it

load more comments (3 replies)
[–] iamak@infosec.pub 12 points 2 years ago (2 children)
[–] smo@lemmy.sdf.org 19 points 2 years ago (2 children)

"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.

[–] kalessin@lemmy.world 2 points 2 years ago

Great answer

[–] iamak@infosec.pub 1 points 2 years ago

Oh okay. Thanks for the simple explanation :)

[–] callyral@pawb.social 8 points 2 years ago (2 children)

same, i have no idea what any of that means and i use runit

[–] voidskull@lemmy.ml 2 points 2 years ago

runit gang !

[–] FuckBigTech347@lemmygrad.ml 1 points 2 years ago* (last edited 2 years ago) (1 children)

From what I understand it's basically like a "thin client" type of thing where the client loads the Kernel from local storage up to a certain point and then boots into a rootfs that is somewhere else on a remote server.

[–] flashgnash@lemm.ee 1 points 2 years ago (2 children)
[–] FuckBigTech347@lemmygrad.ml 2 points 2 years ago* (last edited 2 years ago)

Similar but in this case the Linux Kernel/Init System act as the PXE firmware so you don't need a TFTP Server to load initramfs and a Kernel image. And you don't need a NFS or Samba server because the Server has the drive with the rootfs already exposed to the network.

[–] yum13241@lemm.ee 2 points 2 years ago

Basically, your system, if asked to, will boot into a limited mode where it exposes its drives over NVMe-TCP. It's like taking the hard drive out and putting it into a different PC, but over the network.

[–] immibis@social.immibis.com 7 points 2 years ago (1 children)

@TCB13 @linux Everything is systemd in the future. This has nothing to do with systemd. It could as well have been called targetdiskd.

[–] TCB13@lemmy.world 13 points 2 years ago (2 children)

You assessment isn't entirely correct as this is indeed related to systemd. Read the PR https://github.com/systemd/systemd/pull/29748

[–] immibis@social.immibis.com 5 points 2 years ago (1 children)

@TCB13 services aren't systemd-related just because they are launched by systemd.

[–] winterayars@sh.itjust.works 16 points 2 years ago (2 children)

A service by itself shouldn't be systemd, it should be implemented separately and run under systemd. However, this is using the systemd target subsystem which is a little more specific.

[–] TCB13@lemmy.world 4 points 2 years ago

Exactly my point. Thanks.

[–] immibis@social.immibis.com 1 points 2 years ago (1 children)

@winterayars systems targets were formerly known as runlevels, and this particular one probably could also work with init= because what else could you possibly run at the same time?

[–] winterayars@sh.itjust.works 2 points 2 years ago (2 children)

You might be able to get away with just using init=

load more comments (2 replies)
load more comments (1 replies)
[–] signofzeta@lemmygrad.ml 6 points 2 years ago (1 children)

How do you think file systems would be handled? Apple’s SCSI/FireWire/USB/Thunderbolt Target Disk Mode just made all disks available over the interface in a filesystem-agnostic manner. Would I be able to see my ext4 boot partition, ZFS arrays, and any attached volumes?

[–] emptiestplace@lemmy.ml 2 points 2 years ago

As with Apple's implementation, filesystems aren't handled - whatever device you connected with would see block devices, essentially no different from a physical disk in your system.

[–] MonkCanatella@sh.itjust.works 5 points 2 years ago (1 children)

Is this like booting over pxe? Is nvme tcp widely supported on motherboards?

[–] TCB13@lemmy.world 17 points 2 years ago (4 children)

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.

[–] devfuuu@lemmy.world 34 points 2 years ago

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.

[–] ikidd@lemmy.world 8 points 2 years ago (1 children)

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.

[–] TCB13@lemmy.world 5 points 2 years ago

The PR aims to make it easy and simple.

[–] Strit@lemmy.linuxuserspace.show 3 points 2 years ago (1 children)

So when it's booted it will just advertise the storage to the LAN over nvme-tcp protocol?

[–] TCB13@lemmy.world 3 points 2 years ago* (last edited 2 years ago) (3 children)

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.

[–] Strit@lemmy.linuxuserspace.show 2 points 2 years ago

But is it running at the same time as a an OS or is it just a device without an OS running, sharing storage?

[–] db2@sopuli.xyz 2 points 2 years ago (1 children)

So NAS without any controls. Yay?

[–] Swedneck@discuss.tchncs.de 2 points 2 years ago (1 children)

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.

load more comments (1 replies)
[–] psmgx@lemmy.world 1 points 2 years ago (1 children)

So share drive / simplified NAS, no?

[–] TCB13@lemmy.world 11 points 2 years ago

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

[–] MonkCanatella@sh.itjust.works 1 points 2 years ago

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?

[–] andruid@lemmy.ml 4 points 2 years ago

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.

[–] lambalicious@lemmy.sdf.org 0 points 2 years ago

And why would this need systemd of all things? Should basically be doable over something like SSH / TFTP, right?

load more comments
view more: next ›