update rootfs
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
#--- import colors ---
|
||||
. /etc/init.d/colors.sh
|
||||
. /etc/init.d/funcs/colors.sh
|
||||
#---------------------
|
||||
|
||||
#---------------------- rc function to poweron or poweroff ------------
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/init.d/colors.sh
|
||||
. /etc/init.d/init-funcs
|
||||
. /etc/init.d/funcs/colors.sh
|
||||
. /etc/init.d/funcs/init-funcs
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/init.d/init-funcs
|
||||
. /etc/init.d/colors.sh
|
||||
. /etc/init.d/funcs/init-funcs
|
||||
. /etc/init.d/funcs/colors.sh
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
@@ -14,7 +14,9 @@ case "$1" in
|
||||
printf "$UYELLOW Stopping netowrking\n$RESET"
|
||||
/sbin/ifdown -a
|
||||
check $? "Stop networking"
|
||||
rm /var/run/networking.pid
|
||||
if [ -f /var/run/networking.pid ]; then
|
||||
rm /var/run/networking.pid
|
||||
fi
|
||||
;;
|
||||
restart|reload)
|
||||
$0 stop
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
#!/bin/sh
|
||||
. /etc/init.d/init-funcs
|
||||
. /etc/init.d/funcs/init-funcs
|
||||
rc
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/init.d/init-funcs
|
||||
. /etc/init.d/colors.sh
|
||||
. /etc/init.d/funcs/init-funcs
|
||||
. /etc/init.d/funcs/colors.sh
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
nameserver 10.0.2.3
|
||||
Executable
+287
@@ -0,0 +1,287 @@
|
||||
#!/bin/sh
|
||||
|
||||
########## #### ####
|
||||
########## #### ####
|
||||
## ## ## ## ## ##
|
||||
## ## ## ## ## ##
|
||||
########## ## ## ## - PACKAGE MANAGER FOR SIMPLE LINUX
|
||||
########## ## ## ## - AUTHOR -- TOLA MIRONCENKO
|
||||
## ## ##
|
||||
## ## ##
|
||||
## ## ##
|
||||
## ## ##
|
||||
|
||||
#----- colors -------
|
||||
Green='\033[0;32m'
|
||||
Color_off='\033[0m'
|
||||
Red='\033[0;31m'
|
||||
Bred='\033[1;31m'
|
||||
Yellow='\033[1;33m'
|
||||
White='\033[0;37m'
|
||||
Bwhite='\033[1;37m'
|
||||
#--------------------
|
||||
|
||||
#---------------- variables --------------------------
|
||||
rootdir=/
|
||||
repofile=$rootdir/etc/pm/repo
|
||||
packagesqueryfile=$rootdir/usr/share/pm/query
|
||||
reposquerydir=$rootdir/usr/share/pm/repos
|
||||
cachedpkgdir=$rootdir/var/cache/pm/pkg
|
||||
installedpackagesdir=$rootdir/usr/share/pm/packages
|
||||
#-----------------------------------------------------
|
||||
|
||||
#---------------- check root priveleges function ------------------------
|
||||
checkroot() {
|
||||
if [[ $(id -u) != 0 ]]; then
|
||||
printf "$Yellow**$Bred error:$Color_off you must be root\n"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
checkroot
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#----------------- add(install) package function ------------------------
|
||||
add() {
|
||||
if [[ "$1" == "" ]]; then
|
||||
help
|
||||
exit 0
|
||||
fi
|
||||
for i in $*; do
|
||||
if [[ "$i" == "add" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
done
|
||||
for i in $*; do
|
||||
if [[ "$i" == "add" ]]; then
|
||||
continue
|
||||
fi
|
||||
down $i
|
||||
done
|
||||
for i in $*; do
|
||||
if [[ "$i" == "add" ]]; then
|
||||
continue
|
||||
fi
|
||||
unpack $cachedpkgdir/$i.pkg.gz
|
||||
done
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#-------------------- download package without install function ---------
|
||||
down() {
|
||||
if [[ ! $1 ]]; then
|
||||
help
|
||||
exit 0
|
||||
fi
|
||||
servers=$(cat $repofile)
|
||||
for i in $servers; do
|
||||
serverdir=$(echo $i | sed -e "/http:\/\//s///")
|
||||
repoquery=$(cat $reposquerydir/$serverdir/query | sed -e '/.pkg.gz/s///')
|
||||
for j in $repoquery; do
|
||||
if [[ $j == $1 ]]; then
|
||||
if [ ! -f $cachedpkgdir/$1.pkg.gz ]; then
|
||||
printf "$Yellow**$Color_off Downloading $Yellow$serverdir: $Bwhite$j\n$Color_off"
|
||||
wget $i/$1.pkg.gz -P $cachedpkgdir
|
||||
if [[ "$?" == "0" ]]; then
|
||||
printf "$Yellow**$Green successful downloaded $1\n$Color_off"
|
||||
return
|
||||
else
|
||||
printf "$Yellow**$Red error:$Color_off can't download package\n"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
printf "$Yellow**$Green successful downloaded $1\n$Color_off"
|
||||
return
|
||||
fi
|
||||
# exit 0
|
||||
fi
|
||||
done
|
||||
done
|
||||
printf "$Yellow**$Red error:$Color_off can't find package $1\n"
|
||||
exit 1
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#-------------------- unpack local package archive ----------------------
|
||||
unpack() {
|
||||
packagename=$(echo $1 | sed -e "/.gz/s///")
|
||||
packagename=${packagename#*pkg/}
|
||||
printf "$Yellow**$Green Installing ${packagename%.pkg*}\n$Color_off"
|
||||
if [[ "$(cat $packagesqueryfile | grep ${packagename%.pkg*})" != "" ]]; then
|
||||
printf "$Yellow**$Color_off Package already installed:$Yellow reinstalling\n"
|
||||
fi
|
||||
tar -xvf $1 -C $rootdir/tmp &> /dev/null
|
||||
cd $rootdir/tmp/$packagename
|
||||
mkdir $installedpackagesdir/$packagename &> /dev/null
|
||||
mv -v list $installedpackagesdir/$packagename &> /dev/null
|
||||
cp -rv ./* $rootdir &> /dev/null
|
||||
if [ -f $rootdir/tmp/$packagename/post_install ]; then
|
||||
sh -c $rootdir/tmp/$packagename/post_install
|
||||
fi
|
||||
if [[ "$(cat $packagesqueryfile | grep ${packagename%.pkg*})" == "" ]]; then
|
||||
echo ${packagename%.pkg*} >> $packagesqueryfile
|
||||
fi
|
||||
rm -rv $rootdir/tmp/$packagename &> /dev/null
|
||||
printf "$Yellow**$Green Installed ${packagename%.pkg*} successful\n$Color_off"
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#------------------ delete package function -----------------------------
|
||||
del() {
|
||||
printf "$Yellow**$Green deleting\n$Color_off"
|
||||
for i in $*; do
|
||||
if [[ "$i" == "del" ]]; then
|
||||
continue
|
||||
fi
|
||||
printf "$Yellow**$Green deleting $i\n$Color_off"
|
||||
if [ ! -f $installedpackagesdir/$i.pkg/list ]; then
|
||||
printf "$Yellow**$Bred error:$Color_off package not installed\n"
|
||||
exit 0
|
||||
fi
|
||||
rm -v $rootdir/$(cat $installedpackagesdir/$i.pkg/list) &> /dev/null
|
||||
rm -rv $installedpackagesdir/$i.pkg &> /dev/null
|
||||
sed -i "/$i/d" $packagesqueryfile
|
||||
printf "$Yellow**$Green delete $i successful\n$Color_off"
|
||||
done
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#------------------- list files in package function ---------------------
|
||||
list() {
|
||||
if [[ "$1" == "" ]]; then
|
||||
help
|
||||
exit 0
|
||||
fi
|
||||
if [[ "$(cat $packagesqueryfile | grep $1)" == "" ]]; then
|
||||
printf "$Yellow**$Bred error:$Color_off package is not installed\n"
|
||||
exit 1
|
||||
fi
|
||||
filelist=$(cat $installedpackagesdir/$1.pkg/list)
|
||||
for i in $filelist; do
|
||||
printf "$Yellow$1: $Bwhite$i$Color_off\n"
|
||||
done
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#------------------- show installed packages function -------------------
|
||||
query() {
|
||||
packagesquery=$(cat $packagesqueryfile)
|
||||
if [[ "$packagesquery" == "" ]]; then
|
||||
printf "$Yellow**$Bwhite No installed packages\n"
|
||||
exit 0
|
||||
fi
|
||||
printf "$packagesquery\n"
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#--------------------- show help function -------------------------------
|
||||
help() {
|
||||
printf "
|
||||
$Yellow**$Green pm usage$Color_off :
|
||||
$Bwhite pm add [package name] - download and install from repository
|
||||
pm unpack [/path/to/package/archive] - unpack(install) from local package archive
|
||||
pm down [package name] - download package from repository without install
|
||||
pm del [package name] - delete package
|
||||
pm list [package name] - list files in package
|
||||
pm search [package name] - search package in repository
|
||||
pm query - show installed packages
|
||||
pm help - this help message
|
||||
pm clear - clear all package archives from cached packages directory
|
||||
pm sync - synchronize repository
|
||||
|
||||
$Yellow**$Green examples$Color_off :
|
||||
$Bwhite pm add dnsmasq
|
||||
pm unpack ./dnsmasq.pkg.gz
|
||||
pm down dnsmasq
|
||||
pm search dnsmasq
|
||||
pm help
|
||||
pm clear
|
||||
pm sync
|
||||
pm del dnsmasq
|
||||
pm list dnsmasq
|
||||
pm query
|
||||
\n$Color_off"
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#------------------- sync repo function ---------------------------------
|
||||
sync() {
|
||||
servers=$(cat $repofile)
|
||||
for i in $servers; do
|
||||
serverdir=$(echo $i | sed -e "/http:\//s///")
|
||||
mkdir $reposquerydir/$serverdir &> /dev/null
|
||||
wget $i/query -O $reposquerydir/$serverdir/query &> /dev/null
|
||||
done
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#----------------- search package in repo function ----------------------
|
||||
search() {
|
||||
servers=$(cat $repofile)
|
||||
if [[ ! $1 ]]; then
|
||||
for i in $servers; do
|
||||
serverdir=$(echo $i | sed -e "/http:\/\//s///")
|
||||
repoquery=$(cat $reposquerydir/$serverdir/query | sed -e '/.pkg.gz/s///')
|
||||
for j in $repoquery; do
|
||||
printf "$Yellow$serverdir: $Bwhite$j\n$Color_off"
|
||||
done
|
||||
done
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for i in $servers; do
|
||||
serverdir=$(echo $i | sed -e "/http:\/\//s///")
|
||||
repoquery=$(cat $reposquerydir/$serverdir/query | sed -e '/.pkg.gz/s///')
|
||||
for j in $repoquery; do
|
||||
if [[ $j == $1 ]]; then
|
||||
printf "$Yellow$serverdir: $Bwhite$j\n$Color_off"
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
done
|
||||
printf "$Yellow**$Red error:$Color_off can't find package ($1)\n"
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
#------------------- clear cached packages directory --------------------
|
||||
clear() {
|
||||
rm -v $cachedpkgdir/*
|
||||
}
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
case "$1" in
|
||||
add)
|
||||
add $*
|
||||
;;
|
||||
down)
|
||||
down $2
|
||||
;;
|
||||
unpack)
|
||||
unpack $2
|
||||
;;
|
||||
del)
|
||||
del $*
|
||||
;;
|
||||
list)
|
||||
list $2
|
||||
;;
|
||||
query)
|
||||
query
|
||||
;;
|
||||
help)
|
||||
help
|
||||
;;
|
||||
sync)
|
||||
sync
|
||||
;;
|
||||
search)
|
||||
search $2
|
||||
;;
|
||||
clear)
|
||||
clear
|
||||
;;
|
||||
*)
|
||||
help
|
||||
;;
|
||||
esac
|
||||
Executable
+174
@@ -0,0 +1,174 @@
|
||||
#!/bin/sh
|
||||
|
||||
########## ##########
|
||||
########## ##########
|
||||
## ## ##
|
||||
## ##
|
||||
## ## - RC BOOT SCRIPTS MANAGER FOR SIMPLE LINUX
|
||||
## ## - AUTHOR -- TOLA MIRONCENKO
|
||||
## ##
|
||||
## ##
|
||||
## ##########
|
||||
## ##########
|
||||
|
||||
#----- colors -------
|
||||
Green='\033[0;32m'
|
||||
Color_off='\033[0m'
|
||||
Red='\033[0;31m'
|
||||
Bred='\033[1;31m'
|
||||
Yellow='\033[1;33m'
|
||||
White='\033[0;37m'
|
||||
Bwhite='\033[1;37m'
|
||||
#--------------------
|
||||
|
||||
rootdir=/
|
||||
|
||||
#------------------------ add to boot function --------------
|
||||
add() {
|
||||
resultlink=$(cat /usr/share/rc/ordernumbers | grep $1)
|
||||
if [ -f /etc/init.d/$1 ] && [ $resultlink ]; then
|
||||
cd /etc/rc.d
|
||||
ln -sv ../init.d/$1 "$resultlink" &> /dev/null
|
||||
echo "added $1 to init."
|
||||
else
|
||||
help
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#--------------------- del from boot function ---------------
|
||||
del() {
|
||||
filetoremove=$(find /etc/rc.d/ | grep $1 )
|
||||
if [ $filetoremove ]; then
|
||||
rm -v $filetoremove &> /dev/null
|
||||
echo "removed $1 from init."
|
||||
else
|
||||
help
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#---------------------- start daemon function ---------------
|
||||
start() {
|
||||
if [ -f /etc/init.d/$1 ]; then
|
||||
/etc/init.d/$1 start
|
||||
else
|
||||
help
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#---------------- stop daemon function ----------------------
|
||||
stop() {
|
||||
if [ -f /etc/init.d/$1 ]; then
|
||||
/etc/init.d/$1 stop
|
||||
else
|
||||
help
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#------------- restart daemon function ----------------------
|
||||
restart() {
|
||||
if [ -f /etc/init.d/$1 ]; then
|
||||
/etc/init.d/$1 restart
|
||||
else
|
||||
help
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#------------------ list services ---------------------------
|
||||
list() {
|
||||
ls --color $rootdir/etc/init.d
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#------------------ list enabled services -------------------
|
||||
bootlist() {
|
||||
ls --color $rootdir/etc/rc.d
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#------------------ service status --------------------------
|
||||
status() {
|
||||
if [[ "$1" == "" ]]; then
|
||||
help
|
||||
exit 0
|
||||
fi
|
||||
if [[ "$(ls /etc/init.d | grep $1)" == "" ]]; then
|
||||
printf "$Yellow**$Bred error:$Color_off can't find service /etc/init.d/$1\n"
|
||||
exit 1
|
||||
fi
|
||||
printf "$Yellow**$Green $1$Color_off\n"
|
||||
rcdservice=$(ls $rootdir/etc/rc.d | grep $1 2> /dev/null)
|
||||
if [[ "$rcdservice" == "" ]]; then
|
||||
printf "Loaded:$Yellow unloaded$Color_off (/etc/rc.d)\n"
|
||||
else
|
||||
printf "Loaded:$Green loaded$Color_off (/etc/rc.d/$rcdservice)\n"
|
||||
fi
|
||||
servicepid=$(ls $rootdir/var/run | grep $1)
|
||||
if [[ "$servicepid" == "" ]]; then
|
||||
printf "Active: deactive (${Yellow}deactive$Color_off)\n"
|
||||
else
|
||||
printf "Active: active (${Green}running$Color_off); pid (/var/run/$servicepid)\n"
|
||||
fi
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
#-------------- print help function -------------------------
|
||||
help() {
|
||||
echo "
|
||||
** rc usage:
|
||||
rc add [init.d script name] - add service on boot
|
||||
rc del [init.d script name] - delete service from boot
|
||||
rc start [init.d script name] - start service
|
||||
rc stop [init.d script name] - stop service
|
||||
rc restart [init.d script name] - restart service
|
||||
rc list - list all services
|
||||
rc bootlist - list enabled services
|
||||
rc status [init.d script name] - check service status
|
||||
|
||||
examples:
|
||||
rc add httpd
|
||||
rc del httpd
|
||||
rc start httpd
|
||||
rc stop httpd
|
||||
rc restart httpd
|
||||
rc list
|
||||
rc bootlist
|
||||
"
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
|
||||
command="$1"
|
||||
|
||||
case ${command} in
|
||||
add)
|
||||
add $2 $3
|
||||
;;
|
||||
del)
|
||||
del $2
|
||||
;;
|
||||
start)
|
||||
start $2
|
||||
;;
|
||||
stop)
|
||||
stop $2
|
||||
;;
|
||||
restart)
|
||||
restart $2
|
||||
;;
|
||||
list)
|
||||
list
|
||||
;;
|
||||
bootlist)
|
||||
bootlist
|
||||
;;
|
||||
status)
|
||||
status $2
|
||||
;;
|
||||
*)
|
||||
help
|
||||
;;
|
||||
esac
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/init.d/colors.sh
|
||||
. /etc/init.d/funcs/colors.sh
|
||||
|
||||
[ -z "$1" ] && printf "$URED** ERROR: should be called from udhcpc\n$RESET" && exit 1
|
||||
RESOLF_CONF="/etc/resolv.conf"
|
||||
|
||||
Reference in New Issue
Block a user