.os_wrapper
Package: WA2L/edrc 1.5.57
Section: General Commands (1)
Updated: 25 September 2020
Index
Return to Main Contents
NAME
os_wrapper - wrap operating system dependent binaries
SYNOPSIS
edrc/bin/command
->
.os_wrapper
edrc/lib/command
->
.os_wrapper
AVAILABILITY
WA2L/edrc
DESCRIPTION
wrap operating system dependent binaries to allow transparent
command startup.
If a binary for the related operating system (OSID) is
installed in WA2L/edrc this binary is started. When the
binary is not installed in WA2L/edrc, but the operating system
provides it, it is started from the operating system.
This default
command
startup behaviour can be altered in the
configuration file
lib/os_wrapper/command.cfg
for each
command
started thru the
.os_wrapper.
The concept behind the default startup behaviour is, that on
certain operating systems some commands are not installed
by default. Therefore only for those operating systems
the "missing" commands have to be distributed with WA2L/edrc, in this
case the command provided in WA2L/edrc complements the commands
provided by the operating system.
Furthermore it might also be the case that some variants
of commands provided by a certain operating systems do not
provide the needed functionality, in this case the command
variant provided in WA2L/edrc over-locks the one installed by the
operating system.
An example for over-locking is the
cpio
command for HP-UX, where the operating system command lacks
some options and is not able to copy files bigger then 2 GByte.
An example for complementing is the
traceroute
command for SunOS, where it was not installed by default on
early Solaris releases.
When a binary that is provided in WA2L/edrc is started thru the
.os_wrapper
the
$LD_LIBRARY_PATH
and based on the underlying operating system, the
$SHLIB_PATH
environment variables are expanded with
lib/<OSID>/libs/.
To start a new command thru the
.os_wrapper,
follow the following steps:
- 1.)
-
create a symlink to the new command in the
edrc/bin/
or
edrc/lib/
directory depending on your needs:
[ /opt/edrc/bin ]
[ root@acme001 ][*edrc*/bash]: ln -s .os_wrapper new_cmd
- 2.)
-
install the command binary in the
edrc/bin/<OSID>/
or
edrc/lib/<OSID>/
directory depending on your needs and set the correct
file ownership (
0:3
) and permissions (
executable
):
[ /opt/edrc/lib/Linux ]
[ root@acme001 ][*edrc*/bash]: chown root:3 new_cmd
[ /opt/edrc/lib/Linux ]
[ root@acme001 ][*edrc*/bash]: chmod 755 new_cmd
OPTIONS
-
ENVIRONMENT
-
EXIT STATUS
- 103
-
user calling the command has no permission to access/execute
the called
daemon_command.
- 106
-
the operating system id (OSID) is not supported, yet.
If you get this error, the
command
is neither installed in WA2L/edrc, nor on the underlying
operating system.
- 107
-
the
.os_wrapper
was called directly.
- other
-
exit status of the started
command.
FILES
- lib/os_wrapper/command.cfg
-
configuration file for the
command
started thru the
.os_wrapper.
If this file is missing for a
command,
the default startup behaviour applies.
- bin/<OSID>/command
-
location of the provided
command
for a certain
operating system id (OSID).
- bin/<OSID>/<GLIBC>/command
-
location of the provided
command
for a certain
operating system id (OSID) and for a specific GLIBC version.
The GLIBC version can be resolved using the
glibc.version(3),
the
ldd --version
or the
getconf GNU_LIBC_VERSION
command.
- lib/<OSID>/command
-
location of the provided
command
for a certain
operating system id (OSID).
- lib/<OSID>/<GLIBC>/command
-
location of the provided
command
for a certain
operating system id (OSID) and for a specific GLIBC version.
The GLIBC version can be resolved using the
glibc.version(3)
or the
ldd --version
command.
- lib/<OSID>/libs/
-
location of the provided shared libraries for a certain
operating system id (OSID).
- lib/<OSID>/<GLIBC>/libs/
-
location of the provided shared libraries for a certain
operating system id (OSID) and for a specific GLIBC version.
EXAMPLES
-
SEE ALSO
edrcintro(1),
binprobe(1m),
cmdlist(1m),
daemon_wrapper(1),
glibc.version(3),
java_wrapper(1),
ksh_wrapper(1),
lua_wrapper(1),
ln(1),
ld(1),
ldd(1),
osid(3),
perl_wrapper(1),
shlib(3)
NOTES
-
BUGS
-
AUTHOR
os_wrapper was developed by Christian Walther. Send suggestions
and bug reports to wa2l@users.sourceforge.net .
COPYRIGHT
Copyright © 2014
Christian Walther
This is free software; see
edrc/doc/COPYING
for copying conditions. There is ABSOLUTELY NO WARRANTY; not
even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This document was created by man2html
using the manual pages.
Time: 09:57:56 GMT, April 11, 2025