diff options
Diffstat (limited to 'source/n/yptools')
-rw-r--r-- | source/n/yptools/rc.yp | 49 | ||||
-rw-r--r-- | source/n/yptools/slack-desc | 8 | ||||
-rw-r--r-- | source/n/yptools/yp.default | 37 | ||||
-rwxr-xr-x | source/n/yptools/yptools.SlackBuild | 21 |
4 files changed, 86 insertions, 29 deletions
diff --git a/source/n/yptools/rc.yp b/source/n/yptools/rc.yp index eda9634e..a1a99746 100644 --- a/source/n/yptools/rc.yp +++ b/source/n/yptools/rc.yp @@ -3,25 +3,34 @@ # # Start NIS (Network Information Service). NIS provides network-wide # distribution of hostname, username, and other information databases. -# After configuring NIS, you will need to uncomment the parts of this -# script that you want to run. +# After configuring NIS, you will either need to uncomment the parts +# of this script that you want to run, or tweak /etc/default/yp # # NOTE: for detailed information about setting up NIS, see the # documentation in /usr/doc/yp-tools, /usr/doc/ypbind, # /usr/doc/ypserv, and /usr/doc/Linux-HOWTOs/NIS-HOWTO. # Set non-zero to enable yp client functions +# Can also be used in /etc/default/yp to override this default: YP_CLIENT_ENABLE=1 # Set non-zero to enable yp server functions +# Can also be used in /etc/default/yp to override this default: YP_SERVER_ENABLE=0 # If YP_SERVER_ENABLE is set, a non-zero YP_XFRD_ENABLE setting will # enable ypxfrd. +# Can also be used in /etc/default/yp to override this default: YP_XFRD_ENABLE=0 PID_PATH=/var/run +# Source options. Doing this here makes it possible +# to override YP_*_ENABLE set above +if [ -r /etc/default/yp ]; then + . /etc/default/yp +fi + yp_start() { if [ $YP_SERVER_ENABLE -ne 0 ]; then @@ -29,21 +38,17 @@ yp_start() { # If you are the master server for the NIS domain, you must run ypserv to # service clients on the domain. if [ -x /usr/sbin/ypserv ]; then - echo "Starting NIS server: /usr/sbin/ypserv" - /usr/sbin/ypserv + echo "Starting NIS server: /usr/sbin/ypserv $YPSERV_OPTS" + /usr/sbin/ypserv $YPSERV_OPTS fi # If you are the master server for the NIS domain, you must also run # rpc.yppasswdd, which is the RPC server that lets users change their - # passwords. You might also want users to be able to change their shell - # and GECOS information, in which case you should comment out the first - # yppasswdd line and uncomment out the second one. + # passwords. if [ -x /usr/sbin/rpc.yppasswdd ]; then - echo "Starting NIS master password server: /usr/sbin/rpc.yppasswdd" - /usr/sbin/rpc.yppasswdd - # echo "Starting NIS master password server: /usr/sbin/rpc.yppasswdd -e chsh -e chfn" - # /usr/sbin/rpc.yppasswdd -e chsh -e chfn + echo "Starting NIS master password server: /usr/sbin/rpc.yppasswdd $YPPASSWDD_OPTS" + /usr/sbin/rpc.yppasswdd $YPPASSWDD_OPTS fi # If you have NIS slave servers, you might also want to start up @@ -51,20 +56,22 @@ yp_start() { # Alternatively, rpc.ypxfrd can be run out of inetd. if [ $YP_XFRD_ENABLE -ne 0 ]; then if [ -x /usr/sbin/rpc.ypxfrd ]; then - echo "Starting NIS transfer server: /usr/sbin/rpc.ypxfrd" - /usr/sbin/rpc.ypxfrd + echo "Starting NIS transfer server: /usr/sbin/rpc.ypxfrd $YPXFRD_OPTS" + /usr/sbin/rpc.ypxfrd $YPXFRD_OPTS fi fi fi if [ $YP_CLIENT_ENABLE -ne 0 ]; then # NIS CLIENT CONFIGURATION: - # If you are a NIS client, all you need to do is run ypbind, which will - # broadcast across the network to find a server. Your NIS server might - # also be a client. + # If you are a NIS client, all you need to do is run ypbind. + # Your NIS server might also be a client. if [ -d /var/yp ]; then - echo "Starting NIS services: /usr/sbin/ypbind -broadcast" - /usr/sbin/ypbind -broadcast + if [ -z "$YPBIND_OPTS" ]; then + YPBIND_OPTS="-broadcast" + fi + echo "Starting NIS services: /usr/sbin/ypbind $YPBIND_OPTS" + /usr/sbin/ypbind $YPBIND_OPTS fi fi } @@ -96,9 +103,9 @@ yp_stop() { # domainname is the name of a domain served by your NIS server. # # If /etc/defaultdomain has not been configured we'll bail out. -if [ -r /etc/defaultdomain -a -x /bin/nisdomainname ]; then - if [ "$(nisdomainname)" == "(none)" ]; then - nisdomainname `cat /etc/defaultdomain` +if [ -r /etc/defaultdomain ] && [ -x /bin/nisdomainname ]; then + if ! /bin/nisdomainname 1>/dev/null 2>/dev/null ; then + nisdomainname $(cat /etc/defaultdomain) fi else echo "/etc/rc.d/rc.yp: NIS not configured. Hint: set up /etc/defaultdomain." diff --git a/source/n/yptools/slack-desc b/source/n/yptools/slack-desc index bedfb39e..32af2065 100644 --- a/source/n/yptools/slack-desc +++ b/source/n/yptools/slack-desc @@ -1,14 +1,14 @@ # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler------------------------------------------------------| yptools: yptools (NIS servers and clients) yptools: -yptools: NIS stands for Network Information Service. NIS is usually used to +yptools: NIS stands for Network Information Service. NIS is usually used to yptools: provide /etc/passwd and /etc/group information throughout the network. yptools: Most Sun-based networks run NIS, and Linux machines can take full yptools: advantage of existing NIS service or provide NIS service themselves. diff --git a/source/n/yptools/yp.default b/source/n/yptools/yp.default new file mode 100644 index 00000000..539d7753 --- /dev/null +++ b/source/n/yptools/yp.default @@ -0,0 +1,37 @@ +# This file can be used to tweak the way YP (NIS) services +# are started. +# +# Optional arguments to pass ypserv upon startup: +#YPSERV_OPTS="" +# +# Example: +# If you run NIS in a firewalled environment you might want +# to bind ypserv to a specific port: +# YPSERV_OPTS="-p 12345" +# See ypserv(8) for more details. +# +# +# Optional arguments to pass rpc.yppasswdd upon startup: +#YPPASSWDD_OPTS="" +# +# Example: +# You might want users to be able to change their shell +# and GECOS information, in which case you should add +# these options: +# YPPASSWDD_OPTS="-e chsh -e chfn" +# See rpc.yppasswdd(8) for more details. +# +# +# Optional arguments to pass rpc.ypxfrd upon startup: +#YPXFRD_OPTS="" +# +# Example: +# If you run NIS in a firewalled environment you might want +# to bind rpc.ypxfrd to a specific port: +# YPXFRD_OPTS="-p 54321" +# +# +# Optional arguments to pass ypbind upon startup. The default +# is to use -broadcast if YPBIND_OPTS is not set. This ignores +# /etc/yp.conf and broadcasts across the network to find a server. +#YPBIND_OPTS="-broadcast" diff --git a/source/n/yptools/yptools.SlackBuild b/source/n/yptools/yptools.SlackBuild index 3b876935..1205874d 100755 --- a/source/n/yptools/yptools.SlackBuild +++ b/source/n/yptools/yptools.SlackBuild @@ -1,6 +1,6 @@ -#!/bin/sh +#!/bin/bash -# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2016 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,10 +20,12 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +cd $(dirname $0) ; CWD=$(pwd) # Package version number: +PKGNAM=yptools VERSION=2.14 -BUILD=${BUILD:-7} +BUILD=${BUILD:-10} YPTOOLS=$VERSION YPBINDMT=1.38 @@ -40,6 +42,14 @@ if [ -z "$ARCH" ]; then esac fi +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" + exit 0 +fi + if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" @@ -54,7 +64,6 @@ else LIBDIRSUFFIX="" fi -CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-yptools rm -rf $PKG @@ -84,6 +93,9 @@ make clean --disable-domainname \ $ARCH-slackware-linux make CFLAGS="$SLKCFLAGS" || exit 1 + +mkdir -p $PKG/etc/default +cat $CWD/yp.default > $PKG/etc/default/yp.new mkdir -p $PKG/var/yp cat etc/nicknames > $PKG/var/yp/nicknames.new mkdir -p $PKG/usr/share/locale/de/LC_MESSAGES @@ -279,6 +291,7 @@ fi config etc/nsswitch.conf-nis.new config etc/netgroup.new config etc/yp.conf.new +config etc/default/yp.new config etc/rc.d/rc.yp.new config var/yp/nicknames.new config var/yp/Makefile.new |