> > Then you mount the connection, > > see the examples in the man page mount(1). > > Some devices need some other extra programs be run > > first, which provide files abstracting the disks for the > > fileserver to use, like usb which needs another server. > > Is there already some tool for modeling those dependencies > (hopefully in a purely declarative way) and start/stop > services on-demand ?
usbd does do a lot of things automaticly. but there are limits. eventually one runs into hardware. maybe one would like to be able to plug in a new pcie card while the system is running, reenumerate the bus, recognize the new usb ports, scan them and find the attached disk, start usb/disk and find the fat filesystem there and start dossrv on it. unfortunately, if one's fileserver is connected over ether0 and ether0 is renumbered or needs a different bar as a result of reenumerating the pcie bus, you're going to have to figure out how to make sure that the hardware attached to ether0 doesn't change, and how to make sure that the ip stack doesn't get irritated during the reenumeration and reinitialization of the adapter. it's a fairly hard problem. usbd gets a lot done with little effort. it's quite nice. the downside is that usbd needs to be godlike in its knowledge of what programs drive what kind of devices. this would be harder to do with a more traditional interface like ethernet that doesn't concurrently define a data layer and application layer. (and is assumed less secure.) do you really want your os starting, say, aoe just because the ethernet adapter saw aoe packets floating around on the wire? - erik