1 |
# $Id$ |
# $Id$ |
2 |
|
|
3 |
provide basic-system |
provide basic-system |
4 |
|
require basic-init |
5 |
|
|
6 |
help_system_reboot() |
help_system_reboot() |
7 |
{ |
{ |
24 |
# set_system_shutdown |
# set_system_shutdown |
25 |
set_system_shutdown() |
set_system_shutdown() |
26 |
{ |
{ |
27 |
halt |
poweroff |
28 |
} |
} |
29 |
|
|
30 |
help_system_console() |
help_system_console() |
32 |
mecho "set system.console [user]" |
mecho "set system.console [user]" |
33 |
mecho " Opens a console with user or root privileges." |
mecho " Opens a console with user or root privileges." |
34 |
mecho " Known users:" |
mecho " Known users:" |
35 |
mecho " mcore - mcore standard user only with user privileges" |
mecho " ${MCORE_UNPRIV_USER} - mcore standard user only with user privileges" |
36 |
mecho " root - mcore root user with full system privileges" |
mecho " root - mcore root user with full system privileges" |
37 |
} |
} |
38 |
|
|
|
help_system_passwd() |
|
|
{ |
|
|
mecho "set system.passwd [user] [password]" |
|
|
mecho " Sets a system password for given user." |
|
|
mecho " Allowed users: mcore, root" |
|
|
mecho " If password is empty, the current password will be deleted." |
|
|
} |
|
|
|
|
39 |
help_system_autologon() |
help_system_autologon() |
40 |
{ |
{ |
41 |
mecho "get system.autologon" |
mecho "get system.autologon" |
54 |
[[ -z ${user} ]] && help_system_console && return 1 |
[[ -z ${user} ]] && help_system_console && return 1 |
55 |
|
|
56 |
case "${user}" in |
case "${user}" in |
57 |
mcore) x11runas "rxvt &" ;; |
${MCORE_UNPRIV_USER}) x11runas "rxvt &" ;; |
58 |
root) x11runas "rxvt -T 'Login as root' -e /bin/bash -c 'echo \"Login as root\";exec /bin/login root' &" ;; |
root) x11runas "rxvt -T 'Login as root' -e /bin/bash -c 'echo \"Login as root\";exec /bin/login root' &" ;; |
59 |
*) help_system_console && return 1 ;; |
*) help_system_console && return 1 ;; |
60 |
esac |
esac |
62 |
|
|
63 |
help_system_service() |
help_system_service() |
64 |
{ |
{ |
65 |
|
mecho "get system.service [command] [service]" |
66 |
|
mecho " Status information of system services." |
67 |
|
mecho " Commands:" |
68 |
|
mecho " status - prints status of given service" |
69 |
|
mecho " enabled - check whether a service was enabled" |
70 |
|
mecho " runlevel - print current system runlevel" |
71 |
|
mecho |
72 |
mecho "set system.service [command] [service] [opts]" |
mecho "set system.service [command] [service] [opts]" |
73 |
mecho " Controls system services." |
mecho " Controls system services." |
74 |
mecho " Commands:" |
mecho " Commands:" |
75 |
mecho " start - starts given service" |
mecho " start - starts given service" |
76 |
mecho " stop - stops given service" |
mecho " stop - stops given service" |
77 |
mecho " restart - restart given service" |
mecho " restart - restart given service" |
78 |
mecho " reload - reloads given service if possible" |
mecho " reload - reloads given service if possible" |
79 |
mecho " add - adds a service to default runlevels" |
mecho " add - adds a service to default runlevels" |
80 |
mecho " del - deletes a service from all runlevels" |
mecho " del - deletes a service from all runlevels" |
81 |
} |
} |
82 |
|
|
83 |
set_system_service() |
help_system_passwd() |
84 |
{ |
{ |
85 |
local command="$1" |
mecho "set system.passwd [user] [password]" |
86 |
local service="$2" |
mecho " Sets a system password for given user." |
87 |
local opts="$3" |
mecho " Allowed users: ${MCORE_UNPRIV_USER}, root" |
88 |
|
mecho " If password is empty, the current password will be deleted." |
|
[[ -z ${command} ]] && help_system_service && return 1 |
|
|
[[ -z ${service} ]] && help_system_service && return 1 |
|
|
|
|
|
if [[ ! -x /etc/rc.d/init.d/${service} ]] |
|
|
then |
|
|
mecho "Service '${service}' unkown!" |
|
|
fi |
|
|
|
|
|
case "${command}" in |
|
|
start) /etc/rc.d/init.d/"${service}" start ;; |
|
|
stop) /etc/rc.d/init.d/"${service}" stop ;; |
|
|
restart) /etc/rc.d/init.d/"${service}" restart ;; |
|
|
reload) /etc/rc.d/init.d/"${service}" reload ;; |
|
|
add) rc-config add "${service}" ;; |
|
|
del) rc-config del "${service}" ;; |
|
|
*) help_system_service && return ;; |
|
|
esac |
|
89 |
} |
} |
90 |
|
|
91 |
set_system_passwd() |
set_system_passwd() |
97 |
[[ -z ${pass} ]] && mecho "deleting password!" |
[[ -z ${pass} ]] && mecho "deleting password!" |
98 |
|
|
99 |
case "${user}" in |
case "${user}" in |
100 |
root|mcore) (echo "${pass}"; sleep 0.1; echo "${pass}") | passwd "${user}" ;; |
root|${MCORE_UNPRIV_USER}) (echo "${pass}"; sleep 0.1; echo "${pass}") | passwd "${user}" ;; |
101 |
*) help_system_passwd && return 1 ;; |
*) help_system_passwd && return 1 ;; |
102 |
esac |
esac |
103 |
} |
} |
129 |
{ |
{ |
130 |
local tty |
local tty |
131 |
tty="$(fgconsole)" |
tty="$(fgconsole)" |
132 |
mecho "${tty}" |
rvecho "${tty}" |
133 |
} |
} |
134 |
|
|
135 |
get_system_autologon() |
get_system_autologon() |
137 |
local var |
local var |
138 |
var=$(grep auto_login /etc/slim.conf | sed 's:auto_login.*\([yn].*\):\1:') |
var=$(grep auto_login /etc/slim.conf | sed 's:auto_login.*\([yn].*\):\1:') |
139 |
case "${var}" in |
case "${var}" in |
140 |
yes) mecho "autologon currently enabled" ;; |
yes) mecho "autologon currently enabled"; rvecho "1" ;; |
141 |
no) mecho "autologon currently disabled" ;; |
no) mecho "autologon currently disabled"; rvecho "0" ;; |
142 |
*) eecho "unkown state" ;; |
*) eecho "unkown state" ;; |
143 |
esac |
esac |
144 |
} |
} |
145 |
|
|
146 |
set_system_autologon() |
set_system_autologon() |
147 |
{ |
{ |
148 |
local action |
local action="$1" |
149 |
[[ -z ${action} ]] && help_system_autologon && return 1 |
[[ -z ${action} ]] && help_system_autologon && return 1 |
150 |
|
|
151 |
## splash X11 tty too? |
## splash X11 tty too? |
152 |
|
|
153 |
case "${action}" in |
case "${action}" in |
154 |
enable) |
enable) |
155 |
sed 's:^auto_login.*:\1\tyes' /etc/slim.conf |
sed -i 's:^\(auto_login\).*:\1\tyes:' /etc/slim.conf |
156 |
mecho "autologon enabled" |
mecho "autologon enabled" |
157 |
;; |
;; |
158 |
disable) |
disable) |
159 |
sed 's:^auto_login.*:\1\tno' /etc/slim.conf |
sed -i 's:^\(auto_login\).*:\1\tno:' /etc/slim.conf |
160 |
mecho "autologon disabled" |
mecho "autologon disabled" |
161 |
;; |
;; |
162 |
*) help_system_autologon && return 1 ;; |
*) help_system_autologon && return 1 ;; |