wireless networking - Cross platform WiFi enabled folder access on linux embedded device

06
2014-04
  • Dustin H.

    I have a device, we'll say it's a laptop running Ubuntu 12.04 with a stripped kernel that can only run a single program. This device does not have a keyboard or a mouse, but two joysticks and four buttons. Technically, I believe I'm faking the appearance of a true embedded device. An xsession is chosen and automatically logged into that only spawns gnome-wm and runs a fullscreen application. Access to the desktop Ubuntu environment is disabled.

    What I would like to do is allow both Unix and Windows desktop computers to access a read-only folder on this device. The device itself creates data files that are sync'd to this folder. I would prefer for the interaction to be done through WiFi or ethernet access and be as automated and customer/user friendly as possible. I have a desktop application that can open and manipulate the data files the device generates; I would have no problem limiting access to said folder from the desktop application.

    From an interface perspective, maybe the user only needs to connect to the device in some way over the network (I can search all active connections and find my device) and have a folder appear or front-load the folder through my desktop application. The user can then drag-and-drop the files onto his/her desktop or simply open the files in my desktop application.

    I've looked into certain solutions, such as creating a hotspot using hostapd or a file server using samba, but I'm curious if there is an easier and more straightforward way to solve this problem as I have not been able to get the results needed.

    Thanks in advance.

  • Answers
    Know someone who can answer? Share a link to this question via email, Google+, Twitter, or Facebook.

    Related Question

    linux - Cross-platform file system
  • Console

    I would like my external drives to be readable and writable from Linux, Mac OS X and Windows.

    FAT32 works, but the 4 GB file size limit is a showstopper these days. Are there any alternatives?


  • Related Answers
  • Peter Mortensen

    As Breakthrough said, use NTFS. In both Mac OS and Linux, you can use NTFS-3G to enable read/write to an NTFS partition; on Mac OS you also need MacFuse, but that's it.

    These projects are free, open-source and mature. I've used this setup on a Mac and I've had no problems accessing data from an NTFS partition.

  • EmmEff

    The simple answer is- no. There is no lowest common denominator across these OSes aside from FAT32.

    By lowest common denominator, I mean built-in filesystems. For add-ons, you're on your own.

  • Marco

    UDF is a candidate. It works out-of-the-box on linux >= 2.6.31, Windows >= Vista, MacOS >= 9 and on many BSDs.

    Note: UDF comes in different versions, which are not equally supported on all platforms, see Wikipedia - Compatibility.

    Related question: Using UDF on a USB flash drive

  • Breakthrough

    Well you have two solutions. Many Linux distributions include tools for reading and writing to NTFS drives...

    An alternative would be to use Ext2. There is a windows utility which integrates the filesystem with the Windows operating system. I think this would be your ideal solution:

    It installs a pure kernel mode file system driver Ext2fs.sys, which actually extends the Windows operating system to include the Ext2 file system. Since it is executed on the same software layer at the Windows NT operating system core like all of the native file system drivers of Windows (for instance NTFS, FASTFAT, or CDFS for Joliet/ISO CD-ROMs), all applications can access directly to Ext2 volumes. Ext2 volumes get drive letters (for instance O:). Files, and directories of an Ext2 volume appear in file dialogs of all applications. There is no need to copy files from or to Ext2 volumes in order to work with them.

  • Will

    Mount your external drives to a server with NFS and Samba.

  • lajuette

    try exFAT, which becomes available for more and more OSes. Accordings to the linked wikipedia article (see sources) there's an open source kernel module for linux in development. OS X supports it since 10.6.5, Windows supports it since Vista. There are updates for oler Microsoft OSes.

    exFAT supports large files.

  • Peter Mortensen

    FAT32 is something that you can be sure of to work almost anywhere.

    I struggle from the file size limit, which by today's standards isn't that large anymore. Since exFAT isn't available on Linux yet, I was looking for alternatives, and it's really hard to find something suitable.

    UDF was once meant to be a cross platform and cross media filesystem, but it kinda got forgotten. There is an option to format UDF for hard drives, which is quite suitable for removable drives, but from what I experienced, support on Windows is minimal, if at all. I don't know if Windows 7 supports UDF drives other than BluRay discs.

    I settled on using NTFS for my external drives, that need to be plugged in into Windows computers, as well as Linux computers. For my removable drives, that are mainly, if not only used on Linux computers, I use XFS.

    The same problem applies to encryption as well: I use LUKS on Linux, which has some support on Windows. TrueCrypt can't be integrated into Linux systems too well, compared to LUKS, so I settled on that one.