[Bug 2069305] Re: scp fails to copy files from sysfs

Mitchell Dzurick 2069305 at bugs.launchpad.net
Sat Jun 15 00:30:27 UTC 2024


Thank you for taking the time to make this bug Alfonso!

I can reproduce this in a noble-vm very easily.

$ lxc launch ubuntu:noble n-vm --vm
$ lxc shell n-vm
# rm /etc/ssh/sshd_config.d/60-cloudimg-settings.conf
# sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
# echo "root:pass" | chpasswd
# systemctl restart ssh
# scp root at localhost:/sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c .

However it's not just every file in /sys/, there are some files you can
still scp. For example:

# scp root at localhost:/sys/firmware/efi/runtime .

You can also cp the efi variable file and then scp it fine.
# cp /sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c ./
# scp root at localhost:/root/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c ./

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to openssh in Ubuntu.
https://bugs.launchpad.net/bugs/2069305

Title:
  scp fails to copy files from sysfs

Status in openssh package in Ubuntu:
  New

Bug description:
  When I try to copy some files from sysfs directly using scp it fails.
  This can be reproduced locally with:

  ubuntu at ubuntu:~$ scp ubuntu at localhost:/sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c .
  ubuntu at localhost's password: 
  BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c                                                                  0%    0     0.0KB/s   --:-- ETA
  scp: read remote "/sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c" : Failure

  The file is readable:

  ubuntu at ubuntu:~$ od -b /sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c
  0000000 007 000 000 000 002 000 003 000 000 000 004 000
  0000014

  And I see this in the journal:

  Jun 13 13:30:49 ubuntu sftp-server[5115]: error: process_read: seek
  "/sys/firmware/efi/efivars/BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c":
  Illegal seek

  This was working fine in 22.04. Interestingly, using a scp 22.04
  client with a 24.04 kernel works fine.

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




More information about the foundations-bugs mailing list