Bug 695066 - nbd-server has no initscript.
Summary: nbd-server has no initscript.
Alias: None
Product: Fedora
Classification: Fedora
Component: nbd
Version: 14
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Milos Jakubicek
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2011-04-10 10:04 UTC by Joost Ruijsch
Modified: 2012-08-16 21:36 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2012-08-16 21:36:30 UTC
Type: ---

Attachments (Terms of Use)
My initscript for nbd-server (1.93 KB, text/plain)
2011-04-10 10:04 UTC, Joost Ruijsch
no flags Details

Description Joost Ruijsch 2011-04-10 10:04:18 UTC
Created attachment 491059 [details]
My initscript for nbd-server

Description of problem:
nbd-server is meant to run as a network service, but it has no initscript.

Version-Release number of selected component (if applicable):
nbd-2.9.20-1.fc14.i686 (and others)

Additional info:

I have attached the initscript that I made. Please review and add this or other initscrip to package. Thanks.

Comment 1 Warren Togami 2011-04-13 08:45:29 UTC
I was the original packager of nbd in Fedora.  I do not believe it is a good idea to ship an initscript for nbd-server because nbd-server lacks standards and there are simply too many ways it is used.

* It has no standard TCP port.
* It serves entirely different things depending on what it is being used for.
* In the case of LTSP, it was never run directly but instead launched on-demand by xinetd.  Every incoming TCP connection in this case would create a new image file and serve it.  This would not work with an initscript.

Closing this as NOTABUG.

I may recommend packaging your initscript in a separate package or just making sure it is well documented and easy for folks to find.

Comment 2 Joost Ruijsch 2011-04-13 09:40:18 UTC
(In reply to comment #1)

> * It has no standard TCP port.

That is no longer true. As of 02 August 2010 it is using the IANA registered TCP port 10809.

In the new protocol (v2.9), different shares now use names instead of different port numbers. Everything is defined in the config file /etc/nbd-server/config.

> * It serves entirely different things depending on what it is being used for.
That is true for about any service. Following that rule, none of them should have initscripts.

> * In the case of LTSP, it was never run directly but instead launched on-demand
> by xinetd.  Every incoming TCP connection in this case would create a new image
> file and serve it.  This would not work with an initscript.

I think that could work. It has a hook in the config file to run a shell command upon client connection that can prepare the image or log stuff.

> Closing this as NOTABUG.

Perhaps you want to reconsider?

OpenSuse does include an initscript:

Comment 3 Joost Ruijsch 2011-04-13 11:20:25 UTC
Got this reply from Wouter Verhelst, the developer of NBD:

"TTBOMK I don't have an account on the redhat bugzilla, but feel free to
forward the following:

While Warren's objections were valid at the time when he initially
packaged nbd, I have worked since then to improve the way nbd-server
works. The standard TCP port is one thing; the shell hooks were added
because I noticed LTSP calling nbd-server in a wrapper script, and I
thought there had to be a better way to handle that.

Note that for backwards compatibility the server still supports running
the old protocol version, which does not use the IANA-assigned port
number and cannot use named exports, but I expect that to be phased out
wherever it is in use.

Also note, for reference, that the manpage on linux.die.net is somewhat
outdated -- a more recent version is available at
http://nbd.sf.net/nbd-server.5.html "

Comment 4 Warren Togami 2011-04-13 19:33:14 UTC
OK, these are very good reasons to add an initscript.  Glad to see that nbd is improving substantially.  I will personally look into integrating this in the best way possible for Fedora.

Given that it is likely already too late for Fedora 15.  May I ask for some patience?

Comment 5 Joost Ruijsch 2011-06-15 18:48:56 UTC
I am running F15 now and found that the included nbd-2.9.20 has significant security and stability issues. Upon connect both server and client crash in my setup.

The author *strongly* recommends upgrade:

nbd-2.9.22 release notes

This release of the NBD userland utilities fixes one security bug
(CVE-2011-1925) and a number of corruption bugs on oversize requests, as
well as some other stability fixes. For users of nbd >= 2.9.17,
upgrading to it is *strongly* recommended.

I am working on a setup to boot the fedora 15 live-cd images over nbd and it would be great if an update including the new initscript could be released.

There are also issues with dracut-network/nbdroot module on F15, but I will file another report on that later.

Comment 6 Fedora End Of Life 2012-08-16 21:36:32 UTC
This message is a notice that Fedora 14 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 14. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained.  At this time, all open bugs with a Fedora 'version'
of '14' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this 
occurring, but we forgot to do that. A thousand apologies.)

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, feel free to reopen 
this bug and simply change the 'version' to a later Fedora version.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we were unable to fix it before Fedora 14 reached end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" (top right of this page) and open it against that 
version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 

Note You need to log in before you can comment on or make changes to this bug.