<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://www.root-wiki.de/index.php?action=history&amp;feed=atom&amp;title=Dynamic_MOTD</id>
		<title>Dynamic MOTD - Versionsgeschichte</title>
		<link rel="self" type="application/atom+xml" href="https://www.root-wiki.de/index.php?action=history&amp;feed=atom&amp;title=Dynamic_MOTD"/>
		<link rel="alternate" type="text/html" href="https://www.root-wiki.de/index.php?title=Dynamic_MOTD&amp;action=history"/>
		<updated>2026-04-29T05:36:22Z</updated>
		<subtitle>Versionsgeschichte dieser Seite in Root-Wiki</subtitle>
		<generator>MediaWiki 1.25.3</generator>

	<entry>
		<id>https://www.root-wiki.de/index.php?title=Dynamic_MOTD&amp;diff=645&amp;oldid=prev</id>
		<title>Nevakee: /* Datei: 30-sysinfo */</title>
		<link rel="alternate" type="text/html" href="https://www.root-wiki.de/index.php?title=Dynamic_MOTD&amp;diff=645&amp;oldid=prev"/>
				<updated>2020-04-10T16:14:39Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Datei: 30-sysinfo&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Hier eine kurze Beschreibung, wie man eine dynamische motd erstellt.&lt;br /&gt;
&lt;br /&gt;
== Schritte ==&lt;br /&gt;
&lt;br /&gt;
figlet installieren, damit der Servername &amp;quot;schön&amp;quot; angezeigt wird.&lt;br /&gt;
 apt-get install figlet&lt;br /&gt;
&lt;br /&gt;
update-motd.d Verzeichnis in /etc erstellen, falls er noch nicht vorhanden ist.&lt;br /&gt;
 mkdir /etc/update-motd.d/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Danach müssen die 2 Dateien noch befüllt werden. Der Inhalt der Dateien steht am Ende des Beitrages.&lt;br /&gt;
 nano /etc/update-motd.d/20-header&lt;br /&gt;
 nano /etc/update-motd.d/30-sysinfo&lt;br /&gt;
&lt;br /&gt;
Alle 3 Dateien ausführbar machen.&lt;br /&gt;
 chmod +x /etc/update-motd.d/*&lt;br /&gt;
&lt;br /&gt;
{{Warnung|Die beiden nachfolgenden Schritte sind bei Debian 6 nicht nötig, da die Verknüpfung meistens schon vorhanden ist. Zu Not mit &amp;quot;ls -la /etc/motd&amp;quot; prüfen.}}&lt;br /&gt;
&lt;br /&gt;
Alte motd Datei zur Sicherheit umbenennen&lt;br /&gt;
 mv /etc/motd /etc/motd.bak&lt;br /&gt;
&lt;br /&gt;
Verknüpfung zu der dynamischen motd erstellen.&lt;br /&gt;
 ln -s /var/run/motd /etc/motd&lt;br /&gt;
&lt;br /&gt;
== Ergebnis ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:dynamic-motd.png]]&lt;br /&gt;
&lt;br /&gt;
In dem Beispiel wird nicht der Servername angezeigt, sondern &amp;quot;...NevaKee.de...&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Datei: 20-header ==&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 #&lt;br /&gt;
 #    00-header - create the header of the MOTD&lt;br /&gt;
 #    Copyright (c) 2013 Nick Charlton&lt;br /&gt;
 #    Copyright (c) 2009-2010 Canonical Ltd.&lt;br /&gt;
 #&lt;br /&gt;
 #    Authors: Nick Charlton &amp;lt;hello@nickcharlton.net&amp;gt;&lt;br /&gt;
 #             Dustin Kirkland &amp;lt;kirkland@canonical.com&amp;gt;&lt;br /&gt;
 #&lt;br /&gt;
 #    This program is free software; you can redistribute it and/or modify&lt;br /&gt;
 #    it under the terms of the GNU General Public License as published by&lt;br /&gt;
 #    the Free Software Foundation; either version 2 of the License, or&lt;br /&gt;
 #    (at your option) any later version.&lt;br /&gt;
 #&lt;br /&gt;
 #    This program is distributed in the hope that it will be useful,&lt;br /&gt;
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 #    GNU General Public License for more details.&lt;br /&gt;
 #&lt;br /&gt;
 #    You should have received a copy of the GNU General Public License along&lt;br /&gt;
 #    with this program; if not, write to the Free Software Foundation, Inc.,&lt;br /&gt;
 #    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.&lt;br /&gt;
 &lt;br /&gt;
 [ -r /etc/lsb-release ] &amp;amp;&amp;amp; . /etc/lsb-release&lt;br /&gt;
 &lt;br /&gt;
 if [ -z &amp;quot;$DISTRIB_DESCRIPTION&amp;quot; ] &amp;amp;&amp;amp; [ -x /usr/bin/lsb_release ]; then&lt;br /&gt;
         # Fall back to using the very slow lsb_release utility&lt;br /&gt;
         DISTRIB_DESCRIPTION=$(lsb_release -s -d)&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 figlet $(hostname)&lt;br /&gt;
 #figlet ...NevaKee.de..&lt;br /&gt;
 &lt;br /&gt;
 #printf &amp;quot;\n&amp;quot;&lt;br /&gt;
 #printf &amp;quot;Welcome to %s (%s).\n&amp;quot; &amp;quot;$DISTRIB_DESCRIPTION&amp;quot; &amp;quot;$(uname -r)&amp;quot;&lt;br /&gt;
 #printf &amp;quot;\n&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Datei: 30-sysinfo ==&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 #    10-sysinfo - generate the system information&lt;br /&gt;
 #    Copyright (c) 2013 Nick Charlton&lt;br /&gt;
 #&lt;br /&gt;
 #    Authors: Nick Charlton &amp;lt;hello@nickcharlton.net&amp;gt;&lt;br /&gt;
 #&lt;br /&gt;
 #    This program is free software; you can redistribute it and/or modify&lt;br /&gt;
 #    it under the terms of the GNU General Public License as published by&lt;br /&gt;
 #    the Free Software Foundation; either version 2 of the License, or&lt;br /&gt;
 #    (at your option) any later version.&lt;br /&gt;
 #&lt;br /&gt;
 #    This program is distributed in the hope that it will be useful,&lt;br /&gt;
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 #    GNU General Public License for more details.&lt;br /&gt;
 #&lt;br /&gt;
 #    You should have received a copy of the GNU General Public License along&lt;br /&gt;
 #    with this program; if not, write to the Free Software Foundation, Inc.,&lt;br /&gt;
 #    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.&lt;br /&gt;
 &lt;br /&gt;
 cpuallusage=`ps aux | awk {'sum+=$3;print sum'} | tail -n 1 | awk '{printf &amp;quot;%.0f\n&amp;quot;, $1}'`&lt;br /&gt;
 cpucores=`cat /proc/cpuinfo | grep &amp;quot;model name&amp;quot; | wc -l`&lt;br /&gt;
 cpuusage=$((cpuallusage / cpucores)) &lt;br /&gt;
 &lt;br /&gt;
 # \033[0;34m+     \033[0;37mCPU usage \033[0;34m= \033[1;32m$cpuusage%&lt;br /&gt;
 &lt;br /&gt;
 echo -e &amp;quot;\033[0;34m+++++++++++++++++: \033[0;37mSystem Data\033[0;34m :+++++++++++++++++++++++++++++&lt;br /&gt;
 \033[0;34m+ \033[0;37mDate and Time \033[0;34m= \033[1;32m`date`&lt;br /&gt;
 \033[0;34m+        \033[0;37mKernel \033[0;34m= \033[1;32m`uname -r`&lt;br /&gt;
 \033[0;34m+        \033[0;37mUptime \033[0;34m= \033[1;32m`uptime | grep -ohe 'up .*' | sed 's/,//g' | awk '{ printf $2&amp;quot; &amp;quot;$3 }'`&lt;br /&gt;
 \033[0;34m+          \033[0;37mLoad \033[0;34m= \033[1;32m`cat /proc/loadavg | awk '{print $1}'` `cat /proc/loadavg | awk '{print $2}'` `cat  /proc/loadavg | awk '{print $3}'`&lt;br /&gt;
 \033[0;34m+     \033[0;37mCPU model \033[0;34m= \033[1;32m$cpucores x `cat /proc/cpuinfo | grep -m 1 &amp;quot;model name&amp;quot; | awk -F &amp;quot;: &amp;quot; '{print $2}'`&lt;br /&gt;
 \033[0;34m+        \033[0;37mMemory \033[0;34m= \033[1;32mUsed `free -m | head -n 2 | tail -n 1 | awk {'print $3'}` MB out of `free -m | head -n 2 | tail -n 1 | awk {'print $2'}` MB&lt;br /&gt;
 \033[0;34m+           \033[0;37mHDD \033[0;34m= \033[1;32mUsed `df -h / | tail -n 1 | awk {'print $3'}` out of `df -h / | tail -n 1 | awk {'print $2'}`&lt;br /&gt;
 \033[0;34m+     \033[0;37mProcesses \033[0;34m= \033[1;32m`ps aux | wc -l` of `ulimit -u` MAX&lt;br /&gt;
 \033[0;34m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\033[0;37m&lt;br /&gt;
 &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SSH]]&lt;/div&gt;</summary>
		<author><name>Nevakee</name></author>	</entry>

	</feed>