Need the path for logs files for a container.

SpiceGuy

New Member
Sep 1, 2025
12
1
3
NJ, USA
I'm trying to update a container on my PVE 9.2.10 and it seems that the update goes perfectly when I run "update" from the container's console. No error are seen in the console. When I try to access the container from my browser it won't open. I get "Site can't be reached." and that the IP address "Refused to connect." The previous version of the container worked fine. I want to go to the Github page for the container but they require the installation log files for the container. When updating the container in "Verbose" mose log files are automatically created. I can see them at the container's console using /tmp but I want to use Bitvise SSH Client to download them to my laptop. The problem is that when I SSH in I cannot find where they are. I've been looking online but I cannot find any information on what path I need to use to get to a container's /tmp directory. Reading through the PVE documentation at the Proxmox File System Layout was not helpful. Can someone give me the "generalized" path when I SSH in?
Many Thanks!!
 
Welcome to the forum, SpiceGuy,

I think the part that's causing you some confusion here is that an LXC container has its own filesystem namespace. So /tmp inside the container is not the same /tmp you see when you SSH into the Proxmox host. There isn't really a useful "generalized path" on the PVE host that you should rely on, because where the container's root filesystem lives depends on the storage backend (LVM-thin, ZFS, directory storage, etc.). The easiest way is probably to let pct deal with that for you.

Assuming for example the container is CT 105 and the log is /tmp/install.log, open a shell to the hypervisor or ssh into it, then run: pct pull 105 /tmp/install.log /root/install.log

That copies the file from the container into /root/install.log on the PVE host. You can then grab it with Bitvise/SFTP from the host as you normally would.

You can also check what's actually in the container's /tmp from the host with:pct exec 105 -- ls -lah /tmp

If you really need to browse the container filesystem from the PVE host, pct mount 105 can mount it and tell you the resulting path, but for simply retrieving a couple of log files I'd use pct pull rather than digging around in the container's backing storage. Also, just as a side note, if Bitvise is actually SSHing directly into the container rather than the PVE host, then /tmp really should just be /tmp. If the files aren't there in that case, double-check that you're connecting to the same container and that the updater hasn't removed its temporary files since it ran. On your next post, please try to provide more context and please consider researching the forums and reading the PVE Administration guide.

Thanks,


Tmanok
 
  • Like
Reactions: news and UdoB
Hi Tmanok,

Thank you for your reply. I decided to create a new directory in my PVE host for any file transfers I do now or in the future. I put the directory at:
var/pete101

I then modified your pct pull command and ran it in the node's shell. I get the following results when I run it:

root@pcnpve1:~# pct pull 101 /temp/create-lxc-2340bf10.log /root/var/pete101/create-lxc-2340bf10.log
failed to create file: /root/var/pete101/create-lxc-2340bf10.log: No such file or directory

I tried it with and without the leading "/" before "root" and with and without using "root" in the path but I get the same result every time. Any thoughts? Do I run this command from bitvise SSH instead?

Thanks!
 
Last edited:
Share the ls output. What kind of software creates the log and how is it installed? The app might run in a docker container for all we know.
 
The software is a LXC call MyIP and according to their Proxmox VE Helper-Scripts page to get a detailed log after installation you need to run the install in Verbose Mode.

This is how they put it.
Required for debugging any script issue. A verbose log is mandatory.

This is the ls output from the container's tmp file after installation:

root@myip:~# ls /tmp
create-lxc-2340bf10.log systemd-private-179647c29f8146d6880b5829d7cfd75c-systemd-logind.service-j7N7RI create-lxc-449dbcbc.log
tools-gh-rel-jlJFdG
 
Personally I'd set up a SSH server inside but something like this should do to transfer it to the node side
Bash:
pct pull 101 "/tmp/create-lxc-2340bf10.log" "$(pwd)/create-lxc-2340bf10.log"
pct pull 101 "/tmp/create-lxc-449dbcbc.log" "$(pwd)/create-lxc-449dbcbc.log"
Or more fancy
Bash:
for log in create-lxc-2340bf10.log create-lxc-449dbcbc.log; do
  pct pull 101 "/tmp/$log" "$(pwd)/$log"
done
Alternatively just use less /tmp/*.log inside the CT and look at it directly in the CLI.
 
Last edited:
OK, so where, as you have it above, do these files get written exactly? I'm guessing pwd is my root password. Yes?

Would this be correct if I wanted to write to the var/pete101 directory?
pct pull 101 /tmp/create-lxc-2340bf10.log $(pwd)/var/pete101/create-lxc-2340bf10.log
 
$(pwd) resolves to the current directory/path you're in. pwd tells you where that is.
I felt like that is the easiest way to give you something that definitely works. No need to make this complicated by involving weird paths.
 
Last edited:
  • Like
Reactions: Tmanok
OK, $(pwd) means current directory and not password. And all the quotes? Are they part of the command too? Never saw that before (for a beginner).

Bash:
pct pull 101 "/tmp/create-lxc-2340bf10.log" "$(pwd)/create-lxc-2340bf10.log"
pct pull 101 "/tmp/create-lxc-449dbcbc.log" "$(pwd)/create-lxc-449dbcbc.log"
 
The command(s) I gave you above should work exactly like that. Whether the quotes are necessary depends on which path you're in.
Spaces can sometimes break arguments without them. They don't hurt so why not. I like to share commands which have a good chance to work well.
 
Last edited:
It worked,

Bash:
root@pcnpve1:~# ls
create-lxc-2340bf10.log  create-lxc-449dbcbc.log

and I was able to transfer them to my laptop with Bitvise SSH Client. I just hope the people managing MyIP will be able to help.

Thanks very much.
 
  • Like
Reactions: Impact