Skip to content
This repository has been archived by the owner on May 7, 2023. It is now read-only.
/ httpfs Public archive

Experimental FUSE filesystem that lets you read HTTP/HTTPS/FTP files as if they were present on your own Linux box.

License

Notifications You must be signed in to change notification settings

danielrozenberg/httpfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation


NOTE: this project is not being maintained. You might be interested in https://github.com/higlass/simple-httpfs which implements a similar concept!


HttpFs

Experimental FUSE filesystem that lets you read HTTP/HTTPS/FTP files as if they were present on your own Linux box.

Requirement

Requires the following Python libraries, all installable via PyPi, etc:

  • requests
  • fusepy

Usage

Setup

Create a directory to be used as a mountpoint. The directory should be named “http:”, “https:” or “ftp:” and be placed on your home directory.

Starting

Run the filesystem: ./httpfs.py <mountpoint> <http|https|ftp>

(Example: /.httpfs.py /home/daniboy/http: http - this will “mount” the HTTP schema to /home/daniboy/http:

Using

To access a file just paste the URL as part of your command and append two dots at the end. For example, with the URL http://placekitten.com/g/400/300 we can:

  • cp ~/http://placekitten.com/g/400/300.. ~/kitty.jpg - this will copy the file to the home directory under the name kitty.jpg
  • xdg-open ~/http://placekitten.com/g/400/300.. - this will open the file with the user's preferred application
  • Using GIMP's “Open Image” dialog open http://placekitten.com/g/400/300.. in the home directory

Stopping

To stop the filesystem run fusermount -u <mountpoint>. DO NOT kill the Python process as this will NOT clear the mountpoint, allowing all sorts of extra dimensional critters to invade our universe through your device.

NOTICE

  • See instructions on how to stop the filesystem!
  • Linux ignores multiple /-slashes, so trying to access the file http:/example.com/, http://example.com/ and http:///////////example.com/ will all lead to the same file
  • The filesystem caches all files that were accessed with it in RAM for approximately 60 seconds
  • This FUSE filesystem is EXPERIMENTAL and far from being stable enough for any work, and comes under NO WARRANTY (and any other big scary all-caps things that can be said)

About

Experimental FUSE filesystem that lets you read HTTP/HTTPS/FTP files as if they were present on your own Linux box.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages