Last active
August 29, 2015 14:24
-
-
Save lmgeorge/1e408fddee4c146bd05e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
apt_update () { | |
sudo apt-get --yes update | |
} | |
apt_install () { | |
sudo apt-get --yes install $* | |
} | |
add_repo () { | |
sudo add-apt-repository $1 | |
} | |
pkg_config () { | |
sudo dpkg --configure -a | |
} | |
cleanup(){ | |
sudo apt-get autoremove -y # remove obsolete packages | |
} | |
install_java8 () { | |
# Install Oracle Java 8 | |
add_repo ppa:webupd8team/java | |
apt_update | |
debconf-set-selections <<< 'oracle-java8-installer shared/accepted-oracle-license-v1-1 select true' | |
apt_install oracle-java8-installer oracle-java8-set-default | |
export JAVA_HOME="/usr/lib/jvm/java-8-oracle/" | |
export JRE_HOME=$JAVA_HOME/jre | |
export CLASSPATH=$CLASSPATH:$JAVA_HOME/bin | |
export PATH=$PATH:$JAVA_HOME/bin | |
java -version | |
} | |
install_maven () { | |
local mvn_version="3.3.3" | |
echo "Installing Maven ${mvn_version}" | |
local mvn_file="apache-maven-${mvn_version}" | |
local mvn_tarball="$mvn_file-bin.tar.gz" | |
local mvn_link="http://www.carfab.com/apachesoftware/maven/maven-3/${mvn_version}/binaries/${mvn_tarball}" | |
sudo apt-get purge maven maven2 maven3 | |
wget -nv --no-check-certificate $mvn_link | |
tar -zxf $mvn_tarball | |
sudo mv $mvn_file /usr/local/maven | |
sudo ln -s /usr/local/maven/bin/mvn /usr/bin/mvn | |
sudo ln -s /usr/local/maven/bin/mvnDebug /usr/bin/mvnDebug | |
export M2_HOME="/usr/local/maven" | |
mvn -version | |
} | |
config_oracle11g (){ | |
local chkconfig =/sbin/chkconfig | |
local initfile=/etc/init.d/oracle-xe | |
local conffile=/etc/systctl.d/60-oracle.conf | |
sudo touch $chkconfig | |
if [[ ! `tail -n1 $initfile | grep INIT` ]]; then | |
echo >> $initfile | |
echo '### BEGIN INIT INFO' >> $initfile | |
echo '# Provides: OracleXE' >> $initfile | |
echo '# Required-Start: $remote_fs $syslog' >> $initfile | |
echo '# Required-Stop: $remote_fs $syslog' >> $initfile | |
echo '# Default-Start: 2 3 4 5' >> $initfile | |
echo '# Default-Stop: 0 1 6' >> $initfile | |
echo '# Short-Description: Oracle 11g Express Edition' >> $initfile | |
echo '### END INIT INFO' >> $initfile | |
fi | |
update-rc.d oracle-xe defaults 80 01 | |
sudo chmod 755 $chkconfig | |
sudo touch $conffile | |
echo '# Oracle 11g XE kernel parameters' >> $conffile | |
echo 'fs.file-max=6815744' >> $conffile | |
echo 'net.ipv4.ip_local_port_range=9000 65000' >> $conffile | |
echo 'kernel.sem=250 32000 100 128' >> $conffile | |
echo 'kernel.shmmax=536870912' >> $conffile | |
sudo service procps start | |
sudo sysctl -q fs.file-max #test that the conf file loaded properly | |
sudo ln -s /usr/bin/awk /bin/awk | |
mkdir /var/lock/subsys | |
touch /var/lock/subsys/listener | |
} | |
install_oracle_11g() { | |
local version="11g" | |
local oldpkg = "oracle-xe-11.2.0-1.0.x86_64" | |
local newpkg = "oracle-xe-11.2.0-2_amd64" | |
local download_link = "http://download.oracle.com/otn/linux/oracle11g/xe/oracle-xe-11.2.0-1.0.x86_64.rpm.zip" | |
local g_bashrc = /etc/bash.bashrc | |
apt_install alien libaio1 unixodbc | |
wget --no-cookies --no-check-certificate \ | |
--header "Cookie: oraclelicense=accept-securebackup-cookie" $download_link -O "${oldpkg}.rpm.zip" | |
unzip $oldpkg | |
cd Disk1 | |
sudo alien --scripts -d ${oldpkg}.rpm | |
sudo dpkg --install ${newpkg}.deb | |
sudo rm -rf /dev/shm | |
sudo mkdir /dev/shm | |
sudo mount -t tmpfs shmfs -o size=4096m /dev/shm | |
sudo touch /etc/rc2.d/S01shm_load | |
case "$1" in | |
start) sudo mkdir /var/lock/subsys 2>/dev/null | |
touch /var/lock/subsys/listener | |
rm /dev/shm 2>/dev/null | |
mkdir /dev/shm 2>/dev/null | |
mount -t tmpfs shmfs -o size=4096m /dev/shm ;; | |
*) echo error | |
exit 1 ;; | |
esac | |
sudo chmod 755 /etc/rc2.d/S01shm_load | |
sudo /etc/init.d/oracle-xe configure | |
echo "export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe" >> $g_bashrc | |
echo "export ORACLE_SID=XE" >> $g_bashrc | |
echo "export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`" >> $g_bashrc | |
echo "export ORACLE_BASE=/u01/app/oracle" >> $g_bashrc | |
echo "export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH" >> $g_bashrc | |
echo "export PATH=$ORACLE_HOME/bin:$PATH" >> $g_bashrc | |
source $g_bashrc | |
echo $ORACLE_HOME # => /u01/app/oracle/product/11.2.0/xe | |
echo "Start Oracle Express using \"sudo service oracle-xe start\"" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment