source: lliurex-ssh-login/trunk/fuentes/lliurex-ssh-login.install/etc/update-motd.d/61-lliurex @ 595

Last change on this file since 595 was 595, checked in by jrpelegrina, 4 years ago

First release to xenial

  • Property svn:executable set to *
File size: 4.1 KB
Line 
1#!/bin/bash
2LANG=es_ES.UTF-8
3TERM=xterm
4export LANG
5export TERM
6#VER=`lsb_release -ds`
7#CAL=`cal`
8HORA=`date +%r`
9UPTIME=`uptime`
10IMG=`n4d-client -c LmdImageManager -m getImageList`
11ORD=`n4d-client -c LlxBootManager -m getBootOrder`
12VER=`cat /usr/share/lliurex-cdd/version`
13
14###########################
15##DETECCION DE MEMORIA#############
16detectmem () {
17        hw_mem=0
18        free_mem=0
19        human=1024
20        mem_info=$(</proc/meminfo)
21        mem_info=$(echo $(echo $(mem_info=${mem_info// /}; echo ${mem_info//kB/})))
22        for m in $mem_info; do
23                if [[ ${m//:*} = MemTotal ]]; then
24                        memtotal=${m//*:}
25                fi
26
27                if [[ ${m//:*} = MemFree ]]; then
28                        memfree=${m//*:}
29                fi
30
31                if [[ ${m//:*} = Buffers ]]; then
32                        membuffer=${m//*:}
33                fi
34
35                if [[ ${m//:*} = Cached ]]; then
36                        memcached=${m//*:}
37                fi
38        done
39
40        usedmem="$(((($memtotal - $memfree) - $membuffer - $memcached) / $human))"
41        totalmem="$(($memtotal / $human))"
42        mem="${usedmem}MiB / ${totalmem}MiB"
43}
44#####FIN DETECCION DE MEMORIA
45
46###############################
47#########DETECCION DE LA CPU#######
48
49detectcpu () {
50        REGEXP="-r"
51        cpu=$(awk 'BEGIN{FS=":"} /model name/ { print $2; exit }' /proc/cpuinfo | sed 's/ @/\n/' | head -1)
52        cpun=$(grep "physical id" /proc/cpuinfo | sort | uniq | wc -l)
53        if [ -z "$cpu" ]; then
54                cpu=$(awk 'BEGIN{FS=":"} /Hardware/ { print $2; exit }' /proc/cpuinfo)
55        fi
56        if [ -z "$cpu" ]; then
57                cpu=$(awk 'BEGIN{FS=":"} /^cpu/ { gsub(/  +/," ",$2); print $2; exit}' /proc/cpuinfo | sed 's/, altivec supported//;s/^ //')
58                if [[ $cpu =~ ^(PPC)*9.+ ]]; then
59                        model="IBM PowerPC G5 "
60                elif [[ $cpu =~ 740/750 ]]; then
61                        model="IBM PowerPC G3 "
62                elif [[ $cpu =~ ^74.+ ]]; then
63                        model="Motorola PowerPC G4 "
64                elif [[ "$(cat /proc/cpuinfo)" =~ "BCM2708" ]]; then
65                        model="Broadcom BCM2835 ARM1176JZF-S"
66                else
67                        model="IBM PowerPC G3 "
68                fi
69                cpu="${model}${cpu}"
70        fi
71        loc="/sys/devices/system/cpu/cpu0/cpufreq"
72        if [ -f ${loc}/bios_limit ];then
73                cpu_mhz=$(awk '{print $1/1000}' "${loc}/bios_limit")
74        elif [ -f $loc/scaling_max_freq ];then
75                cpu_mhz=$(awk '{print $1/1000}' "${loc}/scaling_max_freq")
76        else
77                cpu_mhz=$(awk -F':' '/cpu MHz/{ print int($2+.5) }' /proc/cpuinfo | head -n 1)
78        fi
79        if [ -n "$cpu_mhz" ];then
80                if [ $(echo $cpu_mhz | cut -d. -f1) -gt 999 ];then
81                        cpu_ghz=$(awk '{print $1/1000}' <<< "${cpu_mhz}")
82                        cpu="$cpu @ ${cpu_ghz}GHz"
83                else
84                        cpu="$cpu @ ${cpu_mhz}MHz"
85                fi
86        fi
87        if [[ "${cpun}" -gt "1" ]]; then
88                cpu=$(sed $REGEXP 's/\([tT][mM]\)|\([Rr]\)|[pP]rocessor//g' <<< "${cpun}x ${cpu}" | xargs)
89        else
90                cpu=$(sed $REGEXP 's/\([tT][mM]\)|\([Rr]\)|[pP]rocessor//g' <<< "${cpu}" | xargs)
91        fi
92}
93############### CPU DETECCION FIN
94
95
96####AVERIGUAMOS EL TIPO DE CLIENTE LLIUREX
97lliurex-version > /tmp/test-mod.txt
98echo $LTSP_FATCLIENT > /tmp/test-mod-fat.txt
99if [ `grep server /tmp/test-mod.txt -c` != 0 ]; then
100        if [ `echo x$DISPLAY | cut -d : -f 1` = 'x' ]; then
101                SOY=Servidor
102        else
103                SOY=Ligero
104        fi
105else
106        if [ `grep client /tmp/test-mod.txt -c ` != 0 ]; then
107                #EJECUTA=`echo $LTSP_FATCLIENT | grep true| wc -l`
108                EJECUTA=$(grep "true" /tmp/test-mod-fat.txt -c)
109                if [ "$EJECUTA" != "0" ];then
110                        SOY=Semiligero
111                else
112                        SOY=Pesado
113                fi
114        else
115                SOY=Desktop
116        fi
117fi
118
119############################
120#####AVERIGUAMOS LA ARQUITECTURA
121############################
122
123if [ `uname -m | grep "x86_64" -c` == 0 ]; then
124        ARQ="32 Bits"
125else
126        ARQ="64 Bits"
127fi
128
129
130############################
131###DATOS DE MAQUINA ORIGEN
132############################
133IMG2=`echo $IMG|sed 's/\[\|\]//g'|sed 's/"//g'|sed 's/,/ /g'|sed 's/.json//g'`
134ORD2=`echo $ORD|sed 's/\[\|\]//g'|sed 's/"//g'|sed 's/,/ /g'|sed "s/'//g"`
135
136#CPU=`cat /proc/cpuinfo | grep 'model name' | cut -c 14-42 | uniq `
137
138#MEM=`grep MemTotal /proc/meminfo | awk '{$1=$2/(1024); print $1,"MB";}'`
139
140####DETECTAMOS LA MEMORIA FISICA Y USADA, ASI COMO LA CPU######
141detectmem
142detectcpu
143
144
145echo 
146echo "  -CLIENTE: $SOY"
147echo "  -VERSION: $VER"
148echo "  -ARQUITECTURA: $ARQ"
149echo "  -CPU: $cpu"
150echo "  -RAM: $mem"
151if [ "$SOY" = "Server" ]; then
152        DF=`df -h /net|tail -1|awk '{print $5}'`
153        echo "  -Espacio ocupado en /net: $DF"
154        echo "  -Imagenes LTSP disponibles: $IMG2"
155        echo "  -Orden de arranque menu pxe: $ORD2"
156        echo 
157fi
158echo 
159echo Hora actual: $UPTIME
Note: See TracBrowser for help on using the repository browser.