forked from chaos/pdsh
-
Notifications
You must be signed in to change notification settings - Fork 2
/
README.KRB4
180 lines (143 loc) · 4.46 KB
/
README.KRB4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
To build the *API only* on an SP with AIX 4.2.1 / PSSP 2.4 and install in
/usr/local/krb4, use the following manual procedure or run the attached script
(but look at it first: set paths appropriate to your environment and note
that it destroys an old copy of the API if it is in the way).
NOTES:
- This has not been tested in a long while. We have stopped using KRB4
for pdsh on our SP's because we would occasionally overwhelm our KDC.
Also there is a bug which causes pdsh to run very slowly when pdsh has to
refresh the tgt for a node. --jg
- gcc needs to be in your PATH.
1) Obtain cns-96q4.tar.gz distribution from MIT and untar in ./kerberos.
See: http://web.mit.edu/network/kerberos-form.html (verified this 3/98).
Hmm there may be Y2K problems in this release...
2) Make sure the destination exists
mkdir /usr/local/krb4
chmod 755 /usr/local/krb4
3) Configure
mkdir krb4.aix4
cd krb4.aix4
../kerberos/configure --prefix=/usr/local/krb4
3a) [You may skip this option and do 5a instead if you wish]
Hand edit src/Makefile and src/include/Makefile and change
CONFDIR=$(LIBDIR)
to
CONFDIR=/etc
*** We choose to go with /etc at LLNL because the API is installed on an
*** NFS mounted partition and we don't want things compiled with the API
*** to break if the partition isn't mounted.
3b) Depend
make depend
4) Build/install the pieces we want
cd src/util/et
make all install
cd ../ss
make all install
cd ../../include
make all
cp ../lib/kadm/kadm_err.h .
cp ../lib/krb/krb_err.h .
make install
cd ../lib/acl
make all install
cd ../des
make all install
cd ../krb
make all install
cd ../kdb
make all install
cd ../kstream
make all install
cd ../kadm
cp ../krb/krb_err.h .
make all install
5) Perform a little cleanup
# return to directory that contains ./kerberos and ./krb4.aix4
cp ./kerberos/src/include/kparse.h /usr/local/krb4/include
cd /usr/local/krb4
rm -rf man bin
cd include
rm -f c-386aix.h c-386bsd.h c-386linux.h c-386sco.h c-alpha.h \
c-apollo.h c-aux.h c-hp68k.h c-hpsnake.h c-ibm370.h c-next.h \
c-pc.h c-pyr.h c-rtpc.h c-sgi.h c-sol2.h c-sun3.h c-sun386i.h \
c-sunos4.h c-tahoe.h c-ultmips.h c-vax.h
5a) [Only if step 3a was skipped]
Link SP config files into the locations wanted by the API
cd /usr/local/krb4/lib
ln -s /etc/krb.conf .
ln -s /etc/krb.realms .
------SNIP------
#!/bin/ksh
# this script blows away /usr/local/krb4 and installs the new stuff
# make sure gcc is in our path
PATH=/usr/bin:/usr/ucb:/usr/sbin:/usr/local/gnu/bin:/usr/local/bin
# the install/build paths
PATH_TOP=/usr/local/src/krb4
PATH_BUILD=$PATH_TOP/krb4.aix4
PATH_SRC=$PATH_TOP/kerberos
PATH_DEST=/usr/local/krb4
# sanity check before we get started
if [ ! -d $PATH_TOP ]; then
echo $PATH_TOP must exist, bye.
exit 1
fi
if [ ! -d $PATH_SRC ]; then
echo $PATH_SRC must exist, bye.
exit 1
fi
set -o verbose
# blow away any build cruft
rm -rf $PATH_BUILD
mkdir $PATH_BUILD
chmod 755 $PATH_BUILD
# blow away any old copies <--- danger will robinson!
rm -rf $PATH_DEST
mkdir $PATH_DEST
chmod 755 $PATH_DEST
# configure
cd $PATH_BUILD || exit 1
../kerberos/configure --prefix=/usr/local/krb4
# force krb.conf and krb.realms to /etc
cd $PATH_BUILD/src || exit 1
sed 's/^CONFDIR=.*/CONFDIR=\/etc/' <Makefile >/tmp/blah.$$
cp /tmp/blah.$$ Makefile
cd $PATH_BUILD/src/include || exit 1
sed 's/^CONFDIR=.*/CONFDIR=\/etc/' <Makefile >/tmp/blah2.$$
cp /tmp/blah2.$$ Makefile
# make depend
cd $PATH_BUILD || exit 1
make depend
# make the relevant pieces
cd $PATH_BUILD/src/util/et || exit 1
make all install
cd $PATH_BUILD/src/util/ss || exit 1
make all install
cd $PATH_BUILD/src/include || exit 1
make all
cp ../lib/kadm/kadm_err.h .
cp ../lib/krb/krb_err.h .
make install
cd $PATH_BUILD/src/lib/acl || exit 1
make all install
cd $PATH_BUILD/src/lib/des || exit 1
make all install
cd $PATH_BUILD/src/lib/krb || exit 1
make all install
cd $PATH_BUILD/src/lib/kdb || exit 1
make all install
cd $PATH_BUILD/src/lib/kstream || exit 1
make all install
cd $PATH_BUILD/src/lib/kadm || exit 1
cp ../krb/krb_err.h .
make all install
cd $PATH_SRC || exit 1
cp ./src/include/kparse.h $PATH_DEST/include
# clean up useless directories and includes
cd $PATH_DEST || exit 1
rm -rf man bin
cd include || exit 1
rm -f c-386aix.h c-386bsd.h c-386linux.h c-386sco.h c-alpha.h \
c-apollo.h c-aux.h c-hp68k.h c-hpsnake.h c-ibm370.h c-next.h \
c-pc.h c-pyr.h c-rtpc.h c-sgi.h c-sol2.h c-sun3.h c-sun386i.h \
c-sunos4.h c-tahoe.h c-ultmips.h c-vax.h
exit 0