[GH-ISSUE #2384] Cannot get AWS IMDSv2 token due to curl Expect header #1169

Closed
opened 2026-03-04 01:51:53 +03:00 by kerem · 8 comments
Owner

Originally created by @kuza55 on GitHub (Nov 27, 2023).
Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/2384

Additional Information

Version of s3fs being used (s3fs --version)

Amazon Simple Storage Service File System V1.90 (commit:unknown) with GnuTLS(gcrypt)

Version of fuse being used (pkg-config --modversion fuse, rpm -qi fuse or dpkg -s fuse)

Not a fuse problem

Kernel information (uname -r)

6.2.0-1012-aws

GNU/Linux Distribution, if applicable (cat /etc/os-release)

Ubuntu 22.04.3 LTS

How to run s3fs, if applicable

[x] command line

s3fs dashboard /mnt/aws/dashboard -o iam_role='DashboardRole' --debug -f -o curldbg

s3fs syslog messages (grep s3fs /var/log/syslog, journalctl | grep s3fs, or s3fs outputs)

Command-line output

2023-11-27T22:14:39.536Z [INF] s3fs version 1.90(unknown) : s3fs -o iam_role=DashboardRole --debug -f -o curldbg espresso-dashboard /mnt/aws/espresso-dashboard
2023-11-27T22:14:39.536Z [CRT] s3fs_logger.cpp:LowSetLogLevel(240): change debug level from [CRT] to [INF]
2023-11-27T22:14:39.537Z [INF]     s3fs.cpp:set_mountpoint_attribute(4093): PROC(uid=1000, gid=1000) - MountPoint(uid=1000, gid=0, mode=40755)
2023-11-27T22:14:39.538Z [INF] curl.cpp:InitMimeType(434): Loaded mime information from /etc/mime.types
2023-11-27T22:14:39.538Z [INF] fdcache_stat.cpp:CheckCacheFileStatTopDir(79): The path to cache top dir is empty, thus not need to check permission.
2023-11-27T22:14:39.546Z [INF] s3fs.cpp:s3fs_init(3382): init v1.90(commit:unknown) with GnuTLS(gcrypt)
2023-11-27T22:14:39.546Z [INF] s3fs.cpp:s3fs_check_service(3516): check services.
2023-11-27T22:14:39.546Z [INF] curl.cpp:CheckIAMCredentialUpdate(1770): IAM Access Token refreshing...
2023-11-27T22:14:39.546Z [INF]       curl.cpp:GetIAMCredentials(2822): [IAM role=DashboardRole]
2023-11-27T22:14:39.547Z [CURL DBG] *   Trying 169.254.169.254:80...
2023-11-27T22:14:39.547Z [CURL DBG] * Connected to 169.254.169.254 (169.254.169.254) port 80 (#0)
2023-11-27T22:14:39.547Z [CURL DBG] > PUT /latest/api/token HTTP/1.1
2023-11-27T22:14:39.547Z [CURL DBG] > Host: 169.254.169.254
2023-11-27T22:14:39.547Z [CURL DBG] > User-Agent: s3fs/1.90 (commit hash unknown; GnuTLS(gcrypt))
2023-11-27T22:14:39.547Z [CURL DBG] > Accept: */*
2023-11-27T22:14:39.548Z [CURL DBG] > Transfer-Encoding: chunked
2023-11-27T22:14:39.548Z [CURL DBG] > X-aws-ec2-metadata-token-ttl-seconds: 21600
2023-11-27T22:14:39.548Z [CURL DBG] > Expect: 100-continue
2023-11-27T22:14:39.548Z [CURL DBG] >
2023-11-27T22:14:39.548Z [CURL DBG] * Mark bundle as not supporting multiuse
2023-11-27T22:14:39.548Z [CURL DBG] * HTTP 1.0, assume close after body
2023-11-27T22:14:39.548Z [CURL DBG] < HTTP/1.0 417 Expectation Failed
2023-11-27T22:14:39.548Z [CURL DBG] < Content-Type: text/html
2023-11-27T22:14:39.548Z [CURL DBG] < Content-Length: 363
2023-11-27T22:14:39.548Z [CURL DBG] < Connection: close
2023-11-27T22:14:39.548Z [CURL DBG] < Date: Mon, 27 Nov 2023 22:14:39 GMT
2023-11-27T22:14:39.548Z [CURL DBG] < Server: EC2ws
2023-11-27T22:14:39.548Z [CURL DBG] <
2023-11-27T22:14:39.548Z [CURL DBG] * Closing connection 0
2023-11-27T22:14:39.549Z [ERR] curl.cpp:RequestPerform(2394): HTTP response code 417, returning EIO. Body Text: <?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
  <title>417 - Expectation Failed</title>
 </head>
 <body>
  <h1>417 - Expectation Failed</h1>
 </body>
</html>

Details about issue

s3fs cannot seem to get some sort of IAM token because curl adds the Expect: 100-continue header.

This looks like it should be handled in the code, but as the debug output shows, it is still there: github.com/s3fs-fuse/s3fs-fuse@b4edad86d6

I have verified that when I manually execute the request without the header, I get the token:

curl -v -X PUT -H "X-aws-ec2-metadata-token-ttl-seconds: 21600" http://169.254.169.254/latest/api/token

I think this is the root cause for some other issues like https://github.com/s3fs-fuse/s3fs-fuse/issues/1743

Originally created by @kuza55 on GitHub (Nov 27, 2023). Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/2384 ### Additional Information #### Version of s3fs being used (`s3fs --version`) Amazon Simple Storage Service File System V1.90 (commit:unknown) with GnuTLS(gcrypt) #### Version of fuse being used (`pkg-config --modversion fuse`, `rpm -qi fuse` or `dpkg -s fuse`) Not a fuse problem #### Kernel information (`uname -r`) 6.2.0-1012-aws #### GNU/Linux Distribution, if applicable (`cat /etc/os-release`) Ubuntu 22.04.3 LTS #### How to run s3fs, if applicable <!-- Describe the s3fs "command line" or "/etc/fstab" entry used. --> [x] command line <!-- Executed command line or /etc/fastab entry --> ``` s3fs dashboard /mnt/aws/dashboard -o iam_role='DashboardRole' --debug -f -o curldbg ``` #### s3fs syslog messages (`grep s3fs /var/log/syslog`, `journalctl | grep s3fs`, or `s3fs outputs`) Command-line output ``` 2023-11-27T22:14:39.536Z [INF] s3fs version 1.90(unknown) : s3fs -o iam_role=DashboardRole --debug -f -o curldbg espresso-dashboard /mnt/aws/espresso-dashboard 2023-11-27T22:14:39.536Z [CRT] s3fs_logger.cpp:LowSetLogLevel(240): change debug level from [CRT] to [INF] 2023-11-27T22:14:39.537Z [INF] s3fs.cpp:set_mountpoint_attribute(4093): PROC(uid=1000, gid=1000) - MountPoint(uid=1000, gid=0, mode=40755) 2023-11-27T22:14:39.538Z [INF] curl.cpp:InitMimeType(434): Loaded mime information from /etc/mime.types 2023-11-27T22:14:39.538Z [INF] fdcache_stat.cpp:CheckCacheFileStatTopDir(79): The path to cache top dir is empty, thus not need to check permission. 2023-11-27T22:14:39.546Z [INF] s3fs.cpp:s3fs_init(3382): init v1.90(commit:unknown) with GnuTLS(gcrypt) 2023-11-27T22:14:39.546Z [INF] s3fs.cpp:s3fs_check_service(3516): check services. 2023-11-27T22:14:39.546Z [INF] curl.cpp:CheckIAMCredentialUpdate(1770): IAM Access Token refreshing... 2023-11-27T22:14:39.546Z [INF] curl.cpp:GetIAMCredentials(2822): [IAM role=DashboardRole] 2023-11-27T22:14:39.547Z [CURL DBG] * Trying 169.254.169.254:80... 2023-11-27T22:14:39.547Z [CURL DBG] * Connected to 169.254.169.254 (169.254.169.254) port 80 (#0) 2023-11-27T22:14:39.547Z [CURL DBG] > PUT /latest/api/token HTTP/1.1 2023-11-27T22:14:39.547Z [CURL DBG] > Host: 169.254.169.254 2023-11-27T22:14:39.547Z [CURL DBG] > User-Agent: s3fs/1.90 (commit hash unknown; GnuTLS(gcrypt)) 2023-11-27T22:14:39.547Z [CURL DBG] > Accept: */* 2023-11-27T22:14:39.548Z [CURL DBG] > Transfer-Encoding: chunked 2023-11-27T22:14:39.548Z [CURL DBG] > X-aws-ec2-metadata-token-ttl-seconds: 21600 2023-11-27T22:14:39.548Z [CURL DBG] > Expect: 100-continue 2023-11-27T22:14:39.548Z [CURL DBG] > 2023-11-27T22:14:39.548Z [CURL DBG] * Mark bundle as not supporting multiuse 2023-11-27T22:14:39.548Z [CURL DBG] * HTTP 1.0, assume close after body 2023-11-27T22:14:39.548Z [CURL DBG] < HTTP/1.0 417 Expectation Failed 2023-11-27T22:14:39.548Z [CURL DBG] < Content-Type: text/html 2023-11-27T22:14:39.548Z [CURL DBG] < Content-Length: 363 2023-11-27T22:14:39.548Z [CURL DBG] < Connection: close 2023-11-27T22:14:39.548Z [CURL DBG] < Date: Mon, 27 Nov 2023 22:14:39 GMT 2023-11-27T22:14:39.548Z [CURL DBG] < Server: EC2ws 2023-11-27T22:14:39.548Z [CURL DBG] < 2023-11-27T22:14:39.548Z [CURL DBG] * Closing connection 0 2023-11-27T22:14:39.549Z [ERR] curl.cpp:RequestPerform(2394): HTTP response code 417, returning EIO. Body Text: <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>417 - Expectation Failed</title> </head> <body> <h1>417 - Expectation Failed</h1> </body> </html> ``` ### Details about issue s3fs cannot seem to get some sort of IAM token because curl adds the Expect: 100-continue header. This looks like it should be handled in the code, but as the debug output shows, it is still there: https://github.com/s3fs-fuse/s3fs-fuse/commit/b4edad86d6a60a985a310fac2225cdf7be40bd6d I have verified that when I manually execute the request without the header, I get the token: ``` curl -v -X PUT -H "X-aws-ec2-metadata-token-ttl-seconds: 21600" http://169.254.169.254/latest/api/token ``` I think this is the root cause for some other issues like https://github.com/s3fs-fuse/s3fs-fuse/issues/1743
kerem closed this issue 2026-03-04 01:51:53 +03:00
Author
Owner

@kuza55 commented on GitHub (Nov 28, 2023):

It looks like this is fixed in 1.93, but Ubuntu 22.04.3 LTS doesn't have that version.

Have you guys thought of having some other way to get recent versions, rather than relying on package maintainers?

<!-- gh-comment-id:1830281954 --> @kuza55 commented on GitHub (Nov 28, 2023): It looks like this is fixed in 1.93, but Ubuntu 22.04.3 LTS doesn't have that version. Have you guys thought of having some other way to get recent versions, rather than relying on package maintainers?
Author
Owner

@gaul commented on GitHub (Nov 28, 2023):

You can already compile from source if your distribution is slow. Which other way do you envision of getting more recent versions?

Perhaps you should complain to the Ubuntu maintainers to upgrade packages faster? I notice that only one person indicated that the latest upstream bug affected them (which was me).

Or you could upgrade to a distro like Fedora that upgrades as soon as we release new versions.

<!-- gh-comment-id:1830943097 --> @gaul commented on GitHub (Nov 28, 2023): You can already compile from source if your distribution is slow. Which other way do you envision of getting more recent versions? Perhaps you should complain to the Ubuntu maintainers to upgrade packages faster? I notice that only one person indicated that the [latest upstream bug](https://bugs.launchpad.net/ubuntu/+source/s3fs-fuse/+bug/2020602) affected them (which was me). Or you could upgrade to a distro like Fedora that upgrades as soon as we release new versions.
Author
Owner

@kuza55 commented on GitHub (Nov 29, 2023):

A lot of other open source software provides ways to get it separate from the official repositories.

Having prebuilt binaries that people can download from github or a ppa would be a great alternative to having to build from source.

<!-- gh-comment-id:1832457416 --> @kuza55 commented on GitHub (Nov 29, 2023): A lot of other open source software provides ways to get it separate from the official repositories. Having prebuilt binaries that people can download from github or a ppa would be a great alternative to having to build from source.
Author
Owner

@gaul commented on GitHub (Nov 29, 2023):

It is not feasible to provide binary Linux packages given the matrix of architectures (ARM32, ARM64, x86-64) and SSL libraries (OpenSSL, GNUtls, maybe NSS). Statically linking these or even just libcurl presents its own security issues.

If you want to set up your own PPA we could link to a PPA in the README although users generally prefer distribution packaging for convenience and policy issues. We can also improve the compilation instructions you want to submit a pull request.

The real solution is to communicate your dissatisfaction to your distribution. You can see more precise suggestions at https://github.com/s3fs-fuse/s3fs-fuse/issues/2360#issuecomment-1793974323.

<!-- gh-comment-id:1832592603 --> @gaul commented on GitHub (Nov 29, 2023): It is not feasible to provide binary Linux packages given the matrix of architectures (ARM32, ARM64, x86-64) and SSL libraries (OpenSSL, GNUtls, maybe NSS). Statically linking these or even just libcurl presents its own security issues. If you want to set up your own PPA we could link to a PPA in the README although users generally prefer distribution packaging for convenience and policy issues. We can also improve the compilation instructions you want to submit a pull request. The real solution is to communicate your dissatisfaction to your distribution. You can see more precise suggestions at https://github.com/s3fs-fuse/s3fs-fuse/issues/2360#issuecomment-1793974323.
Author
Owner

@kuza55 commented on GitHub (Nov 29, 2023):

It is not feasible to provide binary Linux packages given the matrix of architectures (ARM32, ARM64, x86-64) and SSL libraries (OpenSSL, GNUtls, maybe NSS). Statically linking these or even just libcurl presents its own security issues.

I don't see why these options are infeasible. CI infra should make either producing this matrix or producing regular releases with statically linked libraries relatively straight forward.

I am personally not hopeful about distributions doing a good job here, and frankly do am not keen about relying on the distribution packages if possible, though it's good to hear a concrete recommendation for Fedora.

<!-- gh-comment-id:1832677211 --> @kuza55 commented on GitHub (Nov 29, 2023): > It is not feasible to provide binary Linux packages given the matrix of architectures (ARM32, ARM64, x86-64) and SSL libraries (OpenSSL, GNUtls, maybe NSS). Statically linking these or even just libcurl presents its own security issues. I don't see why these options are infeasible. CI infra should make either producing this matrix or producing regular releases with statically linked libraries relatively straight forward. I am personally not hopeful about distributions doing a good job here, and frankly do am not keen about relying on the distribution packages if possible, though it's good to hear a concrete recommendation for Fedora.
Author
Owner

@gaul commented on GitHub (Nov 30, 2023):

Infeasible does not mean impossible. What you propose is an large effort for a tiny benefit and simply working around avoidable brokenness. We will not be packaging binaries or creating a PPA. Please follow up with your distribution or switch to a better one like Fedora.

<!-- gh-comment-id:1832928986 --> @gaul commented on GitHub (Nov 30, 2023): Infeasible does not mean impossible. What you propose is an large effort for a tiny benefit and simply working around avoidable brokenness. We will not be packaging binaries or creating a PPA. Please follow up with your distribution or switch to a better one like Fedora.
Author
Owner

@juliogonzalez commented on GitHub (Nov 30, 2023):

Sorry for posting on a closed issue :-)

Infeasible does not mean impossible. What you propose is an large effort for a tiny benefit and simply working around avoidable brokenness. We will not be packaging binaries or creating a PPA.

I 100% agree, as I know by experience how hard is to maintain such matrix for building and testing.

Building such stuff is work for the distribution maintainers.

For bugs that are fixed on this official repository, but not on distribution, bug reports must be created on the distribution. Then the maintainers can see if they can prepare backports or not, and of course they will be welcoming any help that can be provided.

Please follow up with your distribution or switch to a better one like Fedora.

To be fair, I'd not put the blame on the Ubuntu maintainers or would say Ubuntu is a bad distribution. It's just that the focus is different. In particular, Ubuntu 22.04 is a LTS release.

As the Fedora/EPEL maintainer, I have to admit I am bending a little bit the rules but pushing the latest version always.

Strictly speaking someone could ask me to stick to the first version that was shipped to a given Fedora version and start backporting patches (as it would be the case for Red Hat and clones such as Alma Linux or Rocky Linux). Unfortunately at that point I'd need to step down as maintainer, as I am afraid I am not a C developer and would likely have problems as soon as two patches from different s3fs-fuse versions start causing conflicts.

Also strictly speaking, for the latest and greatest I'd always recommend a rolling release distribution, or at the very least something with a more frequent release cadence, not LTS distributions.

In any case, for those that want to experiment, I just prepared builds for Debian 12, and Ubuntu >= 22.04 at https://build.opensuse.org/project/show/home:juliogonzalez:s3fs-fuse, using the Debian Unstable package.

Feel free to use the Ubuntu 22.04 repository, the instructions should be the same I'm pasting below, but replacing Debian_12 with Ubuntu_22.04.

Needless to say, there's no warranty or anything like that.

But if @gaul later agrees, we can see how to add this to the doc, as a 100% unofficial and unsupported way of installing the last s3fs-fuse on old Debian/Ubuntu/Raspbian. But even before that... I'd like more feedback fist, so not sure if we want to close https://github.com/s3fs-fuse/s3fs-fuse/issues/2360 and create a new issue asking people to try the packages for the different OS I am building for with the Open Build Service.

Sorry for not preparing a PPA, but it was quicker with this solution, and that way I can generate packages for Debian/Raspbian as well.

Instructions for Debian12

Tested in my personal desktop computer (they can be copied and pasted)

# Trusting the GPG key:
wget -qO- https://download.opensuse.org/repositories/home:/juliogonzalez:/s3fs-fuse/Debian_12/Release.key | sudo tee /etc/apt/trusted.gpg.d/juliogonzalez-s3fs-fuse.asc

# Adding the repository:
echo 'deb https://download.opensuse.org/repositories/home:/juliogonzalez:/s3fs-fuse/Debian_12/ ./' | sudo tee /etc/apt/sources.list.d/juliogonzalez-s3fs-fuse.list

# Force preference for s3fs from the new repository:
echo -e "Package: s3fs\nPin: release a=./\nPin-Priority: 900" | sudo tee /etc/apt/preferences.d/99juliogonzalez-s3fs-fuse

# Update metadata:
sudo apt-get update

# Install the package:
sudo apt-get install s3fs

And with this:

$ sudo apt-get install s3fs
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libcholmod4 libspdlog1.10 libvirt-l10n
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  s3fs
0 upgraded, 1 newly installed, 0 to remove and 21 not upgraded.
Need to get 0 B/272 kB of archives.
After this operation, 741 kB of additional disk space will be used.
Selecting previously unselected package s3fs.
(Reading database ... 284257 files and directories currently installed.)
Preparing to unpack .../archives/s3fs_1.93-1_amd64.deb ...
Unpacking s3fs (1.93-1) ...
Setting up s3fs (1.93-1) ...
Processing triggers for man-db (2.12.0-1) ...
$ s3fs --version
Amazon Simple Storage Service File System V1.93 (commit:unknown) with GnuTLS(gcrypt)
Copyright (C) 2010 Randy Rizun <rrizun@gmail.com>
License GPL2: GNU GPL version 2 <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

NOTE to myself: I should probably adjust the services the the maintainer at the .dsc file at OBS is adjusted, just to avoid having people sending reports to Mattia Rizzolo from Debian.

<!-- gh-comment-id:1832981862 --> @juliogonzalez commented on GitHub (Nov 30, 2023): Sorry for posting on a closed issue :-) > Infeasible does not mean impossible. What you propose is an large effort for a tiny benefit and simply working around avoidable brokenness. We will not be packaging binaries or creating a PPA. I 100% agree, as I know by experience how hard is to maintain such matrix for building and testing. Building such stuff is work for the distribution maintainers. For bugs that are fixed on this official repository, but not on distribution, bug reports must be created on the distribution. Then the maintainers can see if they can prepare backports or not, and of course they will be welcoming any help that can be provided. > Please follow up with your distribution or switch to a better one like Fedora. To be fair, I'd not put the blame on the Ubuntu maintainers or would say Ubuntu is a bad distribution. It's just that the focus is different. In particular, Ubuntu 22.04 is a LTS release. As the Fedora/EPEL maintainer, I have to admit I am bending a little bit the rules but pushing the latest version always. Strictly speaking someone could ask me to stick to the first version that was shipped to a given Fedora version and start backporting patches (as it would be the case for Red Hat and clones such as Alma Linux or Rocky Linux). Unfortunately at that point I'd need to step down as maintainer, as I am afraid I am not a C developer and would likely have problems as soon as two patches from different s3fs-fuse versions start causing conflicts. Also strictly speaking, for the latest and greatest I'd always recommend a rolling release distribution, or at the very least something with a more frequent release cadence, not LTS distributions. In any case, for those that want to experiment, I just prepared builds for Debian 12, and Ubuntu >= 22.04 at https://build.opensuse.org/project/show/home:juliogonzalez:s3fs-fuse, using the Debian Unstable package. Feel free to use the Ubuntu 22.04 repository, the instructions should be the same I'm pasting below, but replacing `Debian_12` with `Ubuntu_22.04`. Needless to say, there's no warranty or anything like that. But if @gaul later agrees, we can see how to add this to the doc, as a **100% unofficial and unsupported way of installing the last s3fs-fuse on old Debian/Ubuntu/Raspbian**. But even before that... I'd like more feedback fist, so not sure if we want to close https://github.com/s3fs-fuse/s3fs-fuse/issues/2360 and create a new issue asking people to try the packages for the different OS I am building for with the Open Build Service. Sorry for not preparing a PPA, but it was quicker with this solution, and that way I can generate packages for Debian/Raspbian as well. # Instructions for Debian12 Tested in my personal desktop computer (they can be copied and pasted) ``` # Trusting the GPG key: wget -qO- https://download.opensuse.org/repositories/home:/juliogonzalez:/s3fs-fuse/Debian_12/Release.key | sudo tee /etc/apt/trusted.gpg.d/juliogonzalez-s3fs-fuse.asc # Adding the repository: echo 'deb https://download.opensuse.org/repositories/home:/juliogonzalez:/s3fs-fuse/Debian_12/ ./' | sudo tee /etc/apt/sources.list.d/juliogonzalez-s3fs-fuse.list # Force preference for s3fs from the new repository: echo -e "Package: s3fs\nPin: release a=./\nPin-Priority: 900" | sudo tee /etc/apt/preferences.d/99juliogonzalez-s3fs-fuse # Update metadata: sudo apt-get update # Install the package: sudo apt-get install s3fs ``` And with this: ``` $ sudo apt-get install s3fs Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: libcholmod4 libspdlog1.10 libvirt-l10n Use 'sudo apt autoremove' to remove them. The following NEW packages will be installed: s3fs 0 upgraded, 1 newly installed, 0 to remove and 21 not upgraded. Need to get 0 B/272 kB of archives. After this operation, 741 kB of additional disk space will be used. Selecting previously unselected package s3fs. (Reading database ... 284257 files and directories currently installed.) Preparing to unpack .../archives/s3fs_1.93-1_amd64.deb ... Unpacking s3fs (1.93-1) ... Setting up s3fs (1.93-1) ... Processing triggers for man-db (2.12.0-1) ... ``` ``` $ s3fs --version Amazon Simple Storage Service File System V1.93 (commit:unknown) with GnuTLS(gcrypt) Copyright (C) 2010 Randy Rizun <rrizun@gmail.com> License GPL2: GNU GPL version 2 <https://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ``` **NOTE to myself:** I should probably adjust the services the the maintainer at the `.dsc` file at OBS is adjusted, just to avoid having people sending reports to Mattia Rizzolo from Debian.
Author
Owner

@gaul commented on GitHub (Dec 1, 2023):

Please follow up with your distribution or switch to a better one like Fedora.

To be fair, I'd not put the blame on the Ubuntu maintainers or would say Ubuntu is a bad distribution. It's just that the focus is different. In particular, Ubuntu 22.04 is a LTS release.

Backporting newer s3fs versions to older distributions is the packagers choice and I don't take issue with this. I do take issue that Ubuntu doesn't upgrade to the latest version in their current releases and I have to manually remind them to do so which takes an unpredictable amount of time. For example Ubuntu 23.10 still has s3fs 1.90: https://packages.ubuntu.com/search?keywords=s3fs. I am happy that all the distributions are using vanilla packages without patches since Frankenstein binaries would be difficult for us to support.

Ubuntu has a backporting process that I recommended in https://github.com/s3fs-fuse/s3fs-fuse/issues/2360#issuecomment-1793974323. The correct solution is to work with the distribution and not ask the upstream project to duplicate parallel infrastructure. Packaging is a hard task without all of the infrastructure that distributions have.

<!-- gh-comment-id:1835702080 --> @gaul commented on GitHub (Dec 1, 2023): > > Please follow up with your distribution or switch to a better one like Fedora. > > To be fair, I'd not put the blame on the Ubuntu maintainers or would say Ubuntu is a bad distribution. It's just that the focus is different. In particular, Ubuntu 22.04 is a LTS release. Backporting newer s3fs versions to older distributions is the packagers choice and I don't take issue with this. I do take issue that Ubuntu doesn't upgrade to the latest version in their _current_ releases and I have to manually remind them to do so which takes an unpredictable amount of time. For example Ubuntu 23.10 still has s3fs 1.90: https://packages.ubuntu.com/search?keywords=s3fs. I am happy that all the distributions are using vanilla packages without patches since Frankenstein binaries would be difficult for us to support. Ubuntu _has_ a [backporting process](https://help.ubuntu.com/community/UbuntuBackports) that I recommended in https://github.com/s3fs-fuse/s3fs-fuse/issues/2360#issuecomment-1793974323. The correct solution is to work with the distribution and not ask the upstream project to duplicate parallel infrastructure. Packaging is a hard task without all of the infrastructure that distributions have.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/s3fs-fuse#1169
No description provided.