After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 355382 - Share drives with zeroconf
Share drives with zeroconf
Status: RESOLVED OBSOLETE
Product: gnome-user-share
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-user-share maintainers
gnome-user-share maintainers
Depends on:
Blocks:
 
 
Reported: 2006-09-11 06:24 UTC by Vincent Untz
Modified: 2019-03-20 10:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Vincent Untz 2006-09-11 06:24:58 UTC
From a mail from David Zeuthen:

> [3] : in the same vein, it would be nice for g-h-m to have a feature to
> share some/all (external, maybe also internal) storage drives using
> Avahi. Sounds like a fun and small project for someone to hack on,
> possibly it needs some integration with e.g. gnome-user-share. Would be
> a really nice feature though, would help extend our (GNOME) reach even
> more into the data center and the world of sys admins.
Comment 1 Corey Burger 2006-09-11 06:27:28 UTC
Apple does this. It also makes remote mounting very very easy. 
Comment 2 Jeffrey Stedfast 2007-12-07 04:14:33 UTC
what is zeroconf? I'm sensing someone else will have to implement this and send me a patch
Comment 3 Bastien Nocera 2007-12-07 08:58:10 UTC
Avahi is an implementation of zeroconf/Rendezvous/Bonjour.
Comment 4 David Zeuthen (not reading bugmail) 2008-03-04 20:20:38 UTC
This should most probably be moved to gnome-user-share...
Comment 5 David Zeuthen (not reading bugmail) 2008-04-30 14:26:49 UTC
Note that there are actually two things we want here

 1. Share the files from locally mounted drives via a _file_ sharing
    protocol such as dav/smb/ftp/etc.
    - This is a well-known problem and somewhat straightforward to solve.
    - The device can still be used locally

 2. Share the _device_ using protocols like nbd/iSCSI/etc.
    - This probably prevents local usage of the device
    - But allows the client to do things like
      - burning discs
      - watching DVD's
      - booting from the device incl. rootfs etc.

These are somewhat different use cases. This bug was filed with the intent of doing task 1. 
Comment 6 Bastien Nocera 2008-04-30 14:54:52 UTC
(In reply to comment #5)
> Note that there are actually two things we want here
> 
>  1. Share the files from locally mounted drives via a _file_ sharing
>     protocol such as dav/smb/ftp/etc.
>     - This is a well-known problem and somewhat straightforward to solve.
>     - The device can still be used locally

We would only handle sharing over WebDav ourselves. The modifications would go directly in http.c for gnome-user-share, and just change the root of the share.

>  2. Share the _device_ using protocols like nbd/iSCSI/etc.
>     - This probably prevents local usage of the device
>     - But allows the client to do things like
>       - burning discs
>       - watching DVD's
>       - booting from the device incl. rootfs etc.
> 
> These are somewhat different use cases. This bug was filed with the intent of
> doing task 1. 

Did a bit of research on that.

- Sharing USB devices (only works with USB, Linux only):
http://usbip.sourceforge.net/
- Using iSCSI (horrible implementation, on both sides, mostly)
- gnbd would probably be pretty easy to have exported, with a thin avahi layer on top, but would probably only work well with read-only media
Comment 7 David Zeuthen (not reading bugmail) 2008-04-30 15:12:57 UTC
(In reply to comment #6)
> We would only handle sharing over WebDav ourselves. The modifications would go
> directly in http.c for gnome-user-share, and just change the root of the share.

Yeah. Can we do this on the fly?

> - Sharing USB devices (only works with USB, Linux only):
> http://usbip.sourceforge.net/

Yeah, that's somewhat a different use case.

> - Using iSCSI (horrible implementation, on both sides, mostly)

Oh, there are like 3 different implementations of targets and even more for initiators. Some are horribly complex and come with initscripts / configuration files; others are much nicer and don't force all kinds of configuration files; sharing a drive is simply starting a process with the appropriate parameters.

For iSCSI we most probably want to ignore the overly complex discovery protocol they have and just do simple mDNS stuff ourselves.

> - gnbd would probably be pretty easy to have exported, with a thin avahi layer
> on top, but would probably only work well with read-only media

Right.

Also keep in mind that the user might want to set a password on the shared drive and probably also crazy options like whether the link is encrypted etc. We probably want to expose at least passwords?

Either way, since sharing a device requires privileges, I think we'd need HAL (or rather the upcoming HAL 2.0 (DeviceKit*) stuff I'm going to announce real soon now) to expose simple D-Bus methods to a) enumerate; b) start sharing device; c) stop sharing device. Then we can probably abstract the way things are shared too and keep the code in g-u-s somewhat simple.

Thoughts?

    David
Comment 8 GNOME Infrastructure Team 2019-03-20 10:36:58 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gnome-user-share/issues/8.