Gentoo Archives: gentoo-dev

From: Christian Kniep <ckniep@××××××.com>
To: William Hubbs <williamh@g.o>, gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] rfc: /etc/hostname on gentoo
Date: Wed, 24 Aug 2016 06:52:24
Message-Id: CA+x9LCNBd9xVXxtqu-tatQCJ-DVOO28MZqZ8AeQgAFZQvdmtjA@mail.gmail.com
In Reply to: Re: [gentoo-dev] rfc: /etc/hostname on gentoo by William Hubbs
1 Hey there,
2
3 as for the /etc/hostname when sharing /etc/ as a volume… This ain’t a
4 problem as /etc/hostname is taken care of by the docker-engine (in previous
5 versions they used it to discover other hosts).
6
7 As you can see in the snippet below, /etc/hostname is local, while it is
8 possible to create a file test in /etc/, which is also present in the
9 container I mounted the volumes from.
10
11 $ docker run -d -v /etc/ --name host1 ubuntu tail -f /dev/null
12 3f90929cc4b761096b600d5e2b02c61ec2e26ba74167a71b2da73d28d2274dba
13 $ docker run -ti --volumes-from host1 --name host2 ubuntu bash
14 root@dd0167aec38e:/# cat /etc/hostname
15 dd0167aec38e
16 root@dd0167aec38e:/# echo "huhu" > /etc/test
17 root@dd0167aec38e:/# exit
18 $ docker exec host1 cat /etc/test
19
20 To me the /etc/hostname problem is just to make Gentoo play nice among
21 other distros. As described below, this is (IMHO) a sound solution to
22 propagate the underlying hostname to the containers.
23
24 Cheers Christian
25
26
27 On 23 August 2016 at 23:22:44, William Hubbs (williamh@g.o) wrote:
28
29 On Tue, Aug 23, 2016 at 04:25:30PM -0400, Rich Freeman wrote:
30 > On Tue, Aug 23, 2016 at 3:57 PM, William Hubbs <williamh@g.o>
31 wrote:
32 > >
33 > > I am planning to change the logic in /etc/init.d/hostname so that if
34 > > /etc/hostname exists, the first word out of that file will be used as
35 > > the hostname rather than any setting in /etc/conf.d/hostname. If you
36 > > don't want /etc/hostname, just don't create it and the settings from
37 > > /etc/conf.d/hostname will still be used.
38 > >
39 >
40 > Keep in mind that this is potentially problematic for a few reasons:
41 >
42 > 1. The hostname could change after openrc is done setting it. If it
43 > does, a program that reads /etc/hostname won't get the real hostname.
44
45 This is also true for /etc/conf.d/hostname, so I don't see the problem
46 here.
47
48 > 2. You could have a situation where multiple containers use the same
49 > /etc. Obviously in this situation you wouldn't want to store the
50 > hostname anywhere in /etc unless you wanted them to all have the same
51 > hostname. It would be better to obtain it from dhcp, or to have it
52 > set before init is run during initialization.
53
54
55 /etc/init.d/hostname doesn't run inside containers, so this is not
56 relevant.
57
58 > The main danger is people not thinking of all the scenarios. I'm not
59 > quite sure why we even need /etc/hostname now given these issues and
60 > the fact that we've apparently gotten along for a long time without
61 > it. Have we ever gotten around to making /etc/mtab a symlink yet? I
62 > know it wasn't for a long time. It seems like we are moving away from
63 > container support when we should be moving towards it if anything...
64
65 Container support is controlled by the keyword line in dependencies.
66 OpenRC can detect most containers, so if you put the proper keywords on
67 that line and RC_SYS is set correctly or the container is autodetected
68 properly, openrc will not run the scripts that it shouldn't run in the
69 container.
70
71 Yes, /etc/mtab is a symlink by default now; that was taken care of a
72 while back.
73
74 William

Replies

Subject Author
Re: [gentoo-dev] rfc: /etc/hostname on gentoo Christian Kniep <ckniep@××××××.com>
Re: [gentoo-dev] rfc: /etc/hostname on gentoo Rich Freeman <rich0@g.o>