Magellan Linux

Diff of /mcore-src/trunk/mcore-tools/src/modules/basic-system/system.client.class.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1248 by niro, Wed Feb 2 20:20:24 2011 UTC revision 2037 by niro, Wed Apr 17 14:14:35 2013 UTC
# Line 5  provide basic-system Line 5  provide basic-system
5  help_system_reboot()  help_system_reboot()
6  {  {
7   mecho "set system.reboot"   mecho "set system.reboot"
8   mecho " reboots the system."   mecho " Reboots the system."
9  }  }
10    
11  # set_system_reboot  # set_system_reboot
# Line 17  set_system_reboot() Line 17  set_system_reboot()
17  help_system_shutdown()  help_system_shutdown()
18  {  {
19   mecho "set system.shutdown"   mecho "set system.shutdown"
20   mecho " shuts the system down."   mecho " Shuts the system down."
21  }  }
22    
23  # set_system_shutdown  # set_system_shutdown
# Line 28  set_system_shutdown() Line 28  set_system_shutdown()
28    
29  help_system_console()  help_system_console()
30  {  {
31   mecho "set system.console"   mecho "set system.console [user]"
32   mecho " opens a console with user privileges."   mecho " Opens a console with user or root privileges."
33     mecho " Known users:"
34     mecho "   ${MCORE_UNPRIV_USER}  - mcore standard user only with user privileges"
35     mecho "   root   - mcore root user with full system privileges"
36    }
37    
38    help_system_passwd()
39    {
40     mecho "set system.passwd [user] [password]"
41     mecho " Sets a system password for given user."
42     mecho "  Allowed users: ${MCORE_UNPRIV_USER}, root"
43     mecho "  If password is empty, the current password will be deleted."
44    }
45    
46    help_system_autologon()
47    {
48     mecho "get system.autologon"
49     mecho "  Shows the state of autlogon"
50     mecho
51     mecho "set system.autologon [action]"
52     mecho " Enables or disables X11 autologins of the mcore user."
53     mecho "  Available actions:"
54     mecho "      enable  - enables autologon"
55     mecho "      disable - disables autologon"
56  }  }
57    
58  set_system_console()  set_system_console()
59  {  {
60   x11runas "DISPLAY=:0 rxvt"   local user="$1"
61     [[ -z ${user} ]] && help_system_console && return 1
62    
63     case "${user}" in
64     ${MCORE_UNPRIV_USER}) x11runas "rxvt &" ;;
65     root)  x11runas "rxvt -T 'Login as root' -e /bin/bash -c 'echo \"Login as root\";exec /bin/login root' &" ;;
66     *)     help_system_console && return 1 ;;
67     esac
68    }
69    
70    help_system_service()
71    {
72     mecho "set system.service [command] [service] [opts]"
73     mecho " Controls system services."
74     mecho " Commands:"
75     mecho "   status  - prints status of given service"
76     mecho "   start   - starts given service"
77     mecho "   stop    - stops given service"
78     mecho "   restart - restart given service"
79     mecho "   reload  - reloads given service if possible"
80     mecho "   add     - adds a service to default runlevels"
81     mecho "   del     - deletes a service from all runlevels"
82    }
83    
84    set_system_service()
85    {
86     local command="$1"
87     local service="$2"
88     local opts="$3"
89    
90     [[ -z ${command} ]] && help_system_service && return 1
91     [[ -z ${service} ]] && help_system_service && return 1
92    
93     if [[ ! -x ${MROOT}/etc/rc.d/init.d/${service} ]]
94     then
95     eecho "Service '${service}' unkown!"
96     fi
97    
98     case "${command}" in
99     start) /etc/rc.d/init.d/"${service}" start ;;
100     stop) /etc/rc.d/init.d/"${service}" stop ;;
101     restart) /etc/rc.d/init.d/"${service}" restart ;;
102     reload) /etc/rc.d/init.d/"${service}" reload ;;
103     status) /etc/rc.d/init.d/"${service}" status ;;
104     add) rc-config add "${service}" ;;
105     del) rc-config del "${service}" ;;
106     *) help_system_service && return ;;
107     esac
108    }
109    
110    set_system_passwd()
111    {
112     local user="$1"
113     local pass="$2"
114    
115     [[ -z ${user} ]] && help_system_passwd && return 1
116     [[ -z ${pass} ]] && mecho "deleting password!"
117    
118     case "${user}" in
119     root|${MCORE_UNPRIV_USER}) (echo "${pass}"; sleep 0.1; echo "${pass}") | passwd "${user}" ;;
120     *) help_system_passwd && return 1 ;;
121     esac
122  }  }
123    
124  help_system_rootconsole()  help_system_vt()
125  {  {
126   mecho "set system.rootconsole"   mecho "get system.vt"
127   mecho " opens a console with system privileges."   mecho "  Prints tty number of the current vt terminal."
128     mecho
129     mecho "set system.vt [tty]"
130     mecho "  Change current vt terminal to given tty."
131     mecho "  Valid tty numbers are 1-9."
132  }  }
133    
134  # opens a root console  set_system_vt()
 set_system_rootconsole()  
135  {  {
136   x11runas "DISPLAY=:0 rxvt -e '/bin/login -f root"   local tty="$1"
137     [[ -z ${tty} ]] && help_system_vt && return 1
138     case "${tty}" in
139     [1-9])
140     chvt "${tty}"
141     mecho "current vt changed to ${tty}."
142     ;;
143     *) help_system_vt && return 1 ;;
144     esac
145    }
146    
147    get_system_vt()
148    {
149     local tty
150     tty="$(fgconsole)"
151     rvecho "${tty}"
152    }
153    
154    get_system_autologon()
155    {
156     local var
157     var=$(grep auto_login /etc/slim.conf | sed 's:auto_login.*\([yn].*\):\1:')
158     case "${var}" in
159     yes) mecho "autologon currently enabled"; rvecho "1" ;;
160     no) mecho "autologon currently disabled"; rvecho "0" ;;
161     *) eecho "unkown state" ;;
162     esac
163    }
164    
165    set_system_autologon()
166    {
167     local action="$1"
168     [[ -z ${action} ]] && help_system_autologon && return 1
169    
170     ## splash X11 tty too?
171    
172     case "${action}" in
173     enable)
174     sed -i 's:^\(auto_login\).*:\1\tyes:' /etc/slim.conf
175     mecho "autologon enabled"
176     ;;
177     disable)
178     sed -i 's:^\(auto_login\).*:\1\tno:' /etc/slim.conf
179     mecho "autologon disabled"
180     ;;
181     *) help_system_autologon && return 1 ;;
182     esac
183  }  }

Legend:
Removed from v.1248  
changed lines
  Added in v.2037