From 2b3284e02567cbf93a3a0af801d0e1027e8f4d5b Mon Sep 17 00:00:00 2001 From: Sebastian Schmelzer Date: Wed, 27 Jun 2012 17:30:48 +0200 Subject: add helper for testsetup --- inc/env.setup-sqfs-base.sh | 17 ++++++++++++ share/files/debug-shell.service | 26 ++++++++++++++++++ share/files/helper | 31 +++++++++++++++++++++ share/files/profile | 61 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 135 insertions(+) create mode 100644 share/files/debug-shell.service create mode 100644 share/files/helper create mode 100644 share/files/profile diff --git a/inc/env.setup-sqfs-base.sh b/inc/env.setup-sqfs-base.sh index dfae1bf..b0dce63 100755 --- a/inc/env.setup-sqfs-base.sh +++ b/inc/env.setup-sqfs-base.sh @@ -61,3 +61,20 @@ if [ ! -f .osib_patched ]; then done touch .osib_patched fi + +cp ${ROOT_DIR}/share/files/*.service etc/systemd/system/ +ln -sf ../debug-shell.service etc/systemd/system/sysinit.target.wants/ +ln -sf /usr/lib/systemd/system/getty\@.service etc/systemd/system/getty.target.wants/getty\@tty2.service +ln -sf /usr/lib/systemd/system/getty\@.service etc/systemd/system/getty.target.wants/getty\@tty3.service +ln -sf /usr/lib/systemd/system/getty\@.service etc/systemd/system/getty.target.wants/getty\@tty4.service +ln -sf /usr/lib/systemd/system/getty\@.service etc/systemd/system/getty.target.wants/getty\@tty5.service +ln -sf /usr/lib/systemd/system/getty\@.service etc/systemd/system/getty.target.wants/getty\@tty6.service + + +ln -sf /openslx/bin/login bin/login +ln -sf /openslx/bin/sh bin/sh +ln -sf /openslx/bin/hostname bin/hostname + +cp ${ROOT_DIR}/share/files/profile etc +cp ${ROOT_DIR}/share/files/helper helper +chmod +x helper diff --git a/share/files/debug-shell.service b/share/files/debug-shell.service new file mode 100644 index 0000000..6117595 --- /dev/null +++ b/share/files/debug-shell.service @@ -0,0 +1,26 @@ +[Unit] +Description=early root shell on tty9 for debugging +DefaultDependencies=no +IgnoreOnIsolate=yes + +[Service] +Environment=TERM=linux +# /bin/bash could be used, but sushell ensures the correct SELinux context +ExecStart=/openslx/bin/sh +Restart=always +RestartSec=0 +StandardInput=tty +TTYPath=/dev/tty9 +TTYReset=yes +TTYVHangup=yes +KillMode=process +IgnoreSIGPIPE=no +# bash ignores SIGTERM +KillSignal=SIGHUP + +# Unset locale for the console getty since the console has problems +# displaying some internationalized messages. +Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION= + +[Install] +WantedBy=sysinit.target diff --git a/share/files/helper b/share/files/helper new file mode 100644 index 0000000..ef6a125 --- /dev/null +++ b/share/files/helper @@ -0,0 +1,31 @@ +#!/bin/sh + +#TODO +ip link set dev eth0 up +echo enter ip address +read ip +gw=${ip%\.*}.254 +ip a a $ip/24 dev eth0 + +ip route add default via $gw +echo "nameserver 132.230.200.200" >> /etc/resolv.conf + +modprobe dnbd3 +dnbd3-client 132.230.4.1 12 1 /dev/dnbd0 + +mount /dev/dnbd0 /mnt + +cp /mnt/etc/passwd /etc +cp /mnt/etc/group /etc +cp /mnt/etc/shadow /etc +cp /mnt/etc/ld* /etc + +echo "add dummy user" +adduser openslx +passwd openslx + +echo "append rootfs" +mount -o remount,append:/mnt / + +ldconfig +ln -sf /bin/dash /bin/sh diff --git a/share/files/profile b/share/files/profile new file mode 100644 index 0000000..dee4f96 --- /dev/null +++ b/share/files/profile @@ -0,0 +1,61 @@ +# ~/.bashrc: executed by bash(1) for non-login interactive shells. + +export PATH=\ +/bin:\ +/sbin:\ +/usr/bin:\ +/usr/sbin:\ +/usr/bin/X11:\ +/usr/local/bin:\ +/openslx/bin:\ +/openslx/sbin:\ +/openslx/usr/bin:\ +/openslx/usr/sbin:\ +/openslx/usr/bin/X11:\ +/openslx/usr/local/bin + +# If running interactively, then: +if [ "$PS1" ]; then + + if [ "$BASH" ]; then + export PS1="[\u@\h \W]\\$ " + alias ll='/bin/ls --color=tty -laFh' + alias ls='/bin/ls --color=tty -F' + export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.png=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:'; + else + if [ "`id -u`" -eq 0 ]; then + export PS1='# ' + else + export PS1='$ ' + fi + fi + + export USER=`id -un` + export LOGNAME=$USER + export HOSTNAME=`/bin/hostname` + export HISTSIZE=1000 + export HISTFILESIZE=1000 + export PAGER='/bin/more ' + export EDITOR='/bin/vi' + export INPUTRC=/etc/inputrc + export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile + + ### Some aliases + alias ps2='ps facux ' + alias ps1='ps faxo "%U %t %p %a" ' + alias af='ps af' + alias cls='clear' + alias df='df -h' + alias indent='indent -bad -bap -bbo -nbc -br -brs -c33 -cd33 -ncdb -ce -ci4 -cli0 -cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs -npsl -nsc -nsob -nss -ts4 ' + #alias bc='bc -l' + alias minicom='minicom -c on' + alias calc='calc -Cd ' + alias bc='calc -Cd ' +fi; + +# Source configuration files from /etc/profile.d +for i in /etc/profile.d/*.sh ; do + if [ -r "$i" ]; then + . $i + fi +done -- cgit v1.2.3-55-g7522