Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Feb 2000 17:13:08 +1000
From:      "Doug Young" <dougy@gargoyle.apana.org.au>
To:        "Abercromby James SSgt 31CS/SCBBMA" <James.Abercromby@aviano.af.mil>, "'freebsd-questions@FreeBSD.org'" <freebsd-questions@FreeBSD.ORG>, "'freebsd-newbies@FreeBSD.org'" <freebsd-newbies@FreeBSD.ORG>
Subject:   Re: Dual Booting Win98 and FreeBSD 2 sep. HDs
Message-ID:  <075801bf7203$f483f420$827e03cb@ORACLE>
References:  <78944D1EBF2BD3119DBF0008C75DEDFF0301A3@avo-exch-l3.aviano.af.mil>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
OK .... here's an "EASY" (ie foolproof) way to do what you want. These
may
not be the most elegant ways to achieve a solution but they work for
me every time.

Firstly I never use any form of boot manager ..... I've got unix
running SCSI
drives and Windows running IDE. BIOS is set to look for IDE drives
first,
SCSI second The IDE drive is in a removable cradle with a nifty little
lock
cum switch. If the switch is off, the IDE drive isn't started, and the
system
boots into unix, if the switch is on, the IDE drive starts and boots
into Windows.
I guess a variation of this would be to setup unix on one primary
drive and
Windows on the other primary, then use BIOS to switch between boot
drives ..
but I haven't had reason to try that yet.

Secondly, the ppp issue. I had most of the typical newbie problems
with it until
I discovered the atached script which got me online with very little
trouble other
than a minor bit of editing the ppp.conf file. Hopefully you are
taking the easier
route here by running user-ppp instead of the (reportedly) more
complicated
kernel-ppp. I've yet to have significant problems with any machine
where I've
used the script, but in case you do there's a resident user-ppp guru
by the name
of Brian Somers lurking around here someplace who can undoubtedly help
resolve any residual user-ppp issues. I've never been able to contact
the author
of the script but I'd gladly buy him a beer or three if he ever visits
Brisbane
Australia :)

[-- Attachment #2 --]
#!/bin/sh
# -*- sh -*-

PATH=/usr/bin:/bin; export PATH

#  ppp-setup  -- a script to automatically setup user ppp.
#  Most of the text in this script was derived from the FreeBSD Handbook.
#  Many thanks to Brian Somers for his input

clear

#  Check to see if we are root
ME=`whoami`
if [ ! "$ME" = "root" ]; then
	echo "Sorry, you must be root to run ppp-setup."
	exit 1
fi

cat << EOS
  |----------------------------Unleash the Daemon---------------------------|
  |     -------------------------------------------------------------       |
  |       PPP SETUP   06.23.98  *** The Easy Way to set up User PPP         |
  |     -------------------------------------------------------------       |
  |                                                                         |
  |                         hacked by Mike Jackson                          |
  |                                                                         |
  |                              muck@ida.net                               |
  |                                                                         |
  |                      Tue Jun 23 13:43:23 MDT 1998                       |
  |                                                                         |
  |                    --------------------------------                     |
  |                                                                         |
  |                ****  ***   ****  ****  ***    ***  ***                  |
  |                *     *  *  *     *     *  *  *     *  *                 |
  |                ****  ***   ****  ****  ****   **   *  *                 |
  |                *     * *   *     *     *  *     *  *  *                 |
  |                *     *  *  ****  ****  ***   ***   ***                  |
  |                                                                         |
  |                                                                         |
  |                                                                         |
  |                       [ Press Enter to continue ]                       |
  |_________________________________________________________________________|
EOS

read tmp

clear

cat << EOS
  |----------------------------Unleash the Daemon---------------------------|
  |                                                                         |
  |    This script automagically sets up user ppp for your particular       |
  |    system's setup according to questions that you answer.  It will      |
  |    then write the appropriate files in /etc/ppp/ for you so that        |
  |    you can easily be on your way to dial up network connectivity.       |
  |                                                                         |
  |                                                                         |
  |                                                                         |
  |                                                                         |
  |                 The following files will be modified:                   | 
  |                                                                         |
  |    /etc/ppp/ppp.conf    Information about your ISP, modem, etc.         |
  |    /etc/ppp/ppp.linkup  Used after a connection is established.         |
  |    /etc/ppp/ppp.secret* Allows you to change ppp on the fly.            |
  |    /etc/hosts           Contains the IP addresses of your machines.     |
  |    /etc/host.conf       Instructions for the resolver.                  |
  |    /etc/resolv.conf     Tells the resolver how to behave.               |
  |                                                                         |
  |                         *Will not be written.                           |
  |                                                                         |
  |                       [ Press Enter to continue ]                       |
  |_________________________________________________________________________|
EOS

read tmp

clear

cat << EOS
  |----------------------------Unleash the Daemon---------------------------|
  |                                                                         |
  |    Before you start, it is assumed you are roughly in this position:    |
  |                                                                         |
  |  * You have an account with an ISP ,and your modem already configured.  |
  |                                                                         |
  |  * You know your ISP's phone number(s).                                 |
  |                                                                         |
  |  * You know your login name and password.                               |
  |                                                                         |
  |  * You know the IP address of your ISP's gateway.  If you don't know    |
  |    it, don't worry.  We can make one up.                                |
  |                                                                         |
  |  * Your ISP's netmask setting.  Again, if you don't know it, we can     |
  |    safely use a netmask of 255.255.255.0.                               |
  |                                                                         |
  |  * The IP address of one or more nameservers.  You MUST have this!      |
  |                                                                         |
  |  * If your ISP has given you a static IP address, you will need to      |
  |    have it handy.  If not, we can configure PPP to accept any IP        |
  |    number.                                                              |
  |                       [ Press Enter to continue ]                       |
  |_________________________________________________________________________|
EOS

read tmp

clear

echo "  |-----------------------------Value Required------------------------------|" 
echo "  |                                                                         |"
echo "  |                          Enter your ISP's name.                         |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "? $c"; read ISP_NAME

clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |                      Enter your ISP's Phone Number.                     |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "? $c"; read ISP_PHONE

clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |                         Enter your login name.                          |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "? $c"; read ISP_UNAME


clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |                          Enter your password.                           |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "? $c"; read ISP_PASSWD

clear

echo "  |-----------------------------PPP Configuration---------------------------|"
echo "  |                                                                         |"
echo "  |    Has your Internet Service Provider assigned you a gateway?  If       |"
echo "  |    you don't know your gateway, don't worry.  We can make one up        |"
echo "  |    and your ISP's server will tell us when we connect.                  |"
echo "  |                                                                         |"
echo "  |                           Do you have a gateway?                        |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "y/n? $c"; read YES_NO

clear

if [ $YES_NO = "y" ];
   then 
 	echo "  |-------------------------------Value Required----------------------------|"
	echo "  |                                                                         |"
	echo "  |                             Enter your gateway.                         |"
	echo "  |                                                                         |"
	echo "  |_________________________________________________________________________|"

	echo ""; echo $n "? $c"; read ISP_GATEWAY
    else
        ISP_GATEWAY='10.0.0.2/0'
fi

clear

echo "  |-----------------------------PPP Configuration---------------------------|"
echo "  |                                                                         |"
echo "  |    Has your Internet Service Provider assigned you a netmask setting?   |"
echo "  |    If not, don't worry.  We can safely use 255.255.255.0                |"
echo "  |                                                                         |"
echo "  |                       Do you have a netmask setting?                    |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "y/n? $c"; read YES_NO

clear

if [ $YES_NO = "y" ];
   then
	echo "  |-------------------------------Value Required----------------------------|"
	echo "  |                                                                         |"
	echo "  |                         Enter your netmask setting.                     |"
	echo "  |                                                                         |"
	echo "  |_________________________________________________________________________|"

	echo ""; echo $n "? $c"; read ISP_NETMASK
    else
        ISP_NETMASK='255.255.255.0'
fi

clear

echo "  |-----------------------------PPP Configuration---------------------------|"
echo "  |                                                                         |"
echo "  |    Does your ISP give you a static IP address?  If not, don't           |"
echo "  |    worry.  We'll configure PPP to accept any IP number.                 |"
echo "  |                                                                         |"
echo "  |                      Do you have a static IP address?                   |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "y/n? $c"; read STATIC_IP_YES_NO

clear

if [ $STATIC_IP_YES_NO = "y" ];
   then
   	echo "  |--------------------------------Value Required---------------------------|"
	echo "  |                                                                         |"
	echo "  |                     Please enter your static IP address.                |"
	echo "  |                                                                         |"
	echo "  |_________________________________________________________________________|"

	echo ""; echo $n "? $c"; read STATIC_IP
    else  
        STATIC_IP='10.0.0.1/0'
fi

clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |                   Please Enter your ISP's nameservers.                  |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "First Nameserver:  $c"; read ISP_DNS_ONE
echo ""; echo $n "Second Nameserver:  $c"; read ISP_DNS_TWO

clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |                       What port is your modem on?                       |"
echo "  |                                                                         |"
echo "  |    [1] cuaa0  (COM 1)                            [3] cuaa2  (COM 3)     |"
echo "  |    [2] cuaa1  (COM 2)                            [4] cuaa3  (COM 4)     |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "? $c"; read PORT_NUM

if [ $PORT_NUM = "1" ];
   then 
      PORT_NUM='cuaa0'
   elif [ $PORT_NUM = "2" ];
      then 
         PORT_NUM='cuaa1'
      elif [ $PORT_NUM = "3" ];
         then 
            PORT_NUM='cuaa2'
         else 
            PORT_NUM='cuaa3'
fi

clear

echo "  |-----------------------------Value Required------------------------------|"
echo "  |                                                                         |"
echo "  |    Some ISP's set their system up so that the authentication part       |"
echo "  |    of your connection is done using either PAP or CHAP.  If this is     |"
echo "  |    the case, your ISP will not give a login: prompt when you connect,   |"
echo "  |    but will start talking PPP immediately.                              |"
echo "  |                                                                         |"
echo "  |         If you're not sure if your ISP uses PAP/CHAP, select no         |"
echo "  |         here.  You can always go back and edit /etc/ppp/ppp.conf        |"
echo "  |         with the command, run as root, \"ee /etc/ppp/ppp.conf\".          |"
echo "  |                                                                         |"
echo "  |         Consult the FreeBSD Handbook (www.freebsd.org/handbook)         |"
echo "  |         for further details.                                            |"
echo "  |                                                                         |"
echo "  |                    Would you like to use PAP/CHAP?                      |"
echo "  |                                                                         |"
echo "  |_________________________________________________________________________|"

echo ""; echo $n "y/n? $c"; read PAP_CHAP_YES_NO

if [ $PAP_CHAP_YES_NO != "y" ];
   then
      clear 

      echo "  |-----------------------------Value Required------------------------------|"
      echo "  |                                                                         |"
      echo "  |    Some ISP's will prompt you for a protocol.  If this is the case,     |"
      echo "  |    then a \"col: ppp\" will be appended to your login string in           |"
      echo "  |    /etc/ppp/ppp.conf.                                                   |"
      echo "  |                                                                         |"
      echo "  |        If you're not sure if your ISP will prompt you for a ppp         |"
      echo "  |        protocol, please select no here.                                 |"
      echo "  |                                                                         |"
      echo "  |        Consult the FreeBSD Handbook (www.freebsd.org/handbook)          |"
      echo "  |        for further details.                                             |"
      echo "  |                                                                         |"
      echo "  |                 Does your ISP prompt you for a protocol?                |"
      echo "  |                                                                         |"
      echo "  |_________________________________________________________________________|"

      echo ""; echo $n "y/n? $c"; read PPP_PROMPT_YES_NO
fi
  
clear

cat << EOS
  |--------------------------The Daemon's Unleashed-------------------------|
  |                                                                         |
  |    Ok, now I'm going to write the following PPP related files:          |
  |                                                                         |
  |    /etc/ppp/ppp.conf      This will contain your modem's port number,   |
  |                           the speed at which we'll talk to your modem,  |
  |                           the dial string, the login string, your ISP's |
  |                           phone number, your username and password,     |
  |                           and your static IP address if you have one.   |
  |                                                                         |
  |    /etc/ppp/ppp.linkup    This will contain the lines delete ALL, and   |
  |                           add 0 0 HISADDR.  This will delete all of     |
  |                           the existing routing tables for the tun       |
  |                           device, and add a default route to your ISP's |
  |                           gateway.                                      |
  |                                                                         |
  |    /etc/ppp/ppp.secret*   This will not be written, but it allows you   |
  |                           to change PPP on the fly.                     |
  |                                                                         |
  |                [ Press ctrl-c to cancel writing of files ]              |
  |                                                                         |
  |                        [ Press Enter to continue ]                      |
  |_________________________________________________________________________|
EOS

read tmp

#  move the old files if they exist

if [ ! -f /etc/ppp/ppp.conf ]
   then 
        #doesn't exist, so do nothing
   else
        mv /etc/ppp/ppp.conf /etc/ppp/ppp.conf.old
fi


if [ ! -f /etc/ppp/ppp.linkup ]
   then 
        #doesn't exist, so do nothing
   else
        mv /etc/ppp/ppp.linkup /etc/ppp/ppp.linkup.old
fi


if [ ! -f /etc/ppp/ppp.secret ] 
   then 
        #doesn't exist, so do nothing
   else
        mv /etc/ppp/ppp.secret /etc/ppp/ppp.secret.old
fi


if [ ! -f /etc/hosts ]
   then
        #doesn't exist, so do nothing
   else
        mv /etc/hosts /etc/hosts.old
fi


if [ ! -f /etc/host.conf ]
   then
        #doesn't exist, so do nothing
   else
        mv /etc/host.conf /etc/host.conf.old
fi


if [ ! -f /etc/resolv.conf ] 
   then 
        #doesn't exist, so do nothing
   else
        mv /etc/resolv.conf /etc/resolv.conf.old
fi


#  ppp.conf will now be written 
echo "default:" >> /etc/ppp/ppp.conf
echo "  set log Phase Chat Connect Carrier lcp ipcp ccp command" >> /etc/ppp/ppp.conf
echo "  set device /dev/$PORT_NUM" >> /etc/ppp/ppp.conf
echo "  set speed 115200" >> /etc/ppp/ppp.conf
echo "  set dial \"ABORT BUSY ABORT NO\\\\sCARRIER TIMEOUT 5 \\\"\\\" ATE1Q0 OK-AT-OK \\\\dATDT\\\\T TIMEOUT 40 CONNECT\"" >> /etc/ppp/ppp.conf
echo "$ISP_NAME:" >> /etc/ppp/ppp.conf
echo "  set phone \"$ISP_PHONE\"        #Separate multiple phone numbers with a |" >> /etc/ppp/ppp.conf


#  does the user want to use PAP/CHAP?
if [ $PAP_CHAP_YES_NO = "y" ];
   then 
        echo "  set login" >> /etc/ppp/ppp.conf
   elif [ $PPP_PROMPT_YES_NO = "y" ];
      then
         echo "  set login \"TIMEOUT 10 gin:-BREAK-gin: $ISP_UNAME word: $ISP_PASSWD col: ppp\"" >> /etc/ppp/ppp.conf 
      else 
         echo "  set login \"TIMEOUT 10 gin:-BREAK-gin: $ISP_UNAME word: $ISP_PASSWD\"" >> /etc/ppp/ppp.conf
fi

echo "  set timeout 300            #Change to 0 if no timeout desired" >> /etc/ppp/ppp.conf
echo "  deny lqr" >> /etc/ppp/ppp.conf


#  does the user have a static IP address?
if [ $STATIC_IP_YES_NO = "y" ]; 
   then 
        echo "  set ifaddr $STATIC_IP $ISP_GATEWAY $ISP_NETMASK" >> /etc/ppp/ppp.conf
   else
        echo "  set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0" >> /etc/ppp/ppp.conf
fi

#  does the user want to use PAP/CHAP?
if [ $PAP_CHAP_YES_NO = "y" ];
   then 
        echo "  set authname $ISP_UNAME" >> /etc/ppp/ppp.conf
        echo "  set authname $ISP_PASSWD" >> /etc/ppp/ppp.conf
fi

#  ppp.linkup will now be written
echo "MYADDR:" >> /etc/ppp/ppp.linkup
echo "  delete ALL" >> /etc/ppp/ppp.linkup
echo "  add 0 0 HISADDR" >> /etc/ppp/ppp.linkup

clear 

cat << EOS
  |--------------------------The Daemon's Unleashed-------------------------|
  |                                                                         |
  |    I'll also write these files:                                         |
  |                                                                         |
  |    /etc/hosts              This will contain the IP addresses and       |
  |                            names of machines on your network.           |
  |                                                                         |
  |    /etc/host.conf          This will instruct the resolver to look      |
  |                            first in the hosts file, and then consult    |
  |                            the DNS if the name was not found.           |
  |                                                                         |
  |    /etc/resolv.conf        This tells the resolver how to behave.       |
  |                                                                         |
  |---------------[ Press ctrl-c to cancel writing of files ]---------------|
  |                                                                         |
  |    If you have any problems getting PPP set up, you may have to look    |
  |    at the FreeBSD Handbook at www.freebsd.org/handbook.  Or, you may    |
  |    want to see the FreeBSD FAQ at www.freebsd.org/FAQ.                  |
  |                                                                         |
  |                Please send any comments to:  muck@ida.net.              |
  |                                                                         |
  |                       [ Press Enter to continue ]                       |
  |_________________________________________________________________________|
EOS

read tmp

#  hosts will now be written
MYSYSTEM=`hostname -s`
MYDOMAIN_NAME=`hostname`
echo "127.0.0.1     localhost" >>/etc/hosts
echo "10.0.0.1      $MYDOMAIN_NAME		$MYSYSTEM"  >> /etc/hosts

#  host.conf will now be written
echo "hosts" >> /etc/host.conf
echo "bind" >> /etc/host.conf

#  resolv.conf will now be written
MYDOMAIN=`hostname`
echo "nameserver $ISP_DNS_ONE" >> /etc/resolv.conf
echo "nameserver $ISP_DNS_TWO" >> /etc/resolv.conf
echo "domain ${MYDOMAIN#*.}" >> /etc/resolv.conf

clear
 
cat << EOS 
                             The Daemon's Unleashed

                        FreeBSD System Manager's Manual

       NAME
            ppp - Point to Point Protocol
       SYNOPSIS
            ppp $ISP_NAME   - Will load the information for your ISP.

            ppp ON $MYSYSTEM> dial    - Will dial and login to your ISP.


            If for some reason dialing fails, you can do it manually:

            ppp ON $MYSYSTEM> term    - Gets you into terminal mode.
            Enter to terminal mode.
            Type '~?' for help.
            ATDT$ISP_PHONE            - Dials your ISP's number.
            Connect 38400          - Connection established.
            Login:
            Password:
            PPP ON $MYSYSTEM> Packet mode.

                            [ Press Enter to exit ]

EOS


read tmp

clear

exit 0

help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?075801bf7203$f483f420$827e03cb>