Commit Graph

1197 Commits

Author SHA1 Message Date
Daniel Lezcano
3a3ba44ac3 Fix ubuntu template
- Fixed rootfs path.
 - Removed network section, it should to be passed to the lxc-create
configuration option in order to concatenate the configuration files
 - Generate en_US local instead of de_DE

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-06-01 18:56:54 +02:00
Willem Meier
3f033aa847 ubunutu template
Ubuntu [lucid] template script.
Allows to create an ubuntu container with the template options.

Signed-off-by: Willem Meier <wilhelm.meier@fh-kl.de>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-06-01 18:56:54 +02:00
Daniel Lezcano
5fad0874c3 fix compilation warning
Fix compilation warning:

lxc_console.c: In function ‘master_handler’:
lxc_console.c:175: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-06-01 12:24:17 +02:00
Daniel Lezcano
0e391e57b0 fix compilation warnings
Fix the following warnings:

console.c: In function ‘console_handler’:
console.c:252: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result
console.c:254: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result
conf.c: In function ‘instanciate_veth’:
conf.c:1130: warning: ignoring return value of ‘mktemp’, declared with attribute warn_unused_result
conf.c:1135: warning: ignoring return value of ‘mktemp’, declared with attribute warn_unused_result
conf.c: In function ‘instanciate_macvlan’:
conf.c:1206: warning: ignoring return value of ‘mktemp’, declared with attribute warn_unused_result
af_unix.c: In function ‘lxc_af_unix_send_fd’:
af_unix.c:124: warning: dereferencing type-punned pointer will break strict-aliasing rules
af_unix.c: In function ‘lxc_af_unix_recv_fd’:
af_unix.c:169: warning: dereferencing type-punned pointer will break strict-aliasing rules
af_unix.c: In function ‘lxc_af_unix_send_credential’:
af_unix.c:195: warning: dereferencing type-punned pointer will break strict-aliasing rules
af_unix.c: In function ‘lxc_af_unix_rcv_credential’:
af_unix.c:237: warning: dereferencing type-punned pointer will break strict-aliasing rules

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-06-01 12:13:32 +02:00
Cedric Le Goater
196f1d54ce add restart framework
Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-06-01 11:44:44 +02:00
Michel Normand
fac80c8f42 lxc-unshare asprintf error checking
same correction in lxc_unshare.c as already done
in lxc_start.c and lxc_restart.c by Nathan in
commit fa9ab20562

Signed-off-by: Michel Normand <michel.mno@free.fr>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-31 11:56:47 +02:00
Michel Normand
7115cb787d update man pages about logpriority
Signed-off-by: Michel Normand <michel.mno@free.fr>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-31 11:56:47 +02:00
Michel Normand
12d75a6147 update .gitignore w/ autogen.sh created files
remove trailing / for .pc and patches
that may be symbolic links.

and remove all test/* files that do not exist anymore since
commit 92d385229b

Signed-off-by: Michel Normand <michel.mno@free.fr>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-31 11:56:47 +02:00
Michel Normand
a040ec723e remove remaining .cvsignore files
Signed-off-by: Michel Normand <michel.mno@free.fr>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-31 11:56:47 +02:00
Daniel Lezcano
5045eedff0 disable rootfs automatic detection
Avoid a warning at compile time by disabling temporary the code.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:39:11 +02:00
Daniel Lezcano
cc6f6dd7d8 fix pivot umount algorithm
Make a function and fix bad parameter to umount.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:39:11 +02:00
Daniel Lezcano
2b8b82807a change repository url in MAINTAINERS
Changed cvs to git url.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:39:11 +02:00
Daniel Lezcano
11eaec4c33 fix lxc-execute man page
On buggy docbook-utils, old syntax leads to a bad formatting.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:39:11 +02:00
Daniel Lezcano
9887d6c6c2 update checkpoint / restart man page
Notify the checkpoint / restart commands do nothing for the moment.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:01:45 +02:00
Daniel Lezcano
396639d424 update lxc-checkpoint / lxc-restart man
Add documentation for checkpoint / restart CLI.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 17:01:45 +02:00
Greg Kurz
8c94bc8551 assertion on lxc_checkpoint() return value
Buggy behaviour always deserves an assertion.

Signed-off-by: Greg Kurz <gkurz@fr.ibm.com>
Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 14:29:05 +02:00
Daniel Lezcano
b3df193c50 fix whitespace
Fix whitespace.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-28 11:49:25 +02:00
Daniel Lezcano
0cd0cf5c15 remove unused field
These fields were moved to another structure but not removed from
there.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 16:27:15 +02:00
Cedric Le Goater
2ac29abe45 use ptmxmode mount option
Save one call by using the ptmxmode mount option.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 16:16:30 +02:00
Daniel Lezcano
d674be08d4 move lxc-init to $libdir/lxc
As specified by FHS:

   /usr/lib includes object files, libraries, and internal binaries that
   are not intended to be executed directly by users or shell scripts.

   Applications may use a single subdirectory under /usr/lib. If an
   application uses a subdirectory, all architecture-dependent data
   exclusively used by the application must be placed within that
   subdirectory.


Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 14:27:13 +02:00
Daniel Lezcano
baf6671fd3 change the rootfs mount location and add the README
Previous path was $libdir/lxc, changed to $libdir/lxc/rootfs.
Added a README file to be placed in this directory, describing
the purpose of this empty directory. Having a file to be installed
in this directory makes the Makefile to automatically create the
directory at install time.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 14:27:13 +02:00
Michel Normand
b8da590f0e lxc-kill man update about SIGSTOP and SIGKILL
Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 14:26:09 +02:00
Michel Normand
d0817ec91a remove obsolete lxc_utils.h
This file is a duplicate of utils.h

Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 12:17:40 +02:00
clg@linux.vnet.ibm.com
0af683cf29 drop capabilities in lxc-init (V2)
capabilities are reseted just after the filesystem is mounted.
lxc_setup_fs() is moved up, before the process is forked.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-27 12:17:40 +02:00
Cedric Le Goater
3c22086fe2 introduce a sync API
The following patch wrap the calls on the synchronisation
socketpair in a lxc_sync_ API. It hopefully clarifies what
is done in the start sequence to the expense of more lines
of code ...

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 21:43:53 +02:00
Cedric Le Goater
ee70bf78e3 merge lxc_restart() and lxc_start()
now that we have specific operations and specific arguments for each
sequence, lxc_restart() and lxc_start() can easily be merged under
a common subroutine.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Cedric Le Goater
23c53af96d replace common start_arg by private start_arg
the following patch moves the start argument in private
structs which are opaque to lxc_spawn(). To achieve this goal,
we need to move the sv[2] socketpair and lxc_handler

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Cedric Le Goater
ffe1e01a50 start sequence cleanups
These are trivial changes:
	start_arg->name is redundant with lxc_handler->name
	sv[2] can be stored directly under start_arg

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Cedric Le Goater
32e1c76058 simplify lxc_spawn() gotos
label 'out_close' is used only once.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Cedric Le Goater
79fd982e91 introduce struct lxc_operations
struct lxc_operations offers 2 operations : start and post_start
which are used by the lxc-start and lxc-restart sequences to
define specific actions.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Michel Normand
e6126dbe9f Add ops for start
In order to define a specific function for restart, let's create
an ops where we will be able to specify a function for restart too.

Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Michel Normand
fc25b815fd prepare do_start for restart code
In order to be able to use a single 'start' function for start
and restart, let's prepare do_start to get an extra statefile parameter.

Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Michel Normand
69ffa31110 move LXC_TTY_HANDLER_ADD/DEL out of init/fini in start.c
Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Michel Normand
8f64a3f64f sigprocmask moved in fini of start.c
Signed-off-by: Michel Normand <normand@fr.ibm.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-26 16:54:48 +02:00
Denis Rizaev
8ff3518040 fix initial run level
I did a little investigation about runlevels and i think we can assume
runlevels 2-5 as normal. So, we can check if system was in runlevel 2-5
and proc count is 1 and now we are in 0/6.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
Signed-off-by: Denis Rizaev <Denis.Rizaev@trueoffice.ru>
2010-05-24 15:06:36 +02:00
Nathan Lynch
fa9ab20562 correct asprintf error checking
asprintf(3) returns -1 (not 0) on error.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-19 22:15:28 +02:00
Daniel Lezcano
5332bb844a Don't close fd 0, fd 1
That breaks the reboot because when we reexec, fd 0 and fd 1 will be
closed and these one are created by lxc, not inherited. 

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-19 22:15:28 +02:00
Daniel Lezcano
1362f2eba1 close socket command
We don't close the command socket after the transaction, that leads
to a fd leak.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-19 22:15:28 +02:00
Daniel Lezcano
da2aef7f9a fix indentation
Indent the signalfd structure definition correctly.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-19 22:15:28 +02:00
Daniel Lezcano
0093bb8ced added locally modified files for broadcast support
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-18 19:13:26 +02:00
Daniel Lezcano
1f1b18e754 support ipv4 broadcast specification
Add the broadcast specification, if none is specified, it is automatically
computed from the addr & mask.

syntax:
	lxc.network.ipv4 = 172.20.0.2/24 172.20.255.255

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-18 17:40:04 +02:00
Ferenc Wagner
9232212afd fix typos in error messages
Signed-off-by: Ferenc Wagner <wferi@niif.hu>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:47:55 +02:00
Ferenc Wagner
a91d897a7b remove pivotdir only if it was created by us
The removal does not account for possible leading path components that
were also created during creation of pivotdir.

Signed-off-by: Ferenc Wagner <wferi@niif.hu>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:47:55 +02:00
Daniel Lezcano
b1789442d6 use defined rootfs mount point
As we defined a path where to mount the rootfs, we can use without
ambiguity because it is defined by default at compile time or by the
configuration.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:44:28 +02:00
Daniel Lezcano
23b7ea696b add lxc.rootfs.mount config option
Define lxc.rootfs.mount option in order to override the default
mount point for rootfs.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:44:28 +02:00
Daniel Lezcano
33fcb7a047 encapsulate rootfs data in a structure
We have pivot_dir and rootfs defined in lxc_conf structure.
Let's encapsulate them in a rootfs structure.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:44:28 +02:00
Daniel Lezcano
196db713a9 add a configure option to set a rootfs mount point
Add a configure option to set a mount point path when using a rootfs,
that will replace the actual behavior which creates uneeded /tmp/lxc**
directories.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:44:28 +02:00
Daniel Lezcano
288063bd07 whitespace cleanup in configure.ac
Mindless changes by removing whitespace.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-12 23:44:28 +02:00
Ferenc Wagner
25368b5249 no need to use a temporary directory for pivoting
Ferenc Wagner <wferi@niif.hu> writes:

> Daniel Lezcano <dlezcano@fr.ibm.com> writes:
>
>> Ferenc Wagner wrote:
>>
>>> Daniel Lezcano <daniel.lezcano@free.fr> writes:
>>>
>>>> Ferenc Wagner wrote:
>>>>
>>>>> While playing with lxc-start, I noticed that /tmp is infested by
>>>>> empty lxc-r* directories: [...] Ok, this name comes from lxc-rootfs
>>>>> in conf.c:setup_rootfs.  After setup_rootfs_pivot_root returns, the
>>>>> original /tmp is not available anymore, so rmdir(tmpname) at the
>>>>> bottom of setup_rootfs can't achieve much.  Why is this temporary
>>>>> name needed anyway?  Is pivoting impossible without it?
>>>>
>>>> That was put in place with chroot, before pivot_root, so the distro's
>>>> scripts can remount their '/' without failing.
>>>>
>>>> Now we have pivot_root, I suppose we can change that to something cleaner...
>>>
>>> Like simply nuking it?  Shall I send a patch?
>>
>> Sure, if we can kill it, I will be glad to take your patch :)
>
> I can't see any reason why lxc-start couldn't do without that temporary
> recursive bind mount of the original root.  If neither do you, I'll
> patch it out and see if it still flies.

For my purposes the patch below works fine.  I only run applications,
though, not full systems, so wider testing is definitely needed.

Thanks,
Feri.

>From 98b24c13f809f18ab8969fb4d84defe6f812b25c Mon Sep 17 00:00:00 2001
Date: Thu, 6 May 2010 14:47:39 +0200

That was put in place before lxc-start started using pivot_root, so
the distro scripts can remount / without problems.

Signed-off-by: Ferenc Wagner <wferi@niif.hu>
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-10 11:50:10 +02:00
Daniel Lezcano
bf6cc73696 Make dynamic busybox supported
Bind mount host library path.
Weird but some distro provide busybox as a dynamically linked binary.

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
2010-05-10 11:50:10 +02:00