Bug 710388
| Summary: | cannot create /root on separate volume | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Tomasz Kepczynski <tomasz.kepczynski> |
| Component: | anaconda | Assignee: | Anaconda Maintenance Team <anaconda-maint-list> |
| Status: | CLOSED WONTFIX | QA Contact: | Release Test Team <release-test-team> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.1 | ||
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-06-09 20:26:29 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Tomasz Kepczynski
2011-06-03 09:44:49 UTC
/root is the root user account's home directory on RHEL systems. anaconda does not permit having /root on a filesystem other than /. The same is true for /bin, /dev, /sbin, /etc, and /lib. Could you at least explain WHY? I do understand the reasoning for /bin, /sbin, /etc, and /lib, but I don't for /root. BTW /dev IS on separate filesystem: gklab-63-001:~> grep /dev /proc/mounts udev /dev devtmpfs rw,seclabel,relatime,size=4021724k,nr_inodes=1005431,mode=755 0 0 Well, /dev is virtual. But the /dev directory contains a handful of basic device nodes that can be used before udev starts up. Before we started using /root for root's home directory, we used /. So it followed that root's home directory would live on the root volume, despite being in a subdirectory. It makes sense for the root user to be able to log in and have access to his or her home directory in instances of system problems. Moving /root to a separate filesystem works against that safeguard. So I guess I don't see the advantage. "Because SuSE does it" is not a sufficient justification or use case. Why are you wanting to put /root on its own filesystem? > It makes sense for the root user to be able to log in and have access to his or her home directory in instances of system problems. Moving /root to a separate filesystem works against that safeguard. So I guess I don't see the advantage.
Ok, let's discuss this:
1. In case of problems with a system you are very likely to go into single user mode. Then you will be logged in / directory and not /root, so /root availability is not strictly speaking a requirement.
2. If /root is available, then it is mounted in single user mode (yes, I've just checked this).
3. Now, if system cannot mount /root at this stage there are two possibilities: a) it's on a network and I absolutely do not suggest putting /root there (anyway, I don't think partitioning screen in anaconda allows putting any directory on a network) b) volume with /root is so corrupted that if it was on / we would be in much bigger trouble.
So for me, the reasonable requirement is to put /root on local filesystem (this includes iSCSI, FC and FCoE targets if / is there), /root on the same filesystem as / is too strict.
Now I already explained why I want to separate this:
1. read only / filesystem.
2. I want to share /root between several OSes I have on the machine (multiboot).
3. You can extend the previous one to sharing /root with VMs (when used with appropriate filesystem like gfs2).
4. Additionally you don't pollute / with crap which tends to gather in home directories (and root will eat all free space, including the reserved space), and this itself can sometimes avoid boot-up/login problems.
In Fedora we follow the FHS unless there is agreement to do something different. See: http://fedoraproject.org/wiki/Packaging:Guidelines#Filesystem_Layout Here's what the FHS has to say about /root: http://www.pathname.com/fhs/pub/fhs-2.3.html#ROOTHOMEDIRECTORYFORTHEROOTUSER And the footnote: http://www.pathname.com/fhs/pub/fhs-2.3.html#FTN.AEN1037 The first sentence of the footnote is more or less my point: "If the home directory of the root account is not stored on the root partition it will be necessary to make certain it will default to / if it can not be located." If we change anaconda to allow /root on a separate filesystem, will Fedora still meet this FHS requirement? I don't know, but I think I'm safe in saying "maybe". I'm sure there is software in Fedora that assumes /root is on /, so for this change to really happen, the entire distribution needs to be audited to ensure it can handle /root on a separate filesystem. |