version1.0 renombrando ogclient boot-tools
git-svn-id: https://opengnsys.es/svn/branches/version1.0@1760 a21b9725-9963-47de-94b9-378ad31fedc9remotes/github/master
parent
7b3fb53fd9
commit
4ed7571a7f
|
@ -0,0 +1,4 @@
|
||||||
|
deb http://ftp.us.debian.org/debian lenny main contrib non-free
|
||||||
|
|
||||||
|
deb http://security.debian.org/ lenny/updates main contrib non-free
|
||||||
|
deb-src http://security.debian.org/ lenny/updates main contrib non-free
|
|
@ -0,0 +1,56 @@
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME main restricted
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME main restricted
|
||||||
|
## Major bug fix updates produced after the final release of the
|
||||||
|
## distribution.
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates main restricted
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates main restricted
|
||||||
|
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
|
||||||
|
## team. Also, please note that software in universe WILL NOT receive any
|
||||||
|
## review or updates from the Ubuntu security team.
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME universe
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME universe
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates universe
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates universe
|
||||||
|
|
||||||
|
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
|
||||||
|
## team, and may not be under a free licence. Please satisfy yourself as to
|
||||||
|
## your rights to use the software. Also, please note that software in
|
||||||
|
## multiverse WILL NOT receive any review or updates from the Ubuntu
|
||||||
|
## security team.
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME multiverse
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME multiverse
|
||||||
|
deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates multiverse
|
||||||
|
deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-updates multiverse
|
||||||
|
|
||||||
|
## Uncomment the following two lines to add software from the 'backports'
|
||||||
|
## repository.
|
||||||
|
## N.B. software from this repository may not have been tested as
|
||||||
|
## extensively as that contained in the main release, although it includes
|
||||||
|
## newer versions of some applications which may provide useful features.
|
||||||
|
## Also, please note that software in backports WILL NOT receive any review
|
||||||
|
## or updates from the Ubuntu security team.
|
||||||
|
# deb http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-backports main restricted universe multiverse
|
||||||
|
# deb-src http://es.archive.ubuntu.com/ubuntu/ OSCODENAME-backports main restricted universe multiverse
|
||||||
|
|
||||||
|
## Uncomment the following two lines to add software from Canonical's
|
||||||
|
## 'partner' repository.
|
||||||
|
## This software is not part of Ubuntu, but is offered by Canonical and the
|
||||||
|
## respective vendors as a service to Ubuntu users.
|
||||||
|
# deb http://archive.canonical.com/ubuntu OSCODENAME partner
|
||||||
|
# deb-src http://archive.canonical.com/ubuntu OSCODENAME partner
|
||||||
|
|
||||||
|
|
||||||
|
deb http://security.ubuntu.com/ubuntu OSCODENAME-security main restricted
|
||||||
|
deb-src http://security.ubuntu.com/ubuntu OSCODENAME-security main restricted
|
||||||
|
deb http://security.ubuntu.com/ubuntu OSCODENAME-security universe
|
||||||
|
deb-src http://security.ubuntu.com/ubuntu OSCODENAME-security universe
|
||||||
|
deb http://security.ubuntu.com/ubuntu OSCODENAME-security multiverse
|
||||||
|
deb-src http://security.ubuntu.com/ubuntu OSCODENAME-security multiverse
|
||||||
|
|
||||||
|
|
||||||
|
deb http://archive.ubuntu.com/ubuntu OSCODENAME main
|
||||||
|
deb http://free.nchc.org.tw/drbl-core drbl stable
|
||||||
|
deb http://free.nchc.org.tw/ubuntu OSCODENAME-security main restricted universe multiverse
|
||||||
|
deb http://ppa.launchpad.net/freenx-team/ubuntu/ OSCODENAME main
|
||||||
|
deb http://ppa.launchpad.net/randomaction/ppa/ubuntu OSCODENAME main
|
||||||
|
deb-src http://ppa.launchpad.net/randomaction/ppa/ubuntu OSCODENAME main
|
|
@ -0,0 +1,4 @@
|
||||||
|
LC_TYPE=es_ES@euro
|
||||||
|
LC_ALL=es_ES@euro
|
||||||
|
LANG=es_ES@euro
|
||||||
|
LANGUAGE=es_ES@euro
|
|
@ -0,0 +1,13 @@
|
||||||
|
# /etc/fstab: static file system information.
|
||||||
|
#
|
||||||
|
# Use 'blkid -o value -s UUID' to print the universally unique identifier
|
||||||
|
# for a device; this may be used with UUID= as a more robust way to name
|
||||||
|
# devices that works even if disks are added and removed. See fstab(5).
|
||||||
|
#
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <pass>
|
||||||
|
proc /proc proc 0 0
|
||||||
|
/dev/sda1 ext3 errors=remount-ro 0 1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,58 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
# initramfs hook for OpenGnsys
|
||||||
|
|
||||||
|
#@file oghooks
|
||||||
|
#@brief configuración initrd para OpenGnSys
|
||||||
|
#@warning
|
||||||
|
#@version 0.9 - estrucura opengnsys, bash-static, unionfs, atheros
|
||||||
|
#@author Antonio J. Doblas Viso.
|
||||||
|
#@date 2010/05/24
|
||||||
|
#*/
|
||||||
|
|
||||||
|
PREREQ="og"
|
||||||
|
|
||||||
|
# Output pre-requisites
|
||||||
|
prereqs()
|
||||||
|
{
|
||||||
|
echo "$PREREQ"
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
prereqs)
|
||||||
|
prereqs
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/share/initramfs-tools/hook-functions
|
||||||
|
|
||||||
|
mkdir -p ${DESTDIR}/scripts/og-top
|
||||||
|
mkdir -p ${DESTDIR}/scripts/og-premount
|
||||||
|
mkdir -p ${DESTDIR}/scripts/og-bottom
|
||||||
|
mkdir -p ${DESTDIR}/mnt/
|
||||||
|
mkdir -p ${DESTDIR}/net/
|
||||||
|
mkdir -p ${DESTDIR}/usr
|
||||||
|
mkdir -p ${DESTDIR}/var/lock
|
||||||
|
mkdir -p ${DESTDIR}/var/log
|
||||||
|
mkdir -p ${DESTDIR}/opt/opengnsys;
|
||||||
|
mkdir -p ${DESTDIR}/ogboot;
|
||||||
|
mkdir -p ${DESTDIR}/boot;
|
||||||
|
|
||||||
|
# Insert basic binaries
|
||||||
|
copy_exec /bin/bash-static /bin/bash
|
||||||
|
copy_exec /usr/bin/unionfs-fuse
|
||||||
|
copy_exec /sbin/mount.cifs
|
||||||
|
|
||||||
|
|
||||||
|
# Insert OpenGnsys Engine
|
||||||
|
#mkdir -p ${DESTDIR}/opt/opengnsys/lib/engine
|
||||||
|
#cp -prv /opt/opengnsys/client/lib/engine ${DESTDIR}/opt/opengnsys/lib/engine
|
||||||
|
|
||||||
|
rm -fr ${DESTDIR}/lib/modules/2.6.32-21-generic-pae/kernel/drivers/net/atl*
|
||||||
|
manual_add_modules cifs
|
||||||
|
manual_add_modules smbfs
|
||||||
|
manual_add_modules atl1e
|
||||||
|
manual_add_modules squashfs
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
# List of modules that you want to include in your initramfs.
|
||||||
|
#
|
||||||
|
# Syntax: module_name [args ...]
|
||||||
|
#
|
||||||
|
# You must run update-initramfs(8) to effect this change.
|
||||||
|
#
|
||||||
|
# Examples:
|
||||||
|
#
|
||||||
|
# raid1
|
||||||
|
# sd_mod
|
||||||
|
vga16b
|
||||||
|
vesafb
|
||||||
|
fbcon
|
||||||
|
|
|
@ -0,0 +1,436 @@
|
||||||
|
#@file ogfunctions.lib
|
||||||
|
#@brief Librería o clase para la generación del 1erFS
|
||||||
|
#@class client
|
||||||
|
#@brief Funciones para la generación del primers sistema (initrd)
|
||||||
|
#@version 0.91
|
||||||
|
#@warning License: GNU GPLv3+
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ogExportKernelParameters ()
|
||||||
|
{
|
||||||
|
GLOBAL="cat /proc/cmdline"
|
||||||
|
for i in `${GLOBAL}`
|
||||||
|
do
|
||||||
|
echo $i | grep "=" > /dev/null && export $i
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
ogExportVarEnvironment ()
|
||||||
|
{
|
||||||
|
#puntos de accesos al servidor ogprotocol=nfs
|
||||||
|
export NFSROOTBOOT="/var/lib/tftpboot"
|
||||||
|
export NFSCLIENTDIR="/opt/opengnsys/client"
|
||||||
|
export NFSLOGDIR="/opt/opengnsys/log/clients"
|
||||||
|
export NFSIMGDIR="/opt/opengnsys/images"
|
||||||
|
#puntos de accesos al servidor ogprotocol=smb
|
||||||
|
export SMBROOTBOOT="tftpboot"
|
||||||
|
export SMBCLIENTDIR="ogclient"
|
||||||
|
export SMBLOGDIR="oglog"
|
||||||
|
export SMBIMGDIR="ogimages"
|
||||||
|
|
||||||
|
#puntos de montaje local ram o cache
|
||||||
|
export LOCALCLIENTDIR="/opt/opengnsys"
|
||||||
|
export LOCALLOGDIR="/opt/opengnsys/log"
|
||||||
|
export LOCALIMGDIR="/opt/opengnsys/images"
|
||||||
|
export LOCALROOTBOOT="/opt/og2fs/tftpboot" #punto de montaje del contendor tftpboot
|
||||||
|
export LOCALROOTIMG="/opt/og2fs/2ndfs" #punto de montaje donde se accede al 2nd FS mediante loop
|
||||||
|
export LOCALROOTRAM="/opt/og2fs/1stfs" #punto de montaje para unionfs
|
||||||
|
export LOCALROOTUNION="/opt/og2fs/unionfs" #punto de union entreo LOCALROOTIMG y LOCALROOTRAM
|
||||||
|
##INFORMACION DE OTRAS VARIABLES OBTENDIAS EN OTRAS FUNCIONES.
|
||||||
|
#ogGetROOTSERVER() ip del servidor pxe, valor obtenido automaticamente desde dhcpd.
|
||||||
|
#IPV4DDR
|
||||||
|
#IPV4BROADCAST
|
||||||
|
#IPV4NETMASK
|
||||||
|
#IPV4GATEWAY
|
||||||
|
#DNS0 DNS1
|
||||||
|
#HOSTNAME
|
||||||
|
#ROOTSERVER #ip del servidor pxe que ha servido el kernel
|
||||||
|
#REPOSERVER=ogrepo -> ogConectROOTSERVER() ip del servidor de images para separar serviicios.
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
ogConfigureRamfs ()
|
||||||
|
{
|
||||||
|
mkdir -p $LOCALROOTBOOT
|
||||||
|
mkdir -p $LOCALROOTIMG
|
||||||
|
mkdir -p $LOCALROOTRAM
|
||||||
|
mkdir -p $LOCALROOTUNION
|
||||||
|
}
|
||||||
|
|
||||||
|
ogLoadNetModule ()
|
||||||
|
{
|
||||||
|
#cargando netmodule
|
||||||
|
if [ -n "$ognetmodule" ]
|
||||||
|
then
|
||||||
|
echo "Cargando modulo de red $netmodule"
|
||||||
|
insmod `find /lib/modules/ -name ${netmodule}*`
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ogPostConfigureFS()
|
||||||
|
{
|
||||||
|
# configuramos el /etc/hostname.
|
||||||
|
echo $HOSTNAME > /etc/hostname
|
||||||
|
|
||||||
|
#configuramos el /etc/hosts
|
||||||
|
echo "127.0.0.1 localhost" > /etc/hosts
|
||||||
|
echo "$IPV4ADDR $HOSTNAME" >> /etc/hosts
|
||||||
|
|
||||||
|
#configuramos el host.conf
|
||||||
|
echo "order hosts,bind" > /etc/host.conf
|
||||||
|
echo "multi on" >> /etc/host.conf
|
||||||
|
|
||||||
|
# configuramos el /etc/networks
|
||||||
|
#read -e NETIP NETDEFAULT <<<$(route -n | grep eth0 | awk -F" " '{print $1}')
|
||||||
|
NETIP=$(route -n | grep eth0 | awk -F" " '{print $1}') && NETIP=$(echo $NETIP | cut -f1 -d" ")
|
||||||
|
echo "default 0.0.0.0" > /etc/networks
|
||||||
|
echo "loopback 127.0.0.0" >> /etc/networks
|
||||||
|
echo "link-local 169.254.0.0" >> /etc/networks
|
||||||
|
echo "localnet $NETIP" >> /etc/networks
|
||||||
|
#route
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ogGetROOTSERVER ()
|
||||||
|
{
|
||||||
|
# get nfs root from dhcp
|
||||||
|
if [ "x${NFSROOT}" = "xauto" ]; then
|
||||||
|
# check if server ip is part of dhcp root-path
|
||||||
|
if [ "${ROOTPATH#*:}" = "${ROOTPATH}" ]; then
|
||||||
|
NFSROOT=${ROOTSERVER}:${ROOTPATH}
|
||||||
|
else
|
||||||
|
NFSROOT=${ROOTPATH}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>]
|
||||||
|
elif [ -n "${NFSROOT}" ]; then
|
||||||
|
# nfs options are an optional arg
|
||||||
|
if [ "${NFSROOT#*,}" != "${NFSROOT}" ]; then
|
||||||
|
NFSOPTS="-o ${NFSROOT#*,}"
|
||||||
|
fi
|
||||||
|
NFSROOT=${NFSROOT%%,*}
|
||||||
|
if [ "${NFSROOT#*:}" = "$NFSROOT" ]; then
|
||||||
|
NFSROOT=${ROOTSERVER}:${NFSROOT}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
export ROOTSERVER
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
ogConectROOTSERVER ()
|
||||||
|
{
|
||||||
|
local OPTIONS
|
||||||
|
#params a detectar
|
||||||
|
if [ $ogrepo ]
|
||||||
|
then
|
||||||
|
# Validar si la ip es correcta
|
||||||
|
ROOTREPO=$ogrepo
|
||||||
|
else
|
||||||
|
ROOTREPO=$ROOTSERVER
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$ogprotocol" in
|
||||||
|
cdrom)
|
||||||
|
echo "blkid /dev/s*"
|
||||||
|
blkid /dev/s*
|
||||||
|
echo " mount -t iso9660 LABEL=ogClient $LOCALROOTBOOT "
|
||||||
|
mount -t iso9660 LABEL=ogClient $LOCALROOTBOOT
|
||||||
|
;;
|
||||||
|
httfs)
|
||||||
|
echo "protocolo httfs aun no soportado"
|
||||||
|
;;
|
||||||
|
sshfs)
|
||||||
|
echo "protocolo sshfs aun no soportado"
|
||||||
|
;;
|
||||||
|
smb)
|
||||||
|
echo Preparando conexión con el Repositorio $ROOTSERVER $ogprotocol
|
||||||
|
OPTIONS=" -o user=opengnsys,pass=og"
|
||||||
|
mount.cifs //${ROOTSERVER}/${SMBCLIENTDIR} $LOCALCLIENTDIR $OPTIONS
|
||||||
|
#&& echo "mount.cifs //${ROOTSERVER}/${SMBCLIENTDIR} $LOCALCLIENTDIR $OPTIONS ";
|
||||||
|
mount.cifs //${ROOTSERVER}/${SMBLOGDIR} $LOCALLOGDIR $OPTIONS
|
||||||
|
#&& echo "mount.cifs //${ROOTSERVER}/${SMBLOGDIR} $LOCALLOGDIR $OPTIONS " ;
|
||||||
|
mount.cifs //${ROOTSERVER}/${SMBROOTBOOT} $LOCALROOTBOOT $OPTIONS
|
||||||
|
#&& echo "mount.cifs //${ROOTSERVER}/${SMBROOTBOOT} $LOCALROOTBOOT $OPTIONS ";
|
||||||
|
mount.cifs //${ROOTREPO}/${SMBIMGDIR} $LOCALIMGDIR ${OPTIONS},ro
|
||||||
|
#&& echo " mount.cifs //${ROOTREPO}/${SMBIMGDIR} $LOCALIMGDIR ${OPTIONS},ro ";
|
||||||
|
;;
|
||||||
|
nfs)
|
||||||
|
echo Preparando conexión con el Repositorio $ROOTSERVER $ogprotocol
|
||||||
|
nfsmount -o nolock,ro $ROOTSERVER:$NFSCLIENTDIR $LOCALCLIENTDIR && echo "nfsmount -o nolock,ro $ROOTSERVER:$NFSCLIENTDIR $LOCALCLIENTDIR ";
|
||||||
|
nfsmount -o nolock $ROOTSERVER:$NFSLOGDIR $LOCALLOGDIR && echo "nfsmount -o nolock $ROOTSERVER:$NFSLOGDIR $LOCALLOGDIR ";
|
||||||
|
nfsmount -o nolock $ROOTSERVER:$NFSROOTBOOT $LOCALROOTBOOT && echo "nfsmount -o nolock $ROOTSERVER:$NFSROOTBOOT $LOCALROOTBOOT ";
|
||||||
|
nfsmount -o nolock,ro $ROOTREPO:$NFSIMGDIR $LOCALIMGDIR && echo "nfsmount -o nolock,ro $ROOTREPO:$NFSIMGDIR $LOCALIMGDIR ";
|
||||||
|
|
||||||
|
#mount -t nfs -onolock,ro $ROOTSERVER:/opt/opengnsys/client /opt/opengnsys;
|
||||||
|
#mount -t nfs -o nolock $ROOTSERVER:/opt/opengnsys/log/clients /opt/opengnsys/log;
|
||||||
|
#mount -t nfs -o "\$MOUNTOPTS" \$SERVERNFS:/opt/opengnsys/images /opt/opengnsys/images;
|
||||||
|
#mount -t tmpfs none /opt/opengnsys/images -o size=5m
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
ogMerge2ndFile()
|
||||||
|
{
|
||||||
|
if [ -f $LOCALROOTBOOT/ogclient/ogclient.sqfs ]
|
||||||
|
then
|
||||||
|
cat /proc/mounts > /tmp/mtab.preunion
|
||||||
|
if [ "$og2nd" == "img" ]
|
||||||
|
then
|
||||||
|
#para acceder al img
|
||||||
|
losetup /dev/loop0 $LOCALROOTBOOT/ogclient/ogclient.img -o 32256
|
||||||
|
mount /dev/loop0 $LOCALROOTIMG
|
||||||
|
else
|
||||||
|
## para acceder al squashfs
|
||||||
|
mount $LOCALROOTBOOT/ogclient/ogclient.sqfs $LOCALROOTIMG -t squashfs -o loop
|
||||||
|
fi
|
||||||
|
for i in etc var lib bin sbin usr root boot; do
|
||||||
|
unionmount $i
|
||||||
|
done
|
||||||
|
cat /tmp/mtab.preunion > /etc/mtab
|
||||||
|
else
|
||||||
|
echo "ficher imagen del cliente no encontrado"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
unionmount()
|
||||||
|
{
|
||||||
|
tmpdir=/$1 #dir
|
||||||
|
FUSE_OPT="-o default_permissions -o allow_other -o use_ino -o nonempty -o suid"
|
||||||
|
UNION_OPT="-o cow -o noinitgroups"
|
||||||
|
UBIN="unionfs-fuse"
|
||||||
|
#UPATH="/unionfs"
|
||||||
|
#LOCALROOTIMG="/opt/og2fs/2ndfs"
|
||||||
|
#LOCALROOTRAM="/opt/og2fs/1stfs" #/unionfs/host #punto de montaje para unionfs
|
||||||
|
#LOCALROOTUNION=/opt/og2fs/unionfs/" #/unionfs/union #punto de union entreo LOCALROOTIMG y LOCALROOTRAM
|
||||||
|
#mkdir -p $LOCALROOTRAM #/unionfs/host
|
||||||
|
#mkdir -p $LOCALROOTUNION #/unionfs/union
|
||||||
|
mkdir -p $LOCALROOTRAM$tmpdir
|
||||||
|
#mount --bind /$tmpdir $LOCALROOTRAM$tmpdir
|
||||||
|
U1STDIR="${LOCALROOTRAM}${tmpdir}=RW"
|
||||||
|
U2NDDIR="${LOCALROOTIMG}${tmpdir}=RO"
|
||||||
|
UNIONDIR=$LOCALROOTUNION$tmpdir
|
||||||
|
mkdir -p $UNIONDIR
|
||||||
|
$UBIN $FUSE_OPT $UNION_OPT ${U1STDIR}:${U2NDDIR} $UNIONDIR
|
||||||
|
mount --bind $UNIONDIR $tmpdir
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
unionmountOLD()
|
||||||
|
{
|
||||||
|
FUSE_OPT="-o default_permissions -o allow_other -o use_ino -o nonempty -o suid"
|
||||||
|
UNION_OPT="-o cow -o noinitgroups"
|
||||||
|
UPATH="/unionfs"
|
||||||
|
UBIN="unionfs-fuse"
|
||||||
|
mkdir -p /unionfs/host
|
||||||
|
mkdir -p /unionfs/union
|
||||||
|
dir=$1
|
||||||
|
mkdir -p /unionfs/host/$dir
|
||||||
|
#mount --bind /$dir /unionfs/host/$dir
|
||||||
|
mkdir -p /unionfs/union/$dir
|
||||||
|
host="/unionfs/host/${dir}=RW"
|
||||||
|
common="/opt/og2fs/${dir}=RO"
|
||||||
|
$UBIN $FUSE_OPT $UNION_OPT ${host}:${common} /unionfs/union/$dir
|
||||||
|
mount --bind /unionfs/union/$dir /$dir
|
||||||
|
}
|
||||||
|
ogconfigure_lo()
|
||||||
|
{
|
||||||
|
# for the portmapper we need localhost
|
||||||
|
ifconfig lo 127.0.0.1
|
||||||
|
#/etc/init.d/portmap start
|
||||||
|
}
|
||||||
|
|
||||||
|
ogconfigure_networking()
|
||||||
|
{
|
||||||
|
IP=$IPOPTS
|
||||||
|
# http://paste.ubuntu.com/427631/ Paste from yofel at Tue, 4 May 2010 13:49:56 +0000
|
||||||
|
if [ -n "${BOOTIF}" ]; then
|
||||||
|
# pxelinux sets BOOTIF to a value based on the mac address of the
|
||||||
|
# network card used to PXE boot, so use this value for DEVICE rather
|
||||||
|
# than a hard-coded device name from initramfs.conf. this facilitates
|
||||||
|
# network booting when machines may have multiple network cards.
|
||||||
|
# pxelinux sets BOOTIF to 01-$mac_address
|
||||||
|
|
||||||
|
# strip off the leading "01-", which isn't part of the mac
|
||||||
|
# address
|
||||||
|
temp_mac=${BOOTIF#*-}
|
||||||
|
|
||||||
|
# convert to typical mac address format by replacing "-" with ":"
|
||||||
|
bootif_mac=""
|
||||||
|
IFS='-'
|
||||||
|
for x in $temp_mac ; do
|
||||||
|
if [ -z "$bootif_mac" ]; then
|
||||||
|
bootif_mac="$x"
|
||||||
|
else
|
||||||
|
bootif_mac="$x:$bootif_mac"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
unset IFS
|
||||||
|
|
||||||
|
# look for devices with matching mac address, and set DEVICE to
|
||||||
|
# appropriate value if match is found.
|
||||||
|
for device in /sys/class/net/* ; do
|
||||||
|
if [ -f "$device/address" ]; then
|
||||||
|
current_mac=$(cat "$device/address")
|
||||||
|
if [ "$bootif_mac" = "$current_mac" ]; then
|
||||||
|
DEVICE=${device##*/}
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# networking already configured thus bail out
|
||||||
|
[ -n "${DEVICE}" ] && [ -e /tmp/net-"${DEVICE}".conf ] && return 0
|
||||||
|
|
||||||
|
# support ip options see linux sources
|
||||||
|
# Documentation/filesystems/nfsroot.txt
|
||||||
|
# Documentation/frv/booting.txt
|
||||||
|
|
||||||
|
for ROUNDTTT in 2 3 4 6 9 16 25 36 64 100; do
|
||||||
|
|
||||||
|
# The NIC is to be configured if this file does not exist.
|
||||||
|
# Ip-Config tries to create this file and when it succeds
|
||||||
|
# creating the file, ipconfig is not run again.
|
||||||
|
if [ -e /tmp/net-"${DEVICE}".conf ]; then
|
||||||
|
break;
|
||||||
|
fi
|
||||||
|
|
||||||
|
case ${IP} in
|
||||||
|
none|off)
|
||||||
|
# Do nothing
|
||||||
|
;;
|
||||||
|
""|on|any)
|
||||||
|
# Bring up device
|
||||||
|
echo "Setting $DEVICE with kernel params $IP: ipconfig -t ${ROUNDTTT} ${DEVICE} "
|
||||||
|
ipconfig -t ${ROUNDTTT} ${DEVICE}
|
||||||
|
;;
|
||||||
|
dhcp|bootp|rarp|both)
|
||||||
|
echo "Setting $DEVICE with (dhcp) kernel params $IP: ipconfig -t ${ROUNDTTT} -c ${IP} -d ${DEVICE} "
|
||||||
|
ipconfig -t ${ROUNDTTT} -c ${IP} -d ${DEVICE}
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Setting $DEVICE with kernel params $IP: ipconfig -t ${ROUNDTTT} -d $IP "
|
||||||
|
ipconfig -t ${ROUNDTTT} -d $IP
|
||||||
|
|
||||||
|
# grab device entry from ip option
|
||||||
|
NEW_DEVICE=${IP#*:*:*:*:*:*}
|
||||||
|
if [ "${NEW_DEVICE}" != "${IP}" ]; then
|
||||||
|
NEW_DEVICE=${NEW_DEVICE%:*}
|
||||||
|
else
|
||||||
|
# wrong parse, possibly only a partial string
|
||||||
|
NEW_DEVICE=
|
||||||
|
fi
|
||||||
|
if [ -n "${NEW_DEVICE}" ]; then
|
||||||
|
DEVICE="${NEW_DEVICE}"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# source ipconfig output
|
||||||
|
if [ -n "${DEVICE}" ]; then
|
||||||
|
# source specific bootdevice
|
||||||
|
. /tmp/net-${DEVICE}.conf
|
||||||
|
else
|
||||||
|
# source any interface as not exaclty specified
|
||||||
|
. /tmp/net-*.conf
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################################################
|
||||||
|
# Ask yesno question.
|
||||||
|
#
|
||||||
|
# Usage: yesno OPTIONS QUESTION
|
||||||
|
#
|
||||||
|
# Options:
|
||||||
|
# --timeout N Timeout if no input seen in N seconds.
|
||||||
|
# --default ANS Use ANS as the default answer on timeout or
|
||||||
|
# if an empty answer is provided.
|
||||||
|
#
|
||||||
|
# Exit status is the answer. 0=yes 1=no
|
||||||
|
|
||||||
|
ogYesNo()
|
||||||
|
{
|
||||||
|
local ans
|
||||||
|
local ok=0
|
||||||
|
local timeout=0
|
||||||
|
local default
|
||||||
|
local t
|
||||||
|
|
||||||
|
while [[ "$1" ]]
|
||||||
|
do
|
||||||
|
case "$1" in
|
||||||
|
--default)
|
||||||
|
shift
|
||||||
|
default=$1
|
||||||
|
if [[ ! "$default" ]]; then error "Missing default value"; fi
|
||||||
|
t=$(echo $default | tr '[:upper:]' '[:lower:]')
|
||||||
|
|
||||||
|
if [[ "$t" != 'y' && "$t" != 'yes' && "$t" != 'n' && "$t" != 'no' ]]; then
|
||||||
|
error "Illegal default answer: $default"
|
||||||
|
fi
|
||||||
|
default=$t
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
|
--timeout)
|
||||||
|
shift
|
||||||
|
timeout=$1
|
||||||
|
if [[ ! "$timeout" ]]; then error "Missing timeout value"; fi
|
||||||
|
#if [[ ! "$timeout" =~ ^[0-9][0-9]*$ ]]; then error "Illegal timeout value: $timeout"; fi
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
|
-*)
|
||||||
|
error "Unrecognized option: $1"
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ $timeout -ne 0 && ! "$default" ]]; then
|
||||||
|
error "Non-zero timeout requires a default answer"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! "$*" ]]; then error "Missing question"; fi
|
||||||
|
|
||||||
|
while [[ $ok -eq 0 ]]
|
||||||
|
do
|
||||||
|
if [[ $timeout -ne 0 ]]; then
|
||||||
|
if ! read -t $timeout -p "$*" ans; then
|
||||||
|
ans=$default
|
||||||
|
else
|
||||||
|
# Turn off timeout if answer entered.
|
||||||
|
timeout=0
|
||||||
|
if [[ ! "$ans" ]]; then ans=$default; fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
read -p "$*" ans
|
||||||
|
if [[ ! "$ans" ]]; then
|
||||||
|
ans=$default
|
||||||
|
else
|
||||||
|
ans=$(echo $ans | tr '[:upper:]' '[:lower:]')
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$ans" == 'y' || "$ans" == 'yes' || "$ans" == 'n' || "$ans" == 'no' ]]; then
|
||||||
|
ok=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $ok -eq 0 ]]; then warning "Valid answers are: yes y no n"; fi
|
||||||
|
done
|
||||||
|
[[ "$ans" = "y" || "$ans" == "yes" ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,111 @@
|
||||||
|
# OpenGnsys oginit -*- shell-script -*-
|
||||||
|
|
||||||
|
#@file oginit
|
||||||
|
#@brief Guion modificador inicio initrd para OpenGnSys
|
||||||
|
#@warning
|
||||||
|
#@version 0.1 - basado en ROOTfs
|
||||||
|
#@author Antonio J. Doblas Viso. Universidad de Málaga
|
||||||
|
#@date 2009/00/00
|
||||||
|
#@version 0.2 - basado en el instalador de ubunto
|
||||||
|
#@author Alejandro Castillo
|
||||||
|
#@author Ramón Gómez
|
||||||
|
#@author Irina
|
||||||
|
#@author Antonio Doblas
|
||||||
|
#@date 2010/00/00
|
||||||
|
#@version 0.7 - Generación limpia con mkinitrd, busybox
|
||||||
|
#@author Antonio J. Doblas Viso. Universidad de Málaga. EVLT.
|
||||||
|
#@date 2010/05/24
|
||||||
|
#@version 0.8 - Integración con FileSystem externo
|
||||||
|
#@author Antonio J. Doblas Viso. Universidad de Málaga. EVLT.
|
||||||
|
#@date 2010/06/24
|
||||||
|
#@version 0.8.1 - UnionFS + squasfs
|
||||||
|
#@author Antonio J. Doblas Viso. Universidad de Málaga. EVLT.
|
||||||
|
#@date 2010/06/29
|
||||||
|
|
||||||
|
#*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Parameter: Where to mount the filesystem
|
||||||
|
mountroot ()
|
||||||
|
{
|
||||||
|
[ "$quiet" != "y" ] && log_begin_msg "Running OpenGnsys /scripts/og-top"
|
||||||
|
run_scripts /scripts/og-top
|
||||||
|
[ "$quiet" != "y" ] && log_end_msg
|
||||||
|
|
||||||
|
# If the root device hasn't shown up yet, give it a little while
|
||||||
|
# to deal with removable devices
|
||||||
|
|
||||||
|
. /scripts/functions
|
||||||
|
. /scripts/ogfunctions
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before get OG variables: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
|
||||||
|
set -a
|
||||||
|
log_success_msg "Checking kernel parameters"
|
||||||
|
ogExportKernelParameters
|
||||||
|
log_success_msg "Checking Opengnys Environmnet"
|
||||||
|
ogExportVarEnvironment
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure ramfs structure for OG: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogConfigureRamfs
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure netmoule specified in kernel parameters: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogLoadNetModule
|
||||||
|
|
||||||
|
#[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/og-premount"
|
||||||
|
#run_scripts /scripts/og-premount
|
||||||
|
#[ "$quiet" != "y" ] && log_end_msg
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure networking: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogconfigure_networking
|
||||||
|
log_success_msg "config networking"
|
||||||
|
ogconfigure_lo
|
||||||
|
log_success_msg "config loopback"
|
||||||
|
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before detect rootserver: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogGetROOTSERVER && log_success_msg "Get Info from pxe server"
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before conect with og Services : y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogConectROOTSERVER && log_success_msg "Conecting with og services" || sh
|
||||||
|
# ogConectROOTMEDIA
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before merge the Second File System with initrd (First File System) : y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogMerge2ndFile && log_success_msg "Merge onto Second File System"
|
||||||
|
|
||||||
|
|
||||||
|
#[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/og-bottom"
|
||||||
|
#run_scripts /scripts/og-bottom
|
||||||
|
#[ "$quiet" != "y" ] && log_end_msg
|
||||||
|
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before doing the postconfiguration: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
ogPostConfigureFS
|
||||||
|
setupcon -k
|
||||||
|
|
||||||
|
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before calling oginit with /etc/inittab: y/N "
|
||||||
|
[ $? == 0 ] && sh || echo " "
|
||||||
|
|
||||||
|
if [ "$oginit" ]
|
||||||
|
then
|
||||||
|
exec $oginit
|
||||||
|
else
|
||||||
|
exec init
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
# This is run first except when booting in single-user mode
|
||||||
|
#
|
||||||
|
#::sysinit:/opt/opengnsys/etc/preinit/defaultTESTING.sh
|
||||||
|
# /bin/sh invocations on selected ttys
|
||||||
|
#
|
||||||
|
# Start an "askfirst" shell on the console (whatever that may be)
|
||||||
|
#::askfirst:/bin/sh
|
||||||
|
# Start an "askfirst" shell on /dev/tty2-4
|
||||||
|
#tty1::respawn:/sbin/getty 38400 tty1
|
||||||
|
tty1::respawn:/opt/opengnsys/etc/preinit/defaultTESTING.sh
|
||||||
|
tty2::respawn:/sbin/getty 38400 tty2
|
||||||
|
tty3::respawn:/sbin/getty 38400 tty3
|
||||||
|
tty4::respawn:/sbin/getty 38400 tty4
|
||||||
|
tty5::respawn:/sbin/getty 38400 tty5
|
|
@ -0,0 +1,30 @@
|
||||||
|
# Framebuffer drivers are generally buggy and poorly-supported, and cause
|
||||||
|
# suspend failures, kernel panics and general mayhem. For this reason we
|
||||||
|
# never load them automatically.
|
||||||
|
blacklist aty128fb
|
||||||
|
blacklist atyfb
|
||||||
|
#blacklist radeonfb
|
||||||
|
blacklist cirrusfb
|
||||||
|
blacklist cyber2000fb
|
||||||
|
blacklist cyblafb
|
||||||
|
blacklist gx1fb
|
||||||
|
blacklist hgafb
|
||||||
|
blacklist i810fb
|
||||||
|
blacklist intelfb
|
||||||
|
blacklist kyrofb
|
||||||
|
blacklist lxfb
|
||||||
|
blacklist matroxfb_base
|
||||||
|
blacklist neofb
|
||||||
|
blacklist nvidiafb
|
||||||
|
blacklist pm2fb
|
||||||
|
blacklist rivafb
|
||||||
|
blacklist s1d13xxxfb
|
||||||
|
blacklist savagefb
|
||||||
|
blacklist sisfb
|
||||||
|
blacklist sstfb
|
||||||
|
blacklist tdfxfb
|
||||||
|
blacklist tridentfb
|
||||||
|
#blacklist vesafb
|
||||||
|
blacklist vfb
|
||||||
|
blacklist viafb
|
||||||
|
blacklist vt8623fb
|
|
@ -0,0 +1,4 @@
|
||||||
|
auto lo
|
||||||
|
iface lo inet loopback
|
||||||
|
auto eth0
|
||||||
|
iface eth0 inet dhcp
|
|
@ -0,0 +1,84 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#/**
|
||||||
|
#@file loadenviron.sh
|
||||||
|
#@brief Script de carga de la API de funciones de OpenGNSys.
|
||||||
|
#@warning License: GNU GPLv3+
|
||||||
|
#@version 0.9
|
||||||
|
#@author Ramon Gomez, ETSII Universidad de Sevilla
|
||||||
|
#@date 2009-10-10
|
||||||
|
#*/
|
||||||
|
|
||||||
|
GLOBAL="cat /proc/cmdline"
|
||||||
|
for i in `${GLOBAL}`
|
||||||
|
do
|
||||||
|
echo $i | grep "=" > /dev/null && export $i
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# FIXME Temporal
|
||||||
|
export LANG="${LANG:-es_ES}"
|
||||||
|
|
||||||
|
#/// Directorios del projecto OpenGNSys.
|
||||||
|
export OPENGNSYS="${OPENGNSYS:-/opt/opengnsys}"
|
||||||
|
if [ -d $OPENGNSYS ]; then
|
||||||
|
export OGBIN=$OPENGNSYS/bin
|
||||||
|
export OGETC=$OPENGNSYS/etc
|
||||||
|
export OGLIB=$OPENGNSYS/lib
|
||||||
|
export OGAPI=$OGLIB/engine/bin
|
||||||
|
export OGSCRIPTS=$OPENGNSYS/scripts
|
||||||
|
export OGIMG=$OPENGNSYS/images
|
||||||
|
export OGCAC=$OPENGNSYS/cache
|
||||||
|
export OGLOG=$OPENGNSYS/log
|
||||||
|
|
||||||
|
# export PATH=$OGBIN:$OGAPI:$OGSCRIPTS:$PATH
|
||||||
|
# export LD_LIBRARY_PATH=$OGLIB:$LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
#/// Cargar fichero de idioma.
|
||||||
|
LANGFILE=$OGETC/lang.$LANG.conf
|
||||||
|
if [ -f $LANGFILE ]; then
|
||||||
|
source $LANGFILE
|
||||||
|
#for i in $(grep "^[a-zA-Z].*=" $LANGFILE | cut -f1 -d=); do
|
||||||
|
for i in $(awk -F= '{if (NF==2) print $1}' $LANGFILE); do
|
||||||
|
export $i
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
#/// Cargar API de funciones.
|
||||||
|
echo "$MSG_LOADAPI"
|
||||||
|
for i in $OGAPI/*.lib; do
|
||||||
|
source $i
|
||||||
|
done
|
||||||
|
for i in $(typeset -F | cut -f3 -d" "); do
|
||||||
|
export -f $i
|
||||||
|
done
|
||||||
|
# Carga de las API testing
|
||||||
|
if [ "$engine" = "testing" ]
|
||||||
|
then
|
||||||
|
for i in $OGAPI/*.testing; do
|
||||||
|
source $i
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
# Añadir dependencia de arquitectura
|
||||||
|
ARCH=$(ogGetArch)
|
||||||
|
if [ -n "$ARCH" ]; then
|
||||||
|
# export PATH=$OGBIN/$ARCH:$PATH
|
||||||
|
# export LD_LIBRARY_PATH=$OGLIB/$ARCH:$LD_LIBRARY_PATH
|
||||||
|
export PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin:/opt/og2fs/2ndfs/opt/drbl/sbin
|
||||||
|
export PATH=$OGSCRIPTS:$PATH:$OGAPI:$OGBIN:$OGBIN/$ARCH
|
||||||
|
fi
|
||||||
|
# Fichero de registros.
|
||||||
|
export OGLOGFILE="$OGLOG/$(ogGetIpAddress).log"
|
||||||
|
# FIXME Pruebas para grupos de ordenadores
|
||||||
|
#export OGGROUP=$(ogGetGroup)
|
||||||
|
export OGGROUP=aula3
|
||||||
|
fi
|
||||||
|
|
||||||
|
#/// Declaración de códigos de error.
|
||||||
|
export OG_ERR_FORMAT=1 # Formato de ejecución incorrecto.
|
||||||
|
export OG_ERR_NOTFOUND=2 # Fichero o dispositivo no encontrado.
|
||||||
|
export OG_ERR_PARTITION=3 # Error en partición de disco.
|
||||||
|
export OG_ERR_LOCKED=4 # Partición o fichero bloqueado.
|
||||||
|
export OG_ERR_IMAGE=5 # Error al crear o restaurar una imagen.
|
||||||
|
export OG_ERR_NOTOS=6 # Sin sistema operativo.
|
||||||
|
export OG_ERR_NOTEXEC=7 # Programa o función no ejecutable.
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,56 @@
|
||||||
|
|
||||||
|
# This is the ssh client system-wide configuration file. See
|
||||||
|
# ssh_config(5) for more information. This file provides defaults for
|
||||||
|
# users, and the values can be changed in per-user configuration files
|
||||||
|
# or on the command line.
|
||||||
|
|
||||||
|
# Configuration data is parsed as follows:
|
||||||
|
# 1. command line options
|
||||||
|
# 2. user-specific file
|
||||||
|
# 3. system-wide file
|
||||||
|
# Any configuration value is only changed the first time it is set.
|
||||||
|
# Thus, host-specific definitions should be at the beginning of the
|
||||||
|
# configuration file, and defaults at the end.
|
||||||
|
|
||||||
|
# Site-wide defaults for some commonly used options. For a comprehensive
|
||||||
|
# list of available options, their meanings and defaults, please see the
|
||||||
|
# ssh_config(5) man page.
|
||||||
|
|
||||||
|
Host *
|
||||||
|
# ForwardAgent no
|
||||||
|
# ForwardX11 no
|
||||||
|
# ForwardX11Trusted yes
|
||||||
|
# RhostsRSAAuthentication no
|
||||||
|
# RSAAuthentication yes
|
||||||
|
# PasswordAuthentication yes
|
||||||
|
HostbasedAuthentication no
|
||||||
|
# GSSAPIAuthentication no
|
||||||
|
# GSSAPIDelegateCredentials no
|
||||||
|
# GSSAPIKeyExchange no
|
||||||
|
# GSSAPITrustDNS no
|
||||||
|
# BatchMode no
|
||||||
|
# CheckHostIP yes
|
||||||
|
# AddressFamily any
|
||||||
|
# ConnectTimeout 0
|
||||||
|
# StrictHostKeyChecking ask
|
||||||
|
# IdentityFile ~/.ssh/identity
|
||||||
|
# IdentityFile ~/.ssh/id_rsa
|
||||||
|
# IdentityFile ~/.ssh/id_dsa
|
||||||
|
# Port 22
|
||||||
|
# Protocol 2,1
|
||||||
|
# Cipher 3des
|
||||||
|
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
|
||||||
|
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
|
||||||
|
# EscapeChar ~
|
||||||
|
# Tunnel no
|
||||||
|
# TunnelDevice any:any
|
||||||
|
# PermitLocalCommand no
|
||||||
|
# VisualHostKey no
|
||||||
|
SendEnv LANG LC_*
|
||||||
|
# HashKnownHosts yes
|
||||||
|
GSSAPIAuthentication yes
|
||||||
|
GSSAPIDelegateCredentials no
|
||||||
|
|
||||||
|
StrictHostKeyChecking no
|
||||||
|
UserKnownHostsFile=/dev/null
|
||||||
|
|
|
@ -0,0 +1,86 @@
|
||||||
|
# Package generated configuration file
|
||||||
|
# See the sshd_config(5) manpage for details
|
||||||
|
|
||||||
|
# What ports, IPs and protocols we listen for
|
||||||
|
Port 22
|
||||||
|
# Use these options to restrict which interfaces/protocols sshd will bind to
|
||||||
|
#ListenAddress ::
|
||||||
|
#ListenAddress 0.0.0.0
|
||||||
|
Protocol 2
|
||||||
|
# HostKeys for protocol version 2
|
||||||
|
HostKey /etc/ssh/ssh_host_rsa_key
|
||||||
|
HostKey /etc/ssh/ssh_host_dsa_key
|
||||||
|
#Privilege Separation is turned on for security
|
||||||
|
UsePrivilegeSeparation yes
|
||||||
|
|
||||||
|
# Lifetime and size of ephemeral version 1 server key
|
||||||
|
KeyRegenerationInterval 3600
|
||||||
|
ServerKeyBits 768
|
||||||
|
|
||||||
|
# Logging
|
||||||
|
SyslogFacility AUTH
|
||||||
|
LogLevel INFO
|
||||||
|
|
||||||
|
# Authentication:
|
||||||
|
LoginGraceTime 120
|
||||||
|
PermitRootLogin yes
|
||||||
|
StrictModes yes
|
||||||
|
|
||||||
|
RSAAuthentication yes
|
||||||
|
PubkeyAuthentication yes
|
||||||
|
#AuthorizedKeysFile %h/.ssh/authorized_keys
|
||||||
|
|
||||||
|
# Don't read the user's ~/.rhosts and ~/.shosts files
|
||||||
|
IgnoreRhosts yes
|
||||||
|
# For this to work you will also need host keys in /etc/ssh_known_hosts
|
||||||
|
RhostsRSAAuthentication no
|
||||||
|
# similar for protocol version 2
|
||||||
|
HostbasedAuthentication no
|
||||||
|
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
|
||||||
|
#IgnoreUserKnownHosts yes
|
||||||
|
|
||||||
|
# To enable empty passwords, change to yes (NOT RECOMMENDED)
|
||||||
|
PermitEmptyPasswords no
|
||||||
|
|
||||||
|
# Change to yes to enable challenge-response passwords (beware issues with
|
||||||
|
# some PAM modules and threads)
|
||||||
|
ChallengeResponseAuthentication no
|
||||||
|
|
||||||
|
# Change to no to disable tunnelled clear text passwords
|
||||||
|
#PasswordAuthentication yes
|
||||||
|
|
||||||
|
# Kerberos options
|
||||||
|
#KerberosAuthentication no
|
||||||
|
#KerberosGetAFSToken no
|
||||||
|
#KerberosOrLocalPasswd yes
|
||||||
|
#KerberosTicketCleanup yes
|
||||||
|
|
||||||
|
# GSSAPI options
|
||||||
|
#GSSAPIAuthentication no
|
||||||
|
#GSSAPICleanupCredentials yes
|
||||||
|
|
||||||
|
X11Forwarding yes
|
||||||
|
X11DisplayOffset 10
|
||||||
|
PrintMotd no
|
||||||
|
PrintLastLog yes
|
||||||
|
TCPKeepAlive yes
|
||||||
|
#UseLogin no
|
||||||
|
|
||||||
|
#MaxStartups 10:30:60
|
||||||
|
#Banner /etc/issue.net
|
||||||
|
|
||||||
|
# Allow client to pass locale environment variables
|
||||||
|
AcceptEnv LANG LC_*
|
||||||
|
|
||||||
|
Subsystem sftp /usr/lib/openssh/sftp-server
|
||||||
|
|
||||||
|
# Set this to 'yes' to enable PAM authentication, account processing,
|
||||||
|
# and session processing. If this is enabled, PAM authentication will
|
||||||
|
# be allowed through the ChallengeResponseAuthentication and
|
||||||
|
# PasswordAuthentication. Depending on your PAM configuration,
|
||||||
|
# PAM authentication via ChallengeResponseAuthentication may bypass
|
||||||
|
# the setting of "PermitRootLogin without-password".
|
||||||
|
# If you just want the PAM account and session checks to run without
|
||||||
|
# PAM authentication, then enable this but set PasswordAuthentication
|
||||||
|
# and ChallengeResponseAuthentication to 'no'.
|
||||||
|
UsePAM yes
|
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/bash
|
||||||
|
################################################################
|
||||||
|
##################### SOFTWARE #####################
|
||||||
|
################################################################
|
||||||
|
export LANGUAGE=C
|
||||||
|
export LC_ALL=C
|
||||||
|
export LANG=C
|
||||||
|
|
||||||
|
#dpkg-divert --local --rename --add /sbin/initctl
|
||||||
|
#ln -s /bin/true /sbin/initctl
|
||||||
|
|
||||||
|
apt-get -y update
|
||||||
|
# software to compile code
|
||||||
|
apt-get -y --force-yes install build-essential libattr* attr make m4 gettext libmhash-dev gdebi-core gawk
|
||||||
|
|
||||||
|
source /opt/opengnsys/lib/engine/bin/ToolsGNU.c
|
||||||
|
|
||||||
|
ctorrent install
|
||||||
|
udpcast install
|
||||||
|
#ntfs-3g install
|
||||||
|
ms-sys install
|
||||||
|
|
||||||
|
wget -O partclone_0.2.16_i386.deb http://downloads.sourceforge.net/project/partclone/stable/0.2.16/partclone_0.2.16_i386.deb?use_mirror=ovh
|
||||||
|
gdebi -n partclone_0.2.16_i386.deb
|
||||||
|
|
||||||
|
cd /tmp
|
||||||
|
wget http://damien.guibouret.free.fr/savepart.zip
|
||||||
|
unzip savepart.zip -d /sbin/
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
#!/bin/bash
|
||||||
|
dpkg-divert --local --rename --add /sbin/initctl
|
||||||
|
ln -s /bin/true /sbin/initctl
|
||||||
|
#mv /etc/fstab /etc/fstab.original 2>/dev/null
|
||||||
|
#mv /etc/mtab /etc/mtab.original 2>/dev/null
|
||||||
|
|
||||||
|
#TODO: fichero etc/hosts
|
||||||
|
#TODO: fichero etc/resolv.conf
|
||||||
|
echo "ogClient" > /etc/hostname
|
||||||
|
|
||||||
|
#export PASSROOT=og
|
||||||
|
#dpkg-reconfigure passwd
|
||||||
|
#echo "root:$PASSROOT" | chpasswd
|
||||||
|
|
||||||
|
|
||||||
|
#for i in pts/0 pts/1 pts/2 pts/3 do
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#done
|
||||||
|
#TODO: introducir mas consoluas para el acceso como root.
|
||||||
|
echo "pts/0" >> /etc/securetty
|
||||||
|
echo "pts/1" >> /etc/securetty
|
||||||
|
echo "pts/2" >> /etc/securetty
|
||||||
|
echo "pts/3" >> /etc/securetty
|
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/bash
|
||||||
|
export OSDISTRIB=$(lsb_release -i | awk -F: '{sub(/\t/,""); print $2}') 2>/dev/null
|
||||||
|
#OSCODENAME=$(lsb_release -c | awk -F: '{sub(/\t/,""); print $2}') 2>/dev/null
|
||||||
|
export OSCODENAME=$(cat /etc/lsb-release | grep CODENAME | awk -F= '{print $NF}')
|
||||||
|
export OSRELEASE=$(uname -a | awk '{print $3}')
|
||||||
|
uname -a | grep x86_64 > /dev/null && export OSARCH=amd64 || export OSARCH=i386
|
||||||
|
export OSHTTP="http://es.archive.ubuntu.com/ubuntu/"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
cd /usr/lib/initramfs-tools/bin/
|
||||||
|
rm *
|
||||||
|
cp /bin/busybox ./
|
||||||
|
cd /tmp/
|
||||||
|
mkinitramfs -o /tmp/initrd.img-$OSRELEASE -v $OSRELEASE
|
||||||
|
cp /boot/vmlinuz-$OSRELEASE /tmp
|
|
@ -0,0 +1,62 @@
|
||||||
|
#!/bin/bash
|
||||||
|
################################################################
|
||||||
|
##################### SOFTWARE #####################
|
||||||
|
################################################################
|
||||||
|
export LANGUAGE=C
|
||||||
|
export LC_ALL=C
|
||||||
|
export LANG=C
|
||||||
|
|
||||||
|
|
||||||
|
dpkg-divert --local --rename --add /sbin/initctl
|
||||||
|
ln -s /bin/true /sbin/initctl
|
||||||
|
|
||||||
|
apt-get clean
|
||||||
|
apt-get -y update
|
||||||
|
|
||||||
|
|
||||||
|
# software system
|
||||||
|
apt-get -y --force-yes install linux-image-${OSRELEASE} linux-headers-${OSRELEASE} linux-image-$RELEASE wget dialog man-db htop fbset gdebi-core busybox-static
|
||||||
|
|
||||||
|
apt-get -y --force-yes install console-data locales
|
||||||
|
|
||||||
|
# sofware networking
|
||||||
|
apt-get -y --force-yes install netpipes nfs-common sshfs smbfs smbclient davfs2 unionfs-fuse open-iscsi nmap tcpdump arping dnsutils
|
||||||
|
|
||||||
|
apt-get clean
|
||||||
|
# software services
|
||||||
|
apt-get -y --force-yes install openssh-server bittornado trickle iptraf screen schroot grub
|
||||||
|
|
||||||
|
# software disk and filesystem
|
||||||
|
apt-get -y --force-yes install drbl-ntfsprogs ntfsprogs parted ntfs-3g dosfstools
|
||||||
|
apt-get -y --force-yes install dmraid dmsetup lvm2 e2fsprogs jfsutils reiserfsprogs xfsprogs unionfs-fuse mhddfs squashfs-tools
|
||||||
|
apt-get -y --force-yes install btrfs-tools hfsplus hfsprogs hfsutils
|
||||||
|
|
||||||
|
# software cloning
|
||||||
|
apt-get -y --force-yes install drbl-partimage fsarchiver pv kexec-tools
|
||||||
|
apt-get -y --force-yes install mbuffer
|
||||||
|
|
||||||
|
|
||||||
|
apt-get clean
|
||||||
|
## software postconf
|
||||||
|
apt-get -y --force-yes install drbl-chntpw chntpw ethtool lshw gawk
|
||||||
|
|
||||||
|
# software compressor
|
||||||
|
apt-get -y --force-yes install lzma zip unzip gzip lzop drbl-lzop pigz pbzip2 lbzip2 rzip p7zip-full unzip
|
||||||
|
|
||||||
|
apt-get -y --force-yes remove busybox
|
||||||
|
apt-get -y --force-yes install busybox-static bash-static
|
||||||
|
apt-get clean
|
||||||
|
#apt-get -y --force-yes xorg-dev xorg lxde roxterm
|
||||||
|
#
|
||||||
|
####################################################################
|
||||||
|
###################### Reconfigurando paquetes ######################
|
||||||
|
###################################################################
|
||||||
|
|
||||||
|
|
||||||
|
#dpkg-reconfigure console-data
|
||||||
|
#dpkg-reconfigure console-setup
|
||||||
|
#dpkg-reconfigure locales
|
||||||
|
apt-get clean
|
||||||
|
##TODO################# Borrar algunos binarios del mkinitramfs
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
dpkg-reconfigure console-data
|
||||||
|
dpkg-reconfigure console-setup
|
||||||
|
dpkg-reconfigure locales
|
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
echo "comprobando directorio .ssh del root"
|
||||||
|
if [ ! -d /root/.ssh ]
|
||||||
|
then
|
||||||
|
echo "creando directorio .ssh 600"
|
||||||
|
mkdir -p /root/.ssh
|
||||||
|
chmod 700 /root/.ssh
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "comprobando el fichero authorized_keys .ssh del root"
|
||||||
|
if [ ! -f /root/.ssh/authorized_keys ]
|
||||||
|
then
|
||||||
|
echo "creando el fichero authorized_keys"
|
||||||
|
touch /root/.ssh/authorized_keys
|
||||||
|
chmod 600 /root/.ssh/authorized_keys
|
||||||
|
fi
|
||||||
|
|
||||||
|
ssh-keygen -q -f /root/.ssh/id_rsa -N ""
|
||||||
|
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
|
||||||
|
|
||||||
|
## TODO: exportamos la publica a los repos
|
||||||
|
cp /root/.ssh/id_rsa.pub /tmp/rsa.ogclient.pub
|
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/bash
|
||||||
|
echo "comprobando directorio .ssh del root"
|
||||||
|
if [ ! -d /root/.ssh ]
|
||||||
|
then
|
||||||
|
echo "creando directorio .ssh 600"
|
||||||
|
mkdir -p /root/.ssh
|
||||||
|
chmod 700 /root/.ssh
|
||||||
|
fi
|
||||||
|
echo "creando el fichero authorized_keys"
|
||||||
|
touch /root/.ssh/authorized_keys
|
||||||
|
chmod 600 /root/.ssh/authorized_keys
|
||||||
|
|
||||||
|
echo "importando la clave publica del servidor OG"
|
||||||
|
cat /tmp/id_rsa.pub
|
||||||
|
|
||||||
|
[ -f /tmp/id_rsa.pub ] && cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys || echo "no key publica og"
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
#/bin/bash
|
||||||
|
|
||||||
|
mount -o rw,remount /
|
||||||
|
mount proc /proc -t proc
|
||||||
|
export PATH=$PATH dpkg -i *.deb
|
||||||
|
modprobe 8139too
|
||||||
|
modprobe 8139cp
|
||||||
|
dhclient
|
||||||
|
/etc/init.d/ssh restart
|
|
@ -0,0 +1,5 @@
|
||||||
|
es_ES ISO-8859-1
|
||||||
|
es_ES@euro ISO-8859-15
|
||||||
|
es_ES.UTF-8 UTF-8
|
||||||
|
es_ES.UTF-8@euro UTF-8
|
||||||
|
en_US.UTF-8 UTF-8
|
Loading…
Reference in New Issue