Schlagwort: Linux

Spritpreise in Zabbix/Grafana

Ges­tern nach­mit­tag habe ich mir mal mei­ne Tan­ke in Grafa­na rein­ge­den­gelt — sehr schön!

Bei mir wird Grafa­na von Zab­bix befeu­ert, also müs­sen wir erst­mal die Sprit­prei­se in Zab­bix bekom­men.
Es gibt eine schö­ne API bei tankerkoenig.de — die kann man anzap­fen, wenn man einen API-Key hat. Der ist schnell bean­tragt, Link in der Bestä­ti­gungs­mail kli­cken, fer­tig. Dau­ert kei­ne 10 Sekun­den.
Drei Items hät­te ich ger­ne in Zab­bix:

  • Die­sel
  • E 10
  • Super

Ich illus­trie­re das mal an Die­sel:

Das Update-Inter­vall 600 Sekun­den soll­te man nicht klei­ner wäh­len, um unnö­ti­ge Last auf dem API-Ser­ver zu ver­mei­den.
oil.diesel.sh ist, man ver­mu­tet es schon, ein Shellskript:

root@raspberrypi:/etc/zabbix/externalscripts# cat oil.diesel.sh
#!/bin/bash
/usr/bin/curl -s \
 "https://creativecommons.tankerkoenig.de/json/prices.php?ids=66f063b7-8883-4951-bc5c-f0754b48ce18&apikey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" | \
 /usr/bin/jq '.prices."66f063b7-8883-4951-bc5c-f0754b48ce18"."diesel"'
root@raspberrypi:/etc/zabbix/externalscripts#

Für den API-Key müßt ihr natür­lich euren ein­set­zen 🙂 Das lie­fert ein JSON-Objekt zurück, aus dem wir uns mttels jq den Preis für Die­sel raus­ho­len
Die ID der Tank­stel­le (66f063b7-8883–4951-bc5c-f0754b48ce18) war nur mit Tricks her­aus­zu­be­kom­men: Goog­le Maps auf­ru­fen und die Tan­ke suchen, bei mir die­ser Link. Danach Rechts­klick in die Kar­te unge­fähr auf die Tank­stel­le (auf ein paar Kilo­me­ter Abwei­chung kommt es nicht an). “Was ist hier?” aus­wäh­len — unten ste­hen dann die Koor­di­na­ten, und die benö­ti­gen wir.
Damit füt­tern wir die API — und bekom­men die ID der Tan­ke.
Das gan­ze auf drei Skrip­te ver­teilt, die sich nur im jq unter­schei­den: die­sel, e10, e5 (Super ist das).
Nun noch Grafa­na:
Wir kli­cken uns die 3 Prei­se in eine Gra­fik:

Und wir bekom­men einen schi­cken Gra­phen:

(Mehr Daten habe ich noch nicht, aber das ist ja nur eine Fra­ge der Zeit)

 

ClamAV mit eigenen Signaturen

Auf Arbeit haben wir in letz­ter Zeit ver­mehrt unter Viren­mails zu lei­den, die von kei­nem der bei uns ver­wen­de­ten Viren­scan­ner als Viren­mails erkannt wer­den.
Auf G+ wur­de ich auf ein schon älte­res Pos­ting auf­merk­sam gemacht, das erklärt, wie man eige­ne Signa­tu­ren schreibt.

Geht wun­der­bar (ich habe den Cla­mAV aus den Quel­len sel­ber über­setzt):

mailgate:/tmp # /usr/local/clamav/bin/clamscan invoice574206_1.pdf
invoice574206_1.pdf: OK

----------- SCAN SUMMARY -----------
Known viruses: 4137933
Engine version: 0.98.7
Scanned directories: 0
Scanned files: 1
Infected files: 0
Data scanned: 0.28 MB
Data read: 0.12 MB (ratio 2.29:1)
Time: 12.807 sec (0 m 12 s)
mailgate:/tmp #

Nix gefun­den, wir schie­ben die eige­ne Signa­tur an die rich­ti­ge Stel­le:

mailgate:/tmp # mv ISH-custumsigs.ndb /usr/local/clamav/share/clamav/
mailgate:/tmp #

Und dann noch­mal:

mailgate:/tmp # /usr/local/clamav/bin/clamscan invoice574206_1.pdf
invoice574206_1.pdf: ISH.Trojan.UNOFFICIAL FOUND

----------- SCAN SUMMARY -----------
Known viruses: 4137934
Engine version: 0.98.7
Scanned directories: 0
Scanned files: 1
Infected files: 1
Data scanned: 0.28 MB
Data read: 0.12 MB (ratio 2.29:1)
Time: 13.072 sec (0 m 13 s)
mailgate:/tmp #

Ich bin ent­zückt!

Ubuntu auf dem MacBookPro

Nach irgend­ei­nem Update von OSX ent­schloß sich die Nvi­dia-Kar­te, ver­läß­lich das MBP zum Absturz zu brin­gen.
Obwohl das offen­sicht­lich ein Trei­ber­pro­blem (also Soft­ware) ist, wur­de das nie gefixt. Mit­tels gfx­card­sta­tus ließ sich das zwar mil­dern, aber nicht end­gül­tig: Das schal­tet die Nvi­dia kom­plett ab (und ver­wen­det dann die Onboard-Intel-Kar­te) und muß nach jedem Start von “auto­ma­ti­scher Wech­sel” auf “Nimm aus­schließ­lich und immer die Intel-Kar­te” umge­stellt wer­den.
Mein per­sön­li­cher “Fix” war dann ein iMac 😀 Jeden­falls lag das MBP die letz­ten Mona­te dann nur so her­um und wur­de fak­tisch nicht ver­wen­det.

Ges­tern habe ich mich dann ent­schlos­sen, Ubun­tu drauf­zu­tun. Es ist ein MBP Mid 2010, also ein MBP 6,2. Ubun­tu meint dazu, ich sol­le 12.10 LTS ver­wen­den — also habe ich die Boot-CD gebrannt und los gings. Bereits wäh­rend der Instal­la­ti­on wur­den das WLAN und die ein­ge­bau­te iSight-Kame­ra gefun­den und waren ohne wei­te­res Zutun benutz­bar — Respekt!

Nach erfolg­rei­cher Instal­la­ti­on und Reboot mel­de­te sich sofort die Soft­ware­ak­tua­li­sie­rung und wies mich auf das Vor­han­den­sein von 14.04 hin — da ich ja ohne­hin alles geplät­tet hat­te — war­um nicht? Also Update, auch das ging pro­blem­los.

Dann fin­gen aber doch die Pro­blem­chen an: Das WLAN ätzend lang­sam. Das ließ sich durch die Ver­wen­dung des Broad­com-Trei­bers behe­ben.
Und da ich dadurch ohne­hin bei den pro­prie­tä­ren Trei­bern war, habe ich auch gleich den pro­prie­tä­ren Nvi­dia-Trei­ber genom­men. Kurz: der taugt nichts, und zwar alle ange­bo­te­nen Ver­sio­nen. Immer mal wie­der auf ein­mal ein schwar­zer Bild­schirm. Das ließ sich nur dadurch behe­ben, daß ich mich mit ssh auf dem Lap­top ein­logg­te, und dann ein

sudo apt-get purge nvidia-*

mach­te. Der Nou­veau-Trei­ber funk­tio­niert anstands­los.
Ein wei­te­res Pro­blem: Auf­wa­chen aus dem Schlaf­mo­dus (also Zuklap­pen und dann wie­der Auf­klap­pen): Der Bild­schirm blieb schwarz. Auch das ließ sich behe­ben:

sudo apt-get install linux-generic-lts-vivid

Wun­der­bar! Die Son­der­tas­ten für Bild­schirm­hel­lig­keit gehen, Laut­stär­ke geht. Die Medi­en-Tas­ten (Vor, Zurück, Play/Pause) gehen, zumin­dest in Rhyth­m­box. Die Magic Mou­se geht.
Nach Rechts­klick auf dem Touch­pad habe ich lan­ge gesucht: Nun, es ist ein­fach ein 2-Fin­ger-Tap!
Aller­dings alles nur in Unity, ich hät­te eigent­lich gern i3wm. Das ist dann eine Auf­ga­be für die nächs­te Zeit…

Etwas hake­lig ist die Tas­ta­tur. Das ist ja eine Apple-Tas­ta­tur.
Die meis­ten Son­der­zei­chen erreicht man über die rech­te Alt-Tas­te.

[ Alt-5
] Alt-6
{ Alt-8
} Alt-9
\ Alt-ß
| Alt-<
@ Alt-Shift-1

Soweit ich sehe, sind alle ande­ren Zei­chen genau dort, wo sie auch auf der Tas­ta­tur sind. Als Tas­ta­tur habe ich “Deutsch (Mac­in­tosh)”
Auch das funk­tio­niert in i3 nicht, solan­ge man da nichts kon­fi­gu­riert hat.

Bildschirmfoto vom 2015-11-29 12:42:53

Das gan­ze Sys­tem ist nicht ganz so flüs­sig wie OSX. Das Scrol­len (immer­hin ein­fach wie bei OSX: 2-Fin­ger-Zie­hen) ist nicht ganz so smooth, die Magic Mou­se auch bei gerings­ter Emp­find­lich­keit zu schnell.
Aber das ist Jam­mern auf sehr hohem Niveau.

Alles in Allem: Ich bin sehr zufrie­den!

Time Machine Probleme

Mir ist mei­ne Time­Cap­su­le gestor­ben — nicht schön, es gibt kei­ne Back­ups mehr.
Nun, mit neta­ta­lk 3 wird Time Machi­ne direkt unter­stützt — wenn es denn neta­ta­lk 3 für Debi­an in den Repos gäbe.
Gibts aber wegen Krü­mel­ka­cke­rei nicht: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=685878 — der Paket-Main­tai­ner hat kei­nen Bock, an dem Paket wei­ter­zu­ar­bei­ten, gibt es aber nicht frei. Die “Pro­ble­me” sind der­weil gelöst: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=751121 — es gibt nur noch ein “Pro­blem”:

However I found a couple of files with similar sentences and no further licensing:

include/atalk/dsi.h
include/atalk/server_child.h

Those say:

 * Copyright (c) 1997 Adrian Sun (asun@zoology.washington.edu)
 * All rights reserved.

Everything else is either appropriately licensed, generated file, or contains no
claims at all.

Kin­der­gar­ten, das.
Also habe ich mir das Git-Repo­si­to­ry von Adri­an Knoth (https://github.com/adiknoth/netatalk-debian) geclont und sel­ber ein Paket gebaut und instal­liert.
Geht auch. Also: eigent­lich. Unei­gent­lich brach das Back­up nach ca. 277 Giga­byte ab, im Log fand sich:

Nov 22 04:24:15.695665 afpd[6569] {directory.c:1259} (error:AFPDaemon): cname(did:17, name:'bands', cwd:'/timemachine/rainer/iMac.sparsebundle'): failed to add dir

Zu die­sem Zeit­punkt befan­den sich exakt 35339 Ver­zeich­nis­se in /timemachine/rainer/iMac.sparsebundle/bands/
Mög­li­cher­wei­se ist das ja ein Pro­blem mit ext4? Jeden­falls bin ich mal auf XFS umge­stie­gen und tes­te nun wie­der.
So siehts jetzt aus:
Bildschirmfoto 2015-11-22 um 11.12.55
Wir wer­den also im Lau­fe des mor­gi­gen Tages sehen, ob das ziel­füh­rend war.
Wenn nicht, wür­de ich es noch­mal mit HFS+ auf der Back­up-Plat­te ver­su­chen.

Ach ja, falls es jeman­den inter­es­siert: Die Kon­fi­gu­ra­ti­on ist furcht­bar ein­fach, aus /etc/netatalk/afp.conf:

[Global]
# hostname = timemachine
log file = /var/log/netatalk.log
spotlight = yes

# [Homes]
# basedir regex = /home

[TM_Papa]
path = /timemachine/rainer
time machine = yes
valid users = rainer
spotlight = no
# vol size limit = 500000
# maximale Volume-Groesse in MB, d.h. 500.000 MB = 500 GB

[Papa]
path = /usbplatte-2/home/rainer
time machine = no
valid user = rainer

/timemachine/rainer muß natür­lich exis­tie­ren und dem valid users rai­ner gehö­ren — also dem Linux-Nut­zer rai­ner.

OpenSuse 13.2, logrotate

Auf mei­nen Mail­ser­vern wur­de /var/log/mail nach einem Upgrade von 13.1 -> 13.2 nicht mehr rotiert und wur­de folg­lich immer grö­ßer.
Hier ist der Übel­tä­ter:

# systemctl status logrotate.timer
logrotate.timer - Daily rotation of log files
   Loaded: loaded (/usr/lib/systemd/system/logrotate.timer; disabled)
   Active: inactive (dead)
     Docs: man:logrotate(8)
           man:logrotate.conf(5)

# 

Abhil­fe schafft:

# systemctl enable logrotate.timer
# systemctl start logrotate.timer
#

Dann sieht es auch rich­tig aus:

# systemctl status logrotate.timer
logrotate.timer - Daily rotation of log files
   Loaded: loaded (/usr/lib/systemd/system/logrotate.timer; enabled)
   Active: active (waiting) since Mon 2015-01-05 10:09:37 CET; 47s ago
     Docs: man:logrotate(8)
           man:logrotate.conf(5)

# 

Hin­ter­grund: cron soll wohl von sys­temd über­nom­men wer­den, Suse hat aber nur Tei­le nach sys­temd über­nom­men, was genau, steht in

# ls -l /usr/lib/systemd/system/*timer
-rw-r--r-- 1 root root 174 Nov  5 14:28 /usr/lib/systemd/system/fstrim.timer
-rw-r--r-- 1 root root 234 Sep 25 12:55 /usr/lib/systemd/system/logrotate.timer
-rw-r--r-- 1 root root 176 Dec  3 13:00 /usr/lib/systemd/system/mdadm-last-resort@.timer
-rw-r--r-- 1 root root 635 Nov 27 15:53 /usr/lib/systemd/system/systemd-readahead-done.timer
-rw-r--r-- 1 root root 450 Nov 27 15:53 /usr/lib/systemd/system/systemd-tmpfiles-clean.timer
#

Dann aber haben sie ver­ges­sen, die timer auch zu akti­vie­ren 🙁

ActiveSync, z-push, autodiscover

So, jetzt habe ich das mal alles schön zusam­men­ge­klöp­pelt.

Ziel war: Auf den iDe­vices Push­mail zu haben. Nor­ma­ler­wei­se braucht man das nicht, wenn der Cli­ent IMAP IDLE kann — aber IOS kann das eben nicht. Man­che sagen, weil das ziem­lich viel Strom kos­tet; ich weiß es nicht.
Das hat zur Fol­ge, daß Mails erst dann abge­ru­fen wer­den, wenn man in die Mail-App geht. Funk­tio­niert zwar, ist aber nicht schön. Mit dem Exchan­ge von der Fir­ma funk­tio­niert Push­mail sehr schön, aber ich habe eben kein Exchan­ge und wer­de sicher­lich auch nie eins haben — das wal­te Hugo!
Der Mecha­nis­mus hin­ter dem Push­mail, wie es Exchan­ge macht, heißt Active­Sync, und da gibt es eine Open­Sour­ce-Imple­men­tie­rung: z-push.

Auf gehts!
Einen neu­en vhost erzeugt, push.sokoll.com, mit SSL selbst­ver­ständ­lich. Wild­card-Zer­ti­fi­ka­te sind übri­gens eine tol­le Erfin­dung 🙂

 

<VirtualHost 195.110.60.28:443>
  RewriteEngine On
  RewriteRule ^/Microsoft-Server-ActiveSync$ /webroot/com/sokoll/push/index.php
  DocumentRoot /webroot/com/sokoll/push
  ServerName push.sokoll.com
  ServerAdmin rainer@sokoll.com
  LogFormat "%v %l %u %t \"%r\" %>s %b" combined
  CustomLog /var/log/apache2/push.sokoll.com-access_log combined
  ErrorLog /var/log/apache2/push.sokoll.com-error_log
  <IfModule headers_module>
    Header append MS-Server-ActiveSync: 14.0
    Header append MS-ASProtocolVersions: 1.0,2.0,2.1,2.5,12.0,12.1,14.0
    Header append MS-ASProtocolCommands: Sync,SendMail,SmartForward,SmartReply,GetAttachment,GetHierarchy,CreateCollection,DeleteCollection,MoveCollection,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,MeetingResponse,ResolveRecipients,ValidateCert,Provision,Search,Ping,Notify,ItemOperations,Settings
  </IfModule>
  SSLEngine on
  SSLCertificateFile /etc/ssl/private/wildcard.sokoll.com.crt
  SSLCertificateKeyFile /etc/ssl/private/wildcard.sokoll.com.key
  SSLProtocol -ALL +TLSv1 +TLSv1.1 +TLSv1.2
  SSLHonorCipherOrder on
  SSLCipherSuite ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:DHE-RSA-CAMELLIA128-SHA:AES128-SHA:HIGH:!aNULL:!MD5:!ADH
  <Directory /webroot/com/sokoll/push>
    AllowOverride none
    Order allow,deny
    Allow from all
    php_flag magic_quotes_gpc off
    php_flag register_globals off
    php_flag magic_quotes_runtime off
    php_flag short_open_tag on
  </Directory>
</VirtualHost>

 

Wir wech­seln in die Docu­men­tRoot und holen uns das aktu­el­le z-push (heu­te: 2.1.3) und packen das aus.
Bei mir sieht das dann so aus:

allinclusive:/webroot/com/sokoll/push # ls -l
total 168
-rw-rw-r-- 1 wwwrun www 11571 Jun 11 18:03 INSTALL
-rw-rw-r-- 1 wwwrun www 36212 Jan 28 2013 LICENSE
drwxrwxr-x 8 wwwrun www 4096 Jun 25 18:52 backend
-rw-rw-r-- 1 wwwrun www 13611 Nov 28 18:45 config.php
drwxrwxr-x 2 wwwrun www 4096 Jun 25 18:52 include
-rw-rw-r-- 1 wwwrun www 13790 Sep 17 2013 index.php
drwxrwxr-x 11 wwwrun www 4096 Jun 25 18:52 lib
drwxrwxr-x 2 wwwrun www 4096 Jun 25 18:52 tools
-rw-rw-r-- 1 wwwrun www 2040 Jun 25 18:51 version.php
-rwxrwxr-x 1 wwwrun www 34476 Feb 28 2013 z-push-admin.php
-rwxrwxr-x 1 wwwrun www 29586 Jan 4 2013 z-push-top.php
allinclusive:/webroot/com/sokoll/push #

config.php bear­bei­ten:

allinclusive:/webroot/com/sokoll/push # diff -u config.php.org config.php
--- config.php.org 2014-12-03 17:52:57.425843135 +0100
+++ config.php 2014-11-28 18:45:02.302475244 +0100
@@ -45,7 +45,7 @@
 * Default settings
 */
 // Defines the default time zone, change e.g. to "Europe/London" if necessary
- define('TIMEZONE', '');
+ define('TIMEZONE', 'Europe/Berlin');
// Defines the base path on the server
 define('BASE_PATH', dirname($_SERVER['SCRIPT_FILENAME']). '/');
@@ -196,7 +196,7 @@
 * Backend settings
 */
 // the backend data provider
- define('BACKEND_PROVIDER', '');
+ define('BACKEND_PROVIDER', 'BackendIMAP');
/**********************************************************************************
 * Search provider settings
@@ -266,4 +266,4 @@
 */
 );
-?>
\ No newline at end of file
+?>
allinclusive:/webroot/com/sokoll/push #

INSTALL lesen und even­tu­ell php-Pake­te nach­in­stal­lie­ren. backend/imap/config.php habe ich in Ruhe gelas­sen, dort steht drin, man möge sich per IMAP auf local­host ver­bin­den. Das ist zwar kei­ne ver­schlüs­sel­te Ver­bin­dung, aber da es local­host ist, inter­es­siert uns das nicht.

Mein IMAP-Ser­ver (dovecot) horch­te nicht auf local­host, also müs­sen wir das ändern:

allinclusive:/etc/dovecot/conf.d # diff -u 10-master.conf.org 10-master.conf
--- 10-master.conf.org 2014-11-28 12:39:50.850711901 +0100
+++ 10-master.conf 2014-11-28 13:07:19.034694100 +0100
@@ -16,7 +16,8 @@
service imap-login {
 inet_listener imap {
- port = 0
+ address = localhost
+ port = 143
 }
 inet_listener imaps {
 port = 993
allinclusive:/etc/dovecot/conf.d #

Im Prin­zip war es das. Wir wol­len es aber noch schi­cker haben: Auto­dis­co­ver. Ein Mecha­nis­mus von Micro­soft, mit dem man dem Mail­cli­ent nur noch die Email-Adres­se und das Paß­wort über­ge­ben muß, den Rest (Ser­ver, Ports, Ver­schlüs­se­lung) fin­det der Cli­ent sel­ber. Es gibt zwar auch auto­mx — aber da hät­te ich einen klei­nen Medi­en­bruch, da ich eine Web­site ansur­fen muß.

Also einen neu­en vhost ein­rich­ten 🙂

<VirtualHost 195.110.60.28:443>
  DocumentRoot /webroot/com/sokoll/autodiscover
  ServerName autodiscover.sokoll.com
  ServerAdmin rainer@sokoll.com
  CustomLog /var/log/apache2/autodiscover.sokoll.com-access_log combined
  ErrorLog /var/log/apache2/autodiscover.sokoll.com-error_log
  SSLEngine on
  SSLCertificateFile /etc/ssl/private/wildcard.sokoll.com.crt
  SSLCertificateKeyFile /etc/ssl/private/wildcard.sokoll.com.key
  SSLProtocol -ALL +TLSv1 +TLSv1.1 +TLSv1.2
  SSLHonorCipherOrder on
  SSLCipherSuite ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:DHE-RSA-CAMELLIA128-SHA:AES128-SHA:HIGH:!aNULL:!MD5:!ADH
  Alias /Autodiscover/Autodiscover.xml "/webroot/com/sokoll/autodiscover/autodiscover.php"
  Alias /AutoDiscover/AutoDiscover.xml "/webroot/com/sokoll/autodiscover/autodiscover.php"
  <Directory /webroot/com/sokoll/autodiscover>
    AllowOverride none
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>

Die autodiscover.php hat mir dann eini­ge Kopf­schmer­zen gemacht, bis ich doch eine gefun­den habe, die funk­tio­niert, und zwar beim Apfel­schwein — herz­li­chen Dank! Zu Doku­men­ta­ti­ons­zwe­cken liegt mei­ne hier. nach autodiscover.php umbe­nen­nen, ins rich­ti­ge Ver­zeich­nis wer­fen, Varia­blen anpas­sen, fer­tig.

Apa­chen und Dovecot rel­oa­den, das wars.

 

Und so sieht es dann aus:

Einen neu­en Exchan­ge-Account anle­gen:

IMG_1258

Email-Adres­se und Paß­wort ein­ge­ben, die Beschrei­bung ist frei wähl­baar:

IMG_1259

Für kur­ze Zeit taucht ein Bild­schirm auf, der sagt: “Alles OK

IMG_1260

Da z-sync nur Mail macht, wäh­len wir auch nur Mail aus (Für den Rest haben wir ja own­cloud mit Card/CalDAV :-))

IMG_1261

Alles schick!

Mit­ge­lie­fert wer­den zwei klei­ne php-Skrip­te für die Kom­man­do­zei­le: z-push-top.php zeigt die ver­bun­de­nen User, Gerä­te, IP-Adres­sen und den aktu­el­len Sta­tus an, z-push-admin.php gibt ver­schie­de­ne Infor­ma­tio­nen und über die regis­trier­ten Gerä­te, das ist ganz wit­zig.

Synchronized by user: rainer@sokoll.com
-----------------------------------------------------
DeviceId:               applc39jhx51f39c
Device type:            iPhone
UserAgent:              Apple-iPhone5C2/1202.435
Device Model:           iPhone5C2
Device friendly name:   iPhone 5
Device OS:              iOS 8.1.1 12B435
Device OS Language:     de
ActiveSync version:     14.0
First sync:             2014-11-28 18:52
Last sync:              2014-12-03 19:57
Total folders:          62
Synchronized folders:   2
Synchronized data:      Emails(2)
Status:                 OK
WipeRequest on:         not set
WipeRequest by:         not set
Wiped on:               not set
Attention needed:       No errors known

Geht aber auch mit Andro­id:

Synchronized by user: rainer@sokoll.com
-----------------------------------------------------
DeviceId:               sec03d95a650e199
Device type:            SAMSUNGSMT
UserAgent:              SAMSUNG-SM-T110/101.40202
ActiveSync version:     14.0
First sync:             2014-11-28 19:45
Last sync:              2014-11-28 19:51
Total folders:          60
Synchronized folders:   1
Synchronized data:      Emails
Status:                 OK
WipeRequest on:         not set
WipeRequest by:         not set
Wiped on:               not set
Attention needed:       No errors known

Fortschritt innerhalb einer Pipe verfolgen

Das habe ich gera­de zufäl­lig ent­deckt: pv. Ein net­tes Tool!

$ whatis pv
pv (1) - monitor the progress of data through a pipe
$

Neh­men wir mal dd, wo man sich nie sicher sein kann, wie weit es schon ist:

# dd if=/dev/zero bs=100M count=10 | ssh target 'dd of=/tmp/1G'
10+0 records in
10+0 records out
1048576000 bytes (1.0 GB) copied, 97.2277 s, 10.8 MB/s
2048000+0 records in
2048000+0 records out
1048576000 bytes (1.0 GB) copied, 96.7274 s, 10.8 MB/s
#

funk­tio­niert, aber man hat wäh­rend des Kopie­rens kei­ner­lei Rück­mel­dung. Mit pv:

# dd if=/dev/zero bs=100M count=10 | pv -petrs 1000M | ssh target 'dd of=/tmp/1G'
10+0 records inB/s] [==========================================> ] 99% ETA 0:00:00
10+0 records out
1048576000 bytes (1.0 GB) copied, 98.3466 s, 10.7 MB/s
0:01:38 [10.2MiB/s] [==========================================>] 100%
2048000+0 records in
2048000+0 records out
1048576000 bytes (1.0 GB) copied, 97.8069 s, 10.7 MB/s
#

Nett, oder?
Die man­page hat noch viel schö­ne­re Bei­spie­le.

Sonos schnüffelt?

Das sieht mir doch komisch aus: dmesg von dem Play:5, der mit Ether­net am Netz hängt:

(3)eth0: Promiscuous mode enabled.
(3)device eth0 entered promiscuous mode
(3)eth1: Promiscuous mode enabled.
(3)device eth1 entered promiscuous mode

Äh, pro­mis­cuous mode ist die Betriebs­art, in der die Netz­kar­te jedes Paket auf­nimmt, was bei ihr vor­bei­ge­flo­gen kommt, auch wenn es gar nicht für sie bestimmt ist. Es ist sozu­sa­gen der Schnüf­fel-Mode.
War­um macht der Sonos das? (mehr …)

© Rainer Sokoll Frontier Theme