GNUNET-DOWNLOAD(1)
β¨ gnunet-download β¨ β bestie's guide to pulling files off GNUnet π
okay so this is the gnunet-download manual page from the General Commands Manual section, and it is literally your command line interface for downloading files from GNUnet. no cap. let's get into it π¦
πΈ NAME πΈ
gnunet-download β a command line interface for downloading files from GNUnet π
π SYNOPSIS π
gnunet-download [-a LEVEL | --anonymity=LEVEL]
[-c FILENAME | --config=FILENAME]
[-D | --delete-incomplete] [-h | --help]
[-L LOGLEVEL | --loglevel=LOGLEVEL] [-n | --no-network]
[-o FILENAME | --output=FILENAME]
[-p DOWNLOADS | --parallelism=DOWNLOADS]
[-r REQUESTS | --request-parallelism=REQUESTS]
[-R | --recursive] [-v | --version] [-V | --verbose]
β¨GNUNET_URIβ©
π DESCRIPTION π
Download files from GNUnet, queen. That's the whole vibe. The options are as follows π
-a LEVEL|--anonymity=LEVELβ this one lets you set extra anonymity constraints, and the default is1. Okay so here's the tea:- If you set it to
0, GNUnet will publish the file non-anonymously and, fr fr, it signs the advertisement for the file using your peer's private key. That means other users can download the file as fast as possible, including via non-anonymous methods (discovery via DHT and CADET transfer). speedy but exposed, bestie π - If you set it to
1(the default), you're using the standard anonymous routing algorithm β which does not explicitly leak your identity. BUT. A powerful adversary may still be able to do traffic analysis (statistics) and over time discover your identity. so like, lowkey still a risk. - You can gain better privacy by specifying a higher level of anonymity (values above
1). This tells FS that it must hide your own requests in equivalent-looking cover traffic. This should confound an adversary's traffic analysis, increasing the time and effort it would take to discover your identity β¨ However, it also can significantly reduce performance, because your requests get delayed until sufficient cover traffic is available. it's giving "worth it but slow." - The specific numeric value (for anonymity levels above
1) is simple: given an anonymity level L (above 1), each request FS makes on your behalf must be hidden inL-1equivalent requests of cover traffic (traffic your peer routes for others) in the same time-period. The time-period is twice the average delay by which GNUnet artificially delays traffic. math girlies rise π - Note that regardless of the anonymity level you choose, peers that cache content in the network always use anonymity level
1.
- If you set it to
-c FILENAME|--config=FILENAMEβ use config file (default:~/.config/gnunet.conf) ποΈ-D|--delete-incompleteβ causesgnunet-downloadto delete incomplete downloads when aborted with CTRL-C. Important caveat though: complete files that are part of an incomplete recursive download will not be deleted even with this option. And without this option, terminatinggnunet-downloadwith a signal will cause incomplete downloads to stay on disk. Ifgnunet-downloadruns to (normal) completion finishing the download, this option has no effect. so it's a cleanup-crunchy-time thing π-h|--helpβ print the help page. classic. π«Ά-L LOGLEVEL|--loglevel=LOGLEVELβ change the loglevel. Possible values for LOGLEVEL areERROR,WARNING,INFOandDEBUG.-n|--no-networkβ only search locally, do not forward requests to other peers. staying in your own lane, love that πΈ-o FILENAME|--output=FILENAMEβ write the file to FILENAME. Hint: when recursively downloading a directory, append a/to the end of the FILENAME to create a directory of that name. If no FILENAME is specified,gnunet-downloadconstructs a temporary ID from the URI of the file. The final filename is constructed based on meta-data extracted usinglibextractor(1)(if available). β¨-p DOWNLOADS|--parallelism=DOWNLOADSβ set the maximum number of allowed parallel downloads to DOWNLOADS. More parallel downloads can, to some extent, improve the overall time to download content. However, parallel downloads also take more memory (see also-rwhich can be used to limit memory utilization) and more sockets. This option is used to limit the number of files that are downloaded in parallel.-rcan be used to limit the number of blocks that are concurrently requested. As a result, the value only matters for recursive downloads. The default value is32.-r REQUESTS|--request-parallelism=REQUESTSβ set the maximum number of parallel requests that is allowed. If multiple files are downloaded,gnunet-downloadwill not run them in parallel if this would cause the number of pending requests to possibly exceed the given value. This is useful since, for example, downloading dozens of multi-gigabyte files in parallel could exhaust memory resources and would hardly improve performance. Note that the limit only applies to this specific process and that other download activities by other processes are not included in this limit. Consider raising this limit for large recursive downloads with many large files if memory and network bandwidth are not fully utilized and if the parallelism limit (-p) is not reached. This option also only matters for recursive downloads. The default value is4092. π§-R|--recursiveβ download directories recursively (and in parallel). Note that the URI must belong to a GNUnet directory and that the filename given to-omust end in.gndβ otherwise, you will receive an error. You may want to useDIRNAME/.gndfor the filename, this way a directoryDIRNAME/will be created, and GNUnet's internal directory information will be stored inDIRNAME/.gnd. However, it is also possible to specifyDIRNAME.gnd, in which case the files from the directory will end up inDIRNAME/, while GNUnet's directory meta data will be inDIRNAME.gnd. it's giving β¨organizedβ¨-v|--versionβ print the version number.-V|--verboseβ print progress information. main character energy, you get to watch it happen π₯
π NOTES π
The GNUNET_URI is typically obtained from gnunet-search(1). gnunet-fs-gtk(1) can also be used instead of gnunet-download. If you ever have to abort a download, you can at any time continue it by re-issuing gnunet-download with the same filename. In that case GNUnet will not download blocks again that are already present. GNUnet's file-encoding will ensure file integrity, even if the existing file was not downloaded from GNUnet in the first place. Temporary information will be appended to the target file until the download is completed. so like, you can always pick up where you left off, bestie π
π¦ FILES π¦
~/.config/gnunet.confβ GNUnet configuration file
β SEE ALSO β
gnunet-fs-gtk(1), gnunet-publish(1), gnunet-search(1), gnunet-service-fs(1), gnunet.conf(5)
The full documentation for gnunet is maintained as a Texinfo manual. If the info(1) and gnunet programs are properly installed at your site, the command
info gnunet
should give you access to the complete handbook,
info gnunet-c-tutorial
will give you access to a tutorial for developers.
Depending on your installation, this information is also available in gnunet(7) and gnunet-c-tutorial(7).
π BUGS π
Report bugs by using https://bugs.gnunet.org or by sending electronic mail to β¨gnunet-developers@gnu.orgβ©. (not me tho, I'm just the messenger π)
okay that's the whole page, you ate that π this was the Debian build from January 31, 2016, part of the GNUnet docs β go forth and download, icon πβ¨π«Ά
π¦ where this page comes from
- alpine 3.24: gnunet-doc 0.27.0-r0 Β· AGPL-3.0-only
- debian bookworm: gnunet 0.19.3-2 Β· AGPL-3.0-or-later
- debian trixie: gnunet 0.20.0-7 Β· AGPL-3.0-or-later
- nixos 26.05: gnunet 0.26.2
- nixpkgs unstable: gnunet 0.26.2
- opensuse-leap 16.0: gnunet 0.23.1-bp160.1.18 Β· AGPL-3.0-or-later
- opensuse-leap 16.0: gnunet 0.23.1-bp160.1.18 Β· AGPL-3.0-or-later
- opensuse-leap 16.0: gnunet 0.23.1-bp160.1.18 Β· AGPL-3.0-or-later
- opensuse-leap 16.0: gnunet 0.23.1-bp160.1.18 Β· AGPL-3.0-or-later
- ubuntu jammy: gnunet 0.15.3-4 Β· AGPL-3.0-or-later
- ubuntu noble: gnunet 0.20.0-4.1build3 Β· AGPL-3.0-or-later
- ubuntu questing: gnunet 0.20.0-7
- ubuntu resolute: gnunet 0.20.0-8 Β· AGPL-3.0-or-later
- ubuntu stonking: gnunet 0.20.0-9 Β· AGPL-3.0-or-later
- π the page's license: GPL3.0-or-later OR FDL1.3-or-later
- Copyright (C) 2001-2019 GNUnet e.V
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms