[lxc-devel] PATCH: lxc-ps works with systemd
Joerg Gollnick
code4lxc+list at wurzelbenutzer.de
Fri Jul 15 13:18:08 UTC 2011
Dear all,
while working with systemd I found that lxc-ps -efa does not recognize the
container name.
Best regards Joerg
diff --git a/src/lxc/lxc-ps.in b/src/lxc/lxc-ps.in
index 249b104..4ef2296 100755
--- a/src/lxc/lxc-ps.in
+++ b/src/lxc/lxc-ps.in
@@ -37,7 +37,7 @@ our %LXC_NAMES; # Specified container names (if any)
sub get_container_names {
my $ref_names = shift;
- my $lxcpath='@LXCPATH@';
+ my $lxcpath = '@LXCPATH@';
open(active, "netstat -xa | grep $lxcpath |") or return;
while(<active>) {
@@ -112,13 +112,18 @@ sub get_container {
my $pid = shift;
my $filename = "/proc/$pid/cgroup";
open(LXC, "$filename");
- my $container = <LXC>;
+ # read all lines at once
+ my @cgroup = <LXC>;
close LXC;
- chomp($container);
- if ($container =~ m/[:,]ns[:,]/o) {
- $container =~ s/.*:\///o;
- } else {
- $container ='';
+ my $container = '';
+ foreach ( @cgroup ) {
+ chomp;
+ # find the container name
+ if (m/[:,]ns[:,]/o) {
+ # container name after :/
+ s/.*:\///o;
+ $container = $_;
+ }
}
return $container;
}
More information about the lxc-devel
mailing list