mirror of
git://slackware.nl/current.git
synced 2025-01-10 05:25:51 +01:00
122 lines
3.6 KiB
Text
122 lines
3.6 KiB
Text
|
#!/bin/sh
|
||
|
TMP=/var/log/setup/tmp
|
||
|
if [ ! -d $TMP ]; then
|
||
|
mkdir -p $TMP
|
||
|
fi
|
||
|
# Include function to check for Slackware ISO images:
|
||
|
. /usr/lib/setup/INCISO
|
||
|
if [ -f $TMP/Punattended ]; then
|
||
|
eval $(grep "^NFS_SERVER=" $TMP/Punattended)
|
||
|
eval $(grep "^NFS_ROOT=" $TMP/Punattended)
|
||
|
fi
|
||
|
|
||
|
while [ 0 ]; do
|
||
|
rm -f $TMP/SeTDS $TMP/SeTmount $TMP/SeTsource $TMP/nfsout
|
||
|
UPNRUN=`cat $TMP/SeTupnrun 2> /dev/null`
|
||
|
|
||
|
if [ "$REMOTE_IPADDR" = "" ]; then REMOTE_IPADDR=${NFS_SERVER}; fi
|
||
|
if [ "$REMOTE_PATH" = "" ]; then REMOTE_PATH=${NFS_ROOT}; fi
|
||
|
|
||
|
cat << EOF > $TMP/tempmsg
|
||
|
|
||
|
Good! We're all set on the local end, but now we need to know
|
||
|
where to find the software packages to install. First, we need
|
||
|
the IP address of the machine where the Slackware sources are
|
||
|
stored.
|
||
|
|
||
|
EOF
|
||
|
if [ "$UPNRUN" = "0" ]; then
|
||
|
cat << EOF >> $TMP/tempmsg
|
||
|
Since you're already running on the network, you should be able
|
||
|
to use the hostname instead of an IP address if you wish.
|
||
|
|
||
|
EOF
|
||
|
fi
|
||
|
echo "What is the IP address of your NFS server? " >> $TMP/tempmsg
|
||
|
dialog --title "ENTER IP ADDRESS OF NFS SERVER" --inputbox \
|
||
|
"`cat $TMP/tempmsg`" 14 70 $REMOTE_IPADDR 2> $TMP/remote
|
||
|
if [ ! $? = 0 ]; then
|
||
|
rm -f $TMP/tempmsg $TMP/remote
|
||
|
exit
|
||
|
fi
|
||
|
REMOTE_IPADDR="`cat $TMP/remote`"
|
||
|
rm $TMP/remote
|
||
|
|
||
|
cat << EOF > $TMP/tempmsg
|
||
|
|
||
|
There must be a directory on the server with the Slackware
|
||
|
packages and files arranged in a tree like the FTP site.
|
||
|
|
||
|
The installation script needs to know the name of the
|
||
|
directory on your server that contains the series'
|
||
|
subdirectories. For example, if your A series is found at
|
||
|
/slack/slackware/a, then you would respond: /slack/slackware
|
||
|
|
||
|
What is the Slackware source directory?
|
||
|
EOF
|
||
|
dialog --title "SELECT SOURCE DIRECTORY" --inputbox "`cat $TMP/tempmsg`" 18 \
|
||
|
65 $REMOTE_PATH 2> $TMP/slacksrc
|
||
|
if [ ! $? = 0 ]; then
|
||
|
rm -f $TMP/tempmsg $TMP/slacksrc
|
||
|
exit
|
||
|
fi
|
||
|
REMOTE_PATH="`cat $TMP/slacksrc`"
|
||
|
rm $TMP/slacksrc
|
||
|
cat << EOF > $TMP/tempmsg
|
||
|
|
||
|
In the next screen you should watch for NFS mount errors.
|
||
|
If you see errors and you don't see your NFS server listed,
|
||
|
then try setting up NFS again.
|
||
|
|
||
|
EOF
|
||
|
dialog --title "NFS MOUNT INFORMATION" --msgbox "`cat $TMP/tempmsg`" 10 65
|
||
|
rm -f $TMP/tempmsg
|
||
|
touch $TMP/nfsout
|
||
|
if [ ! "$UPNRUN" = "0" ]; then
|
||
|
if [ -x /etc/rc.d/rc.rpc ]; then
|
||
|
echo "Starting RPC services..." >> $TMP/nfsout
|
||
|
/etc/rc.d/rc.rpc restart >> $TMP/nfsout 2>&1
|
||
|
fi
|
||
|
fi
|
||
|
echo "Mounting $REMOTE_PATH:" >> $TMP/nfsout
|
||
|
echo "mount -r -t nfs -o vers=3 $REMOTE_IPADDR:$REMOTE_PATH /var/log/mount" >> $TMP/nfsout
|
||
|
mount -r -t nfs -o vers=3 $REMOTE_IPADDR:$REMOTE_PATH /var/log/mount
|
||
|
if [ ! $? = 0 ]; then
|
||
|
echo "Didn't work." >> $TMP/nfsout
|
||
|
echo "Maybe you should check that the directory name is correct?" >> $TMP/nfsout
|
||
|
DEFANSW="yes"
|
||
|
else
|
||
|
DEFANSW="no"
|
||
|
fi
|
||
|
echo "" >> $TMP/nfsout
|
||
|
echo "Current NFS mounts:" >> $TMP/nfsout
|
||
|
mount -t nfs >> $TMP/nfsout 2>&1
|
||
|
echo "" >> $TMP/nfsout
|
||
|
|
||
|
echo "Do you need to try setting up NFS again?" >> $TMP/nfsout
|
||
|
echo "" >> $TMP/nfsout
|
||
|
if [ "$DEFANSW" = "no" ]; then
|
||
|
dialog --title "NFS MOUNT RESULT" \
|
||
|
--defaultno --yesno "`cat $TMP/nfsout`" 21 70
|
||
|
RET=$?
|
||
|
else
|
||
|
dialog --title "NFS MOUNT RESULT" --yesno "`cat $TMP/nfsout`" 21 70
|
||
|
RET=$?
|
||
|
fi
|
||
|
rm -f $TMP/nfsout
|
||
|
if [ $RET = 1 ]; then
|
||
|
# OK with the NFS mount.
|
||
|
# First, check if a Slackware ISO image is present in /var/log/mount
|
||
|
if check_iso_image /var/log/mount /var/log/mntiso ; then
|
||
|
echo "/var/log/mntiso/slackware" > $TMP/SeTDS
|
||
|
elif [ -r /var/log/mount/slackware/PACKAGES.TXT ]; then
|
||
|
echo "/var/log/mount/slackware" > $TMP/SeTDS
|
||
|
else
|
||
|
echo "/var/log/mount" > $TMP/SeTDS
|
||
|
fi
|
||
|
echo "-source_mounted" > $TMP/SeTmount
|
||
|
echo "/dev/null" > $TMP/SeTsource
|
||
|
break
|
||
|
fi
|
||
|
done
|