Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running new lxc containers does not automatically set env or mounts #1552

Open
iapaddler opened this issue Jun 23, 2023 · 1 comment
Open
Labels
bug Something isn't working libscope

Comments

@iapaddler
Copy link
Contributor

$ /bin/linux/aarch64/scope run -- lxc ls
ERROR: ld.so: object 'libscope.so' from /etc/ld.so.preload cannot be preloaded (failed to map segment from shared object): ignored.
(same result with LD_PRELOAD or ld.so.preload)

$ LD_DEBUG=libs lxc ls
results in numerous symbol errors. a few examples:
calling init: /lib/libscope.so

 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: SSL_read (fatal)
 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: SSL_write (fatal)
 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: SSL_get_fd (fatal)

 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: PR_SetError (fatal)

 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: uv__read (fatal)

 20015:	/lib/libscope.so: error: symbol lookup error: undefined symbol: uv_fileno (fatal)

other libs exhibit symbol errors, such as librt. however, are not preloaded.

@iapaddler iapaddler added bug Something isn't working libscope labels Jun 23, 2023
@iapaddler iapaddler mentioned this issue Jun 23, 2023
16 tasks
@iapaddler iapaddler changed the title Running lxc results in missing symbols in libscope Running new lxc containers does not automatically set env or mounts Jun 26, 2023
@iapaddler
Copy link
Contributor Author

Poking around a bit with this. There are 2 independent issues:

  1. The lxc exec is a script which execs /snap/bin/lxc and that is a soft link; /snap/bin/lxc -> lxd.lxc,
    that, in turn, is a link; /snap/bin/lxd.lxc -> /usr/bin/snap.
    It is the start of lxd.lxc that causes the ld.so issue with loading libscope
  2. An lxc container is started using lxd and not containerd. Therefore, runc is not exec'd. Therefore, we don't attempt to update config.json for the new container.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working libscope
Projects
None yet
Development

No branches or pull requests

1 participant