The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,839 other subscribers

Archive for the ‘Power User’ Category

Date format converter from Text or Unix/Mac/Filetime/Microsoft to virtually any readable form

Posted by jpluimers on 2017/02/09

Brilliant Date format converter from dates in Text (almost any format) or timestamp numbers in Unix, Mac, Filetime or Microsoft (which is the same as Delphi TDateTime) format to any of these formats:

Text Date:
Date in human-readable text
Wednesday, March 23, 2016 4:05:39pm
RFC 822:
RFC 822 formatted date
Wed, 23 Mar 2016 16:05:39 +0000
ISO 8601:
ISO 8601 formatted date
2016-03-23T16:05:39+00:00
UNIX Timestamp:
seconds since Jan 1 1970
1458749139
Mac Timestamp:
seconds since Jan 1 1904
3541593939
Microsoft Timestamp:
days since Dec 31 1899
42452.670590278
FILETIME:
100-nanoseconds since Jan 1 1601
131032227390000000
01D1851D:D7B58B80

Source: Date format converter

–jeroen

Posted in *nix, .NET, Apple, Delphi, Development, Mac, Mac OS X / OS X / MacOS, Power User, Software Development | 1 Comment »

Determining the current shell in *n*x variants including ESXi

Posted by jpluimers on 2017/02/08

On most systems, I use bash as shell, but not all systems have it, for instance the shell.xs4all.nl server uses tcsh and ESXi 4+ uses a very limited ash shell from busybox (ESX 4 had bash though).

There is this huge script that covers many shell and operating system versions (even DOS, Windows) and interpreters (python, ruby, php, etc) what shell is this which I got through Stéphane Chazelas‘s answer in linux – determine shell in script during runtime – Unix & Linux Stack Exchange

I wanted a shorter thing that works in current Linux, BSD, OS X and ESXi versions.

Some very short scripts are less reliable, for instance echo $SHELL looks nice, but isn’t always set.

Similar for echo $0 which will fail for instance if it shows as sh but in fact is a different shell in disguise.

This works for bash, tcsh and busybox sh, is a bit more precise than getting $0. It’s based on HOWTO: Detect bash from shell script – Stack Overflow:

lsof -p $$ | awk '(NR==2) {print $1}'

But on ESXi it shows this because lsof doesn’t take any parameter there and just dumps all information:

----------+---------------------+---------------------+--------+------------------

It’s because lsof on ESXi always shows this header where Cartel and World aren’t exactly well documented:

Cartel | World name | Type | fd | Description
----------+---------------------+---------------------+--------+------------------

Empirically for non VM related processes, it looks like the Cartel is the PID and World name the command.

On Linux and BSD based systems, the header looks like this, so command and PID are reversed in ESXi:

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

This command then works on both ESXi, OS X, Linux and BSD assuming you can word search for the PID and noting that PID/command will be reversed on ESXi as compared to OSX/Linux/BSD:

lsof -p $$ | grep -w $$ | awk '(NR==2) {print $1,$2}'

–jeroen

Posted in Apple, bash, BSD, Development, iMac, Mac, Mac OS X / OS X / MacOS, Mac OS X 10.4 Tiger, Mac OS X 10.5 Leopard, Mac OS X 10.6 Snow Leopard, Mac OS X 10.7 Lion, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, MacMini, OS X 10.10 Yosemite, OS X 10.11 El Capitan, OS X 10.8 Mountain Lion, OS X 10.9 Mavericks, Power User, Scripting, Software Development | Leave a Comment »

Casting the audio of application on your Linux machine via Chrome to a ChromeCast

Posted by jpluimers on 2017/02/06

Hopefully by now mkchromecast [WayBack] works on more Linux versions (and maybe even Mac OS X is better supported [WayBack]), but back then it was only available for Ubuntu 16.10 and up:

Do you want to stream the audio from Rhythmbox, VLC or another Linux app to your TV through Chromecast? Well, we’ve found a nifty little Linux tool that lets you do just that.

Source: How to Send Your Linux Desktop Audio to a Chromecast – OMG! Ubuntu!

The tool is at github: Linux · muammar/mkchromecast Wiki  [WayBack]: mkchromecast – Cast macOS, or Linux Audio to your Google Cast Devices

–jeroen

via:

Posted in *nix, Chrome, Chromecast, Google, Linux, Power User, Ubuntu | Leave a Comment »

dubbelglas, dubbel glas, dubbele beglazing, isolatieglas

Posted by jpluimers on 2017/02/06

Veel informatie over dubbelglas, dubbel glas, dubbele beglazing, isolatieglas met typen, toepassingen, fabrikanten, etc.

En mocht er wat breken:

Voor een compleet overzicht van alle mogelijke glasbreuken download de Folder Glasbreuken als PDF. Thermische breuken Een thermische breuk ontstaat, wanneer de typische materiaalkarakteristieken van het glas in relatie tot de kwaliteit van de rand van het glas en de bestendigheid … Continue reading →

Source: Glasbreuken – van der Ham Glasgroothandel BV

De laatste heeft sowieso een hele verzameling nuttige Veel gestelde vragen – van der Ham Glasgroothandel BV

–jeroen

Posted in LifeHacker, Power User | Leave a Comment »

How to Build Your Own Penetration Testing Drop Box – Black Hills Information Security

Posted by jpluimers on 2017/02/03

TL;DR

At testing time, the Hardkernel’s ODROID-C2 absolutely destroyed the competition in this space, so buy this:

Hardware Shopping List (links current as of 8/2/2016)

After that continue the article and start with the Initial Setup of the Kali Image

Source: How to Build Your Own Penetration Testing Drop Box – Black Hills Information Security

–jeroen

via: Joe C. Hecht originally shared to Single Board Computers and Virtual Private Servers (Hardware).

Posted in *nix, Kali Linux, Linux, Pen Testing, Power User, Security | Leave a Comment »

Reverso | Free online translation, dictionary

Posted by jpluimers on 2017/02/03

Translates into various languages, options various English language tools

Translates into various languages, options various English language tools

Great stuff:

Online translation in French, Spanish, German, Italian, Russian, Portuguese, Chinese, Arabic, Hebrew, Japanese. The other options are focussed on English.

–jeroen

Posted in LifeHacker, Power User | Leave a Comment »

Dit is wat we weten over het nieuwe erfpachtstelsel – Amsterdam – PAROOL

Posted by jpluimers on 2017/02/03

Voor mijn archief: [Archive.isDit is wat we weten over het nieuwe erfpachtstelsel – Amsterdam – PAROOL

Amsterdam stapt in 2017 na 120 jaar over op een nieuw erfpachtstelsel. Dit is wat we nu weten over de plannen en de gevolgen voor huizenbezitters.

–jeroen

Posted in LifeHacker, Power User | Leave a Comment »

When the x86 Server JVM.DLL cannot be found

Posted by jpluimers on 2017/02/02

Searching for the below error message didn’t reveal useful results.

Error: missing `server' JVM at `C:\Program Files (x86)\Java\jre1.8.0_111\bin\server\jvm.dll'.
Please install or use the JRE or JDK that contains these missing components.

First the actual solution

[WayBackSetup Elasticsearch | Elasticsearch Reference [5.1] | Elastic provided this solution that was introduced in[WayBackSetup Elasticsearch | Elasticsearch Reference [5.0] | Elastic:

Elasticsearch ships with default configuration for running Elasticsearch on 64-bit server JVMs. If you are using a 32-bit client JVM, you must remove -server from jvm.options and if you are using any 32-bit JVM you should reconfigure the thread stack size from -Xss1m to -Xss320k.

I had a 32-bit JRE installation as browsers usually are 32-bit and that’s what my Java need originated from.

So I edited config\jvm.options with this change:

49a50,51
> ## see https://www.elastic.co/guide/en/elasticsearch/reference/current/setup.html
> ## prevent errors like Error: missing `server' JVM at `C:\Program Files (x86)\Java\jre1.8.0_111\bin\server\jvm.dll'.
51c53
< -server
---
> # -server

Note I left out the -Xss1m change out as that entry wasn’t present in config\jvm.options (which is odd, but hey: documentation is always behind on code).

In a server environment, I’d probably not run Elasticsearch on Windows but on Linux and there all my software is x64 so the error should not happen.

Solving the 2 gigabyte memory limit

Immediately after trying this, I got an error about memory size:

Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heap

The reason is that in the same config\jvm.options file, elasticsearch reserves 2 gigabyte of heap space which on either experimental or 32-bit systems is an enormous amount of memory. So I made this change:

22,23c22,25
< -Xms2g
< -Xmx2g
---
> #-Xms2g
> #-Xmx2g
> -Xms1g
> -Xmx1g

Back to my search

The search for elasticsearch “Error: missing server' JVM atC:\Program Files (x86)\Java\” only revealed one result [WayBackSearch Lucene – pointing to [Archive.is as WayBack fails to saveES 5.0 Alpha 3 error on starting up engine – Elasticsearch – Discuss the Elastic Stack with this content:

I have installed ES 5.0.0 Alpha 3 and try to start it up. However, it gives me the following result.

Error: missing `server' JVM at `C:\Program Files (x86)\Java\jre1.8.0_91\bin\server\jvm.dll'.
Please install or use the JRE or JDK that contains these missing components.

It didn’t happen to my another version of ES. Is there any errors for it?

12 DAYS LATER

Hi,

does this work now? This seems to be a problem with Oracle JRE on Windows. The respective page6says:

    jre\bin\server\
        On Microsoft Windows platforms, the JDK includes both
        the Java HotSpot(TM) Server VM and Java HotSpot Client VM.
        However, the Java SE Runtime Environment for Microsoft Windows
        platforms includes only the Java HotSpot Client VM. Those wishing
        to use the Java HotSpot Server VM with the Java SE Runtime
        Environment may copy the JDKs jre\bin\server folder to a 
        bin\server directory in the Java SE Runtime Environment. Software
        vendors may redistribute the Java HotSpot Server VM with their
        redistributions of the Java SE Runtime Environment.

I suggest you just install a JDK. Then you should be fine (or you use the workaround they suggest).

Daniel

Or directly from the [WayBackJRE 8 README:

      bin\server\       On Microsoft Windows platforms, the JDK includes both
                        the Java HotSpot™ Server VM and Java HotSpot 
                        Client VM. However, the Java SE Runtime Environment 
                        for Microsoft Windows platforms includes only the 
                        Java HotSpot Client VM. Those wishing to use the 
                        Java HotSpot Server VM with the Java SE Runtime
                        Environment may copy the JDK's jre\bin\server folder 
                        to a bin\server directory in the Java SE Runtime 
                        Environment. Software vendors may redistribute the 
                        Java HotSpot Server VM with their redistributions of 
                        the Java SE Runtime Environment.

–jeroen

Posted in Development, Java, Java Platform, Power User, Software Development | Leave a Comment »

Some ChromeCast URLs

Posted by jpluimers on 2017/02/01

I need to check these against a Chromecast v2 as the below URLs are from a v1 device:

More is possible by using cURL: Chromecast Hacking Has Begun | fiquett.com

sleep 8h; while true; do
curl -H "Content-Type: application/json" http://192.168.71.113:8008/apps/YouTube -X POST -d 'v=somevideo';
done

Related:

–jeroen

via:

Posted in Chromecast, Communications Development, Development, Google, Hardware Interfacing, HTTP, https, Internet protocol suite, REST, Security, TCP | 3 Comments »

pi-hole/pi-hole: A black hole for Internet advertisements (designed for Raspberry Pi)

Posted by jpluimers on 2017/01/31

pi-hole – A black hole for Internet advertisements (designed for Raspberry Pi)

Works on most Debian distributions as well. Hopefully on opensuse one day as well.

Source: pi-hole/pi-hole: A black hole for Internet advertisements (designed for Raspberry Pi)

Not exactly the nicest way of installing though:

curl -L install.pi-hole.net | bash

Source: Pi-Hole: A Black Hole For Internet Advertisements

Source: In the past year, a similar threat has begun to emerge on mobile devices:…

Note that any ad-block mechanism needs curation to white/black list some stuff. But: who does that and who watches the curators?

Source: In the past year, a similar threat has begun to emerge on mobile devices: So-called overlay malware that impersonates login pages from popular apps and… – Jeroen Wiert Pluimers – Google+

via:

Some more links for when you get this going:

Changing hostname

As all raspbian hosts advertise their hostname as raspberrypi it is confusing to set them apart, so I changed the hostname in these files:

/etc/hostname
/etc/hosts
/etc/wicd/wired-settings.conf
/etc/wicd/wireless-settings.conf

Then rebooted (probably could have done sudo /etc/init.d/hostname.sh) to force the new hostname to be used everywhere.

DHCP versus static IP

Note that pi-hole by default converts the DHCP assigned address on eth0 to a static one. This makes it harder to use pi-hole in these situations:

  • preparing a pi-hole on network A and deploying it on network B
  • using pi-hole on a DHCP based network where the DHCP server hands out fixed IP addresses based on MAC

To get going I:

  1. filed an issue Work with DHCP address instead of static IP address configuration. · Issue #629 · pi-hole/pi-hole
  2. plugged in the Edimax EW-7811Un 150Mbps 11n Wi-Fi USB Adapter  which appeared as wlan0 in the ifconfig list
  3. failed in getting wicd-curses to work: it would only detect half of the WiFi networks that iwlist wlan0 scan detects.
  4. used the steps at Setting WiFi up via the command line – Raspberry Pi Documentation to get WLAN going:
    1. perform sudo iwlist wlan0 scan | grep ESSID scan to get a list of networks and their (E)SSID names
    2. append the below fragment to the end of /etc/wpa_supplicant/wpa_supplicant.conf and correct the value for ssid to the ESSID (keep the double quotes around it) and psk to the password for that ESSID (also keep the double quotes around it)
    3. performed sudo ifdown wlan0  and sudo fup wlan0 to force a WiFi connection refresh
    4. waited 30 seconds for a DHCP address to appear in ifconfig for wlan0
network={
    ssid="The_ESSID_from_earlier"
    psk="Your_wifi_password"
}

 

 

–jeroen

Read the rest of this entry »

Posted in *nix, bash, Development, Linux, openSuSE, Power User, Scripting, Software Development, SuSE Linux, Tumbleweed | 1 Comment »