Public bug reported:

I'm running rsync version 3.2.7-1ubuntu1.2 on an up-to-date installation
of Ubuntu Server 24.04.2.

I use rsync to copy files to a removable disk for backup purposes.  As
far as rsync is concerned, the copy is from one local path to another.
I use --remote-option=--fake-super to encode the file metadata in the
destination copy.  I'm seeing a problem where the destination data is
put in the wrong place.

The simple steps I found to reproduce this in just one directory of an
ext4 file system are below.  Notice a copy of source_dir wasn't put into
dest_dir.  It was put in a directory named ''$'\001' to ls and '?' to
find.  The directory name is random binary garbage.

<root@noble>ls -la
total 8
drwxr-xr-x  2 root root 4096 Mar 16 21:19 .
drwx------ 13 root root 4096 Mar 16 21:16 ..
<root@noble>mkdir source_dir
<root@noble>echo data > source_dir/testfile
<root@noble>mkdir dest_dir
<root@noble>rsync -a --remote-option=--fake-super source_dir dest_dir/
<root@noble>ls -la
total 20
drwxr-xr-x  3 root root 4096 Mar 16 21:20 ''$'\001'
drwxr-xr-x  5 root root 4096 Mar 16 21:20  .
drwx------ 13 root root 4096 Mar 16 21:16  ..
drwxr-xr-x  2 root root 4096 Mar 16 21:20  dest_dir
drwxr-xr-x  2 root root 4096 Mar 16 21:20  source_dir
<root@noble>find .
.
./dest_dir
./source_dir
./source_dir/testfile
./?
./?/source_dir
./?/source_dir/testfile

If I check our the rsync git repository and compile a upstream version
of rsync 3.2.7 or 3.4.1 (the latest), I don't see this issue.  The copy
of source_dir was put into dest_dir as expected.

<root@noble>ls -la
total 8
drwxr-xr-x  2 root root 4096 Mar 16 21:41 .
drwx------ 13 root root 4096 Mar 16 21:41 ..
<root@noble>mkdir source_dir
<root@noble>echo data > source_dir/testfile
<root@noble>mkdir dest_dir
<root@noble>rsync-3.2.7 -a --remote-option=--fake-super source_dir dest_dir/
<root@noble>ls -la
total 16
drwxr-xr-x  4 root root 4096 Mar 16 21:42 .
drwx------ 13 root root 4096 Mar 16 21:41 ..
drwxr-xr-x  3 root root 4096 Mar 16 21:42 dest_dir
drwxr-xr-x  2 root root 4096 Mar 16 21:42 source_dir
<root@noble>find .
.
./dest_dir
./dest_dir/source_dir
./dest_dir/source_dir/testfile
./source_dir
./source_dir/testfile


Other background:

<root@noble>lsb_release -rd
No LSB modules are available.
Description:    Ubuntu 24.04.2 LTS
Release:        24.04

<root@noble>apt-cache policy rsync
rsync:
  Installed: 3.2.7-1ubuntu1.2
  Candidate: 3.2.7-1ubuntu1.2
  Version table:
 *** 3.2.7-1ubuntu1.2 500
        500 http://us.archive.ubuntu.com/ubuntu noble-updates/main amd64 
Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
        100 /var/lib/dpkg/status
     3.2.7-1ubuntu1 500
        500 http://us.archive.ubuntu.com/ubuntu noble/main amd64 Packages

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: rsync 3.2.7-1ubuntu1.2
ProcVersionSignature: Ubuntu 6.8.0-55.57-generic 6.8.12
Uname: Linux 6.8.0-55-generic x86_64
ApportVersion: 2.28.1-0ubuntu3.5
Architecture: amd64
CasperMD5CheckResult: pass
Date: Sun Mar 16 21:28:26 2025
InstallationDate: Installed on 2025-03-07 (10 days ago)
InstallationMedia: Ubuntu-Server 24.04.1 LTS "Noble Numbat" - Release amd64 
(20240827)
ProcEnviron:
 LANG=en_US.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=screen
 XDG_RUNTIME_DIR=<set>
SourcePackage: rsync
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: rsync (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug noble

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to rsync in Ubuntu.
https://bugs.launchpad.net/bugs/2103377

Title:
  rsync problem with local copying and --fake-super

Status in rsync package in Ubuntu:
  New

Bug description:
  I'm running rsync version 3.2.7-1ubuntu1.2 on an up-to-date
  installation of Ubuntu Server 24.04.2.

  I use rsync to copy files to a removable disk for backup purposes.  As
  far as rsync is concerned, the copy is from one local path to another.
  I use --remote-option=--fake-super to encode the file metadata in the
  destination copy.  I'm seeing a problem where the destination data is
  put in the wrong place.

  The simple steps I found to reproduce this in just one directory of an
  ext4 file system are below.  Notice a copy of source_dir wasn't put
  into dest_dir.  It was put in a directory named ''$'\001' to ls and
  '?' to find.  The directory name is random binary garbage.

  <root@noble>ls -la
  total 8
  drwxr-xr-x  2 root root 4096 Mar 16 21:19 .
  drwx------ 13 root root 4096 Mar 16 21:16 ..
  <root@noble>mkdir source_dir
  <root@noble>echo data > source_dir/testfile
  <root@noble>mkdir dest_dir
  <root@noble>rsync -a --remote-option=--fake-super source_dir dest_dir/
  <root@noble>ls -la
  total 20
  drwxr-xr-x  3 root root 4096 Mar 16 21:20 ''$'\001'
  drwxr-xr-x  5 root root 4096 Mar 16 21:20  .
  drwx------ 13 root root 4096 Mar 16 21:16  ..
  drwxr-xr-x  2 root root 4096 Mar 16 21:20  dest_dir
  drwxr-xr-x  2 root root 4096 Mar 16 21:20  source_dir
  <root@noble>find .
  .
  ./dest_dir
  ./source_dir
  ./source_dir/testfile
  ./?
  ./?/source_dir
  ./?/source_dir/testfile

  If I check our the rsync git repository and compile a upstream version
  of rsync 3.2.7 or 3.4.1 (the latest), I don't see this issue.  The
  copy of source_dir was put into dest_dir as expected.

  <root@noble>ls -la
  total 8
  drwxr-xr-x  2 root root 4096 Mar 16 21:41 .
  drwx------ 13 root root 4096 Mar 16 21:41 ..
  <root@noble>mkdir source_dir
  <root@noble>echo data > source_dir/testfile
  <root@noble>mkdir dest_dir
  <root@noble>rsync-3.2.7 -a --remote-option=--fake-super source_dir dest_dir/
  <root@noble>ls -la
  total 16
  drwxr-xr-x  4 root root 4096 Mar 16 21:42 .
  drwx------ 13 root root 4096 Mar 16 21:41 ..
  drwxr-xr-x  3 root root 4096 Mar 16 21:42 dest_dir
  drwxr-xr-x  2 root root 4096 Mar 16 21:42 source_dir
  <root@noble>find .
  .
  ./dest_dir
  ./dest_dir/source_dir
  ./dest_dir/source_dir/testfile
  ./source_dir
  ./source_dir/testfile

  
  Other background:

  <root@noble>lsb_release -rd
  No LSB modules are available.
  Description:    Ubuntu 24.04.2 LTS
  Release:        24.04

  <root@noble>apt-cache policy rsync
  rsync:
    Installed: 3.2.7-1ubuntu1.2
    Candidate: 3.2.7-1ubuntu1.2
    Version table:
   *** 3.2.7-1ubuntu1.2 500
          500 http://us.archive.ubuntu.com/ubuntu noble-updates/main amd64 
Packages
          500 http://security.ubuntu.com/ubuntu noble-security/main amd64 
Packages
          100 /var/lib/dpkg/status
       3.2.7-1ubuntu1 500
          500 http://us.archive.ubuntu.com/ubuntu noble/main amd64 Packages

  ProblemType: Bug
  DistroRelease: Ubuntu 24.04
  Package: rsync 3.2.7-1ubuntu1.2
  ProcVersionSignature: Ubuntu 6.8.0-55.57-generic 6.8.12
  Uname: Linux 6.8.0-55-generic x86_64
  ApportVersion: 2.28.1-0ubuntu3.5
  Architecture: amd64
  CasperMD5CheckResult: pass
  Date: Sun Mar 16 21:28:26 2025
  InstallationDate: Installed on 2025-03-07 (10 days ago)
  InstallationMedia: Ubuntu-Server 24.04.1 LTS "Noble Numbat" - Release amd64 
(20240827)
  ProcEnviron:
   LANG=en_US.UTF-8
   PATH=(custom, no user)
   SHELL=/bin/bash
   TERM=screen
   XDG_RUNTIME_DIR=<set>
  SourcePackage: rsync
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rsync/+bug/2103377/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to