From: ChenQi <Qi.Chen@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 08/12] initscripts: let populate-volatile.sh create the /tmp link
Date: Fri, 25 Jan 2013 14:17:55 +0800 [thread overview]
Message-ID: <51022393.60208@windriver.com> (raw)
In-Reply-To: <510171B7.6050000@windriver.com>
On 01/25/2013 01:39 AM, Mark Hatle wrote:
> On 1/24/13 2:16 AM, Qi.Chen@windriver.com wrote:
>> From: Chen Qi <Qi.Chen@windriver.com>
>>
>> Previously, the /tmp link (/tmp -> /var/tmp) was created by the
>> bootmisc.sh script. So in case of a read-only rootfs, this symlink
>> would not be created correctly.
>>
>> The populate-volatile.sh script is intended to handle all directories
>> and files related to volatile storage, so we should let it create
>> the /tmp link.
>>
>> In addition, because of the improments of populate-volatile.sh, the data
>> loss problem of bug#3404 is also resolved by this patch.
>>
>> [YOCTO #3406]
>> [YOCTO #3404]
>>
>> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
>> ---
>> .../initscripts/initscripts-1.0/bootmisc.sh | 9 +--------
>> .../initscripts/initscripts-1.0/volatiles | 1 +
>> 2 files changed, 2 insertions(+), 8 deletions(-)
>>
>> diff --git
>> a/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
>> b/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
>> index 4f76cb4..3b5a47f 100755
>> --- a/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
>> +++ b/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
>> @@ -54,14 +54,7 @@ fi
>>
>> #
>> # This is as good a place as any for a sanity check
>> -# /tmp should be a symlink to /var/tmp to cut down on the number
>> -# of mounted ramdisks.
>> -if test ! -L /tmp && test -d /var/tmp
>> -then
>> - rm -rf /tmp
>> - ln -sf /var/tmp /tmp
>> -fi
>> -
>
> I saw this the other day. It seems like the wrong solution, if the
> expectation is that all systems want this linked behavior. Instead the
> link should be configured in the meta/files/fs-perms.txt
>
> Something like:
>
> -/tmp 01777 root root false - - -
> +/tmp link /var/tmp
>
> Making that change would avoid this patch, and then all of the
> filesystems could inherit this behavior. (Other distributions that
> don't want it can provide their own custom fs-perms.txt file, and
> simply set the older value, which will append to the default.)
>
Thank you for your careful review :)
Here's a little more explanation on this patch. (Correct me if I'm wrong
somewhere.)
No matter we're going to change the fs-perms.txt file or not, this patch
is needed for things to work correctly. The populate-volatile.sh in
sysvinit scripts, together with its configuration files, are a final
means to ensure the directories, files and links related to volatile
storage are created correctly.
There are link config items in fs-perms.txt.
${localstatedir}/cache link volatile/cache
${localstatedir}/run link volatile/run
${localstatedir}/log link volatile/log
${localstatedir}/lock link volatile/lock
${localstatedir}/tmp link volatile/tmp
There configurations are great and very reasonable, because they are
common for different init systems.
But I'm not very sure about this link config item -- "/tmp link
/var/tmp "
I want to restrict the creation of this link (/tmp -> /var/tmp) in the
sysvinit scripts, because in this way, it doesn't affect other init
systems such as systemd. The same strategy goes with the /run directory.
Here's the output from the mount command from a systemd-based
core-image-minimal image:
root@qemux86:~# mount | grep tmpfs
devtmpfs on /dev type devtmpfs
(rw,relatime,size=59032k,nr_inodes=14758,mode=755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,mode=755)
tmpfs on /tmp type tmpfs (rw)
tmpfs on /var/volatile type tmpfs (rw,relatime)
tmpfs on /media/ram type tmpfs (rw,relatime)
Here's the output form the mount command from a sysv-based
core-image-minimal image:
root@qemux86:~# mount | grep tmpfs
devtmpfs on /dev type devtmpfs
(rw,relatime,size=59032k,nr_inodes=14758,mode=755)
tmpfs on /var/volatile type tmpfs (rw,relatime)
tmpfs on /media/ram type tmpfs (rw,relatime)
Best Regards,
Chen Qi
>> +#
>> # Set the system clock from hardware clock
>> # If the timestamp is more recent than the current time,
>> # use the timestamp instead.
>> diff --git a/meta/recipes-core/initscripts/initscripts-1.0/volatiles
>> b/meta/recipes-core/initscripts/initscripts-1.0/volatiles
>> index e0741aa..f7e2ef7 100644
>> --- a/meta/recipes-core/initscripts/initscripts-1.0/volatiles
>> +++ b/meta/recipes-core/initscripts/initscripts-1.0/volatiles
>> @@ -31,6 +31,7 @@ l root root 1777 /var/lock /var/volatile/lock
>> l root root 0755 /var/log /var/volatile/log
>> l root root 0755 /var/run /var/volatile/run
>> l root root 1777 /var/tmp /var/volatile/tmp
>> +l root root 1777 /tmp /var/tmp
>> d root root 0755 /var/lock/subsys none
>> f root root 0664 /var/log/wtmp none
>> f root root 0664 /var/run/utmp none
>>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
>
next prev parent reply other threads:[~2013-01-25 6:33 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-24 8:16 [PATCH 00/12] read-only rootfs support Qi.Chen
2013-01-24 8:16 ` [PATCH 01/12] sysvinit: add ROOTFS_READ_ONLY variable to rcS-default Qi.Chen
2013-01-24 8:16 ` [PATCH 02/12] image.bbclass: add a hook funtion to support readonly rootfs Qi.Chen
2013-01-24 19:44 ` Mark Hatle
2013-01-25 2:49 ` ChenQi
2013-01-24 8:16 ` [PATCH 03/12] core-image.bbclass: support read-only rootfs Qi.Chen
2013-01-24 8:16 ` [PATCH 04/12] package.bbclass: add VOLATILE_DIR and VOLATILE_LINK to PACKAGEVARS Qi.Chen
2013-01-24 8:16 ` [PATCH 05/12] volatiles.bbclass: add recipe Qi.Chen
2013-01-24 10:31 ` Martin Jansa
2013-01-24 11:37 ` Richard Purdie
2013-01-24 11:45 ` Burton, Ross
2013-01-25 8:58 ` ChenQi
2013-01-25 14:05 ` Burton, Ross
2013-01-28 3:32 ` ChenQi
2013-01-24 8:16 ` [PATCH 06/12] volatiles_sysvinit.bbclass: " Qi.Chen
2013-01-24 8:16 ` [PATCH 07/12] populate-volatile.sh: improve this script Qi.Chen
2013-01-24 8:16 ` [PATCH 08/12] initscripts: let populate-volatile.sh create the /tmp link Qi.Chen
2013-01-24 16:11 ` Mark Hatle
2013-01-24 17:39 ` Mark Hatle
2013-01-25 6:17 ` ChenQi [this message]
2013-01-24 8:16 ` [PATCH 09/12] initscripts: inherit volatiles to support read-only rootfs Qi.Chen
2013-01-25 13:11 ` Burton, Ross
2013-01-25 14:14 ` Richard Purdie
2013-01-28 2:11 ` ChenQi
2013-01-28 1:45 ` ChenQi
2013-01-24 8:16 ` [PATCH 10/12] dropbear: " Qi.Chen
2013-01-24 8:16 ` [PATCH 11/12] nfs-utils: " Qi.Chen
2013-01-24 8:16 ` [PATCH 12/12] dbus: " Qi.Chen
2013-01-24 10:45 ` Burton, Ross
2013-01-25 3:05 ` ChenQi
2013-01-25 13:02 ` Burton, Ross
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51022393.60208@windriver.com \
--to=qi.chen@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox