-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathlxc
128 lines (103 loc) · 3.26 KB
/
lxc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
sudo aptitude install lxc bridge-utils debootstrap
sudo mkdir /cgroup
sudo vi /etc/fstab
>> cgroup /cgroup cgroup defaults 0 0
#sudo mount -t cgroup cgroup /cgroup
sudo mount cgroup
sudo vi /etc/network/interfaces
>> #allow-hotplug eth0
>> #iface eth0 inet dhcp
>>
>> auto br0
>> iface br0 inet dhcp
>> bridge_ports eth0
>> bridge_fd 0
>> bridge_maxwait 0
sudo /etc/init.d/networking start
sudo mkdir -p /var/lib/lxc/vm0
sudo /usr/lib/lxc/templates/lxc-debian -p /var/lib/lxc/vm0
sudo vi /var/lib/lxc/vm0/config
# <<<< ADD THOSE LINES
lxc.utsname = vm0
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.hwaddr = 00:FF:12:34:56:78
#lxc.network.ipv4 = 10.0.0.110/24
# start
sudo lxc-start -n vm0
DEBIAN_VERSION=squeeze lxc-debian -p /var/lib/lxc/vm0
sudo invoke-rc.d
# for lenny
http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg00346.html
directories:
* /var/lib/lxc
* /usr/share/doc/lxc/examples
* /usr/lib*/lxc/templates
my directories:
* /lxc
* /cgroup
# from:
http://blog.bodhizazen.net/linux/lxc-linux-containers/
http://blog.bodhizazen.net/linux/lxc-configure-debian-lenny-containers/
mkdir /lxc /cgroup
sudo mount -t cgroup cgroup /cgroup
sudo brctl addbr br0
sudo ifconfig br0 up
sudo brctl setfd br0 0
sudo brctl addif br0 eth0
debootstrap --variant=minbase --arch i386 lenny /lxc/rootfs.lenny
chroot /lxc/rootfs.lenny
apt-get update
# set locales
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen
apt-get -y --force-yes install locales
apt-get install aptitude
aptitude install sudo ssh iputils-ping vim adduser apt-utils
echo "host_name" > /etc/hostname
echo "127.0.0.1 localhost host_name" > /etc/hosts
rm /etc/mtab
ln -s /proc/mounts /etc/mtab
passwd
/usr/bin/vim.basic /etc/rc.local # route add default gw 192.168.172.1
# sed -i 's!si::sysinit:/etc/init.d/rcS!si::sysinit:/etc/init.d/rcS.lenny!' /etc/inittab # dont neet this, i'm using init scripts
sed -i 's/^\([56]:23:respawn\)/#\1/' /etc/inittab # avoid 'INIT: Id "5" respawning too fast: disabled for 5 minutes' messages
# http://lxc.teegra.net/#_other_rc_d_runlevel_cleanup
exit
bekir@lxc:/lxc$ cat config.lenny
lxc.utsname = test1
lxc.tty = 4
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.mtu = 1500
lxc.network.ipv4 = 192.168.172.101/24
lxc.rootfs = /lxc/rootfs.lenny
lxc.mount.entry = none /lxc/rootfs.lenny/dev/pts devpts defaults 0 0
lxc.mount.entry = none /lxc/rootfs.lenny/proc proc defaults 0 0
lxc.mount.entry = none /lxc/rootfs.lenny/sys sysfs defaults 0 0
lxc.cgroup.devices.deny = a
# /dev/null and zero
lxc.cgroup.devices.allow = c 1:3 rwm
lxc.cgroup.devices.allow = c 1:5 rwm
# consoles
lxc.cgroup.devices.allow = c 5:1 rwm
lxc.cgroup.devices.allow = c 5:0 rwm
lxc.cgroup.devices.allow = c 4:0 rwm
lxc.cgroup.devices.allow = c 4:1 rwm
# /dev/{,u}random
lxc.cgroup.devices.allow = c 1:9 rwm
lxc.cgroup.devices.allow = c 1:8 rwm
# /dev/pts/* - pts namespaces are "coming soon"
lxc.cgroup.devices.allow = c 136:* rwm
lxc.cgroup.devices.allow = c 5:2 rwm
# rtc
lxc.cgroup.devices.allow = c 254:0 rwm
bekir@lxc:/lxc$
sudo lxc-create -f /lxc/config.lenny -n test1
sudo lxc-start -n test1
lxc-ps auxf
sudo lxc-console -n test1 # Type <Ctrl+a q> to exit the console
sudo lxc-stop -n test1