Project

General

Profile

Actions

Bug #4351

open

Fix packaging for ksh93 so it is delivered into /sbin/sh not as a symlink

Added by Jim Klimov over 9 years ago. Updated about 2 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
cmd - userland programs
Start date:
2013-11-24
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:
External Bug:

Description

Currently OpenIndiana delivers the system shell interpreter "/sbin/sh" as a symlink into "../usr/bin/i86/ksh93". This causes an unnecessary boot-time dependency on the "/usr" filesystem to be an unseparable part of the root filesystem - while in fact things work very well if the ksh93 and its few dependency libraries are copied into /sbin and /lib accordingly.

Automation of this copying procedure is detailed in the Wiki page http://wiki.openindiana.org/oi/Advanced+-+Split-root+installation but the proper solution would be to deliver the binary and libraries into the root filesystem in the first place as part of standard packaging (in particular, this would allow proper upgrades without manual repetitions of the file-copying procedure described in the page).

If possible, these files should be delivered as preferred hardlinks (so that monolithic root filesystems won't waste space by keeping copies of the files, while split-root ones would keep both copies), or the package should be revised altogether - i.e. deliver the libraries such as libshell.so.1, libcmd.so.1, libdll.so.1, libast.so.1, libsum.so.1 straight into /lib instead of /usr/lib; deliver /sbin/ksh93 as a binary and /sbin/sh and /usr/bin/i86/ksh93 as symlinks to it. This approach would retain the legacy program names and only keep one copy of the binary and library files - in the rootfs.


Related issues

Related to illumos gate - Feature #2755: split ksh93 from core packageClosedAndy Fiddaman2012-05-20

Actions
Actions #1

Updated by Garrett D'Amore over 9 years ago

I prefer the latter approach. In fact, this is what we did at DEY. As much as its unfortunate that the monolithic thing that is ksh93 and its dependencies is required at boot, if this is the system shell, then it needs to be part of the root filesystem and not on /usr.

Actions #2

Updated by Andy Fiddaman about 2 years ago

Actions #3

Updated by Andy Fiddaman about 2 years ago

  • Category set to cmd - userland programs
  • Assignee set to Andy Fiddaman
Actions #4

Updated by Electric Monk about 2 years ago

  • Gerrit CR set to 1222
Actions #5

Updated by Andy Fiddaman about 2 years ago

  • Assignee deleted (Andy Fiddaman)
  • Gerrit CR deleted (1222)
Actions

Also available in: Atom PDF