Girish Mahajan (Editor)

Stand alone shell

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
David Bell

Operating system
  
Unix-like

Stable release
  
v3.8 March 2014

Type
  
Embedded

Stand-alone shell (sash) is a Unix shell designed for use in recovering from certain types of system failures.

The built-in commands of sash have all libraries linked statically, so unlike most shells, the standard UNIX commands do not rely on external libraries. For example, the copy command (cp) requires libc.so and ld-linux.so when built from GNU Core Utilities on Linux. If any of these libraries get corrupted, the coreutils cp command would not work; however, in sash, the built-in command, cp, would be unaffected.

Sash has the following built-in commands:

ar, chattr, chgrp, chmod, chown, cmp, cp, dd, echo, ed, exec, grep, file, find, gunzip, gzip, kill, losetup, ln, ls, lsattr, mkdir, mknod, rmdir, sum, sync, tar, touch, umount, where

sash-plus-patches

sash-plus-patches is a collection of patches for sash. The key features are the chroot, pivot root, and losetup commands. These functions provide interfaces to the respective Linux system calls. They are especially useful when sash is used in an initial ramdisk ("initrd") environment. In addition, simple shell variable expansion support has been added; e.g., the variable "$(VAR)" is replaced by the content of the environment variable "VAR".

Some Linux distributions, such as Debian and Slackware (via SlackBuilds.org), have this available.

References

Stand-alone shell Wikipedia