Archiv des Autors: Soeldner

Über Soeldner

Biographische Angaben

JTLwawi doppelte Artikel finden

Manchmal ist es notwendig doppelte Artikel in der WaWi zu filtern. Eine Übersicht (csv,calc) erhält man wie folgt:
SQL Server Management Studio starten, Datenbank auswählen und folgende Abfrage ausführen

SELECT cArtNr, COUNT(*) AS Anzahl FROM tartikel GROUP BY cArtNr HAVING count(*) >1

Das Ergebnis ist eine Liste mit doppelten (mehrfachen) Artikeln. Im Feld Anzahl erhält man die Anzahl der vorhandenen Artikelnummer. Anschließend kann man mit Hilfe dieser Liste in der Warenwirtschaft aufräumen.

Festplatten über 2 TB

Wenn man Festplatten größer 2 TB verarbeiten möchte, kommt man um GPT (GUID Partition Table) Partitionen nicht mehr umher. Somit scheidet das Tool fdisk aus :) und parted wird dein Freund.

In diesem Beispiel gehe ich von einem HW Raid mit einem Volumen von 6TB aus. Im System via /dev/sdb ansprechbar. Formatiert werden soll das Volumen anschließend als ext3.

Parted starten

sudo parted /dev/sdb

GPT setzen

(parted) mklabel
New disk label type?gpt

Ganze Festplatte als ext3 setzen

(parted) mkpart primary
File system type? [ext2]? ext3
Start? 1
End? -1

parted beenden

quit

anschließend das ganze als ext3 formatieren

mkfs.ext3 /dev/sdb1

Kaffee, Kekse, warten.

Windows CMD Prozesse beenden

Manchmal kommt es bei einem LINUX Admin auch vor, dass er bei Windows Fragen angerufen wird …

Problem des Anrufers, LibreOffice und „weitere Programme“ ließen sich nicht mehr starten. Ein blick in den Taskmanager zeigt, dass die Programme mehrfach gestartet waren bzw. sind. Man könnte jetzt jeden Prozess einzeln beenden… Oder neu Starten ;)

Dank CMD kann man auch alle gleichnamigen in einem Rutsch beenden. Ein hoch auf den Schalter /IM :)

>taskkill /IM soffice.exe /F

Dies beendet zB. alle Tasks mit der Bezeichnung soffice.exe.

Nochmal kurz alle Befehle die ich benötigt habe.

>tasklist

Zeigt die aktuelle Taskliste. Man könnte auch den Taskmanager starten.

>taskkill /pid 3598

„Tötet“ den Prozess mit der PID 3598. Man kann auch mehrere PIDs auf einmal „killen“.

>taskkill /pid 3598 /pid 4268 /pid 4658

Wie auch immer. Ein wenig Konsolenfeeling ist nett ;)

Bildbearbeitung auf Konsole

Aufgabe:

.NEF Fotos in jpg umwandeln und anschliessend auf eine Maximalgrösse reduzieren.

Als erstes umwandeln, am besten alles in einem Rutsch

for img in *.NEF; do convert "$img" "$img.jpg"; done

Danach auf 1024px beschneiden (jeweils längste Seite)

for i in *.jpg; do convert -resize 1024x1024 -quality 80 $i `basename $i .jpg`-angepasst.jpg; done

Alle Dateien bleiben erhalten.

CONTAO Link verschiedene Sprachen

Soll ein Link in verschiedenen Sprachen dargestellt werden, hilft die Variable iflng. Als erstes ein Beispiel um Text in verschiedenen Sprachen auszugeben

{{iflng::de}}Hinweis links unten{{iflng}}{{iflng::ru}}Обратите внимание на нижний левый{{iflng}}

Das ganze dann mit einem Link

<a href="hinweise.html.html">{{iflng::de}}Hinweis links unten{{iflng}}{{iflng::ru}}Обратите внимание на нижний левый{{iflng}}</a>

Und jetzt noch mehr Schachteln und Variablen :)

Beispiel mit einem Bild im Header zur Startseite. Die Deutsche Startseite hat die ID 2 und die Russische ID 8.

<a href="{{env::path}}{{iflng::de}}{{link_url::2}}{{iflng}}{{iflng::ru}}{{link_url::8}}{{iflng}}" title="{{env::website_title}}">
  <img src="files/logo.jpg" alt="{{env::website_title}}" />
</a>

Insert-tags sind toll.

 

SPAMschutz Debian postfix ISPconfig

Nach mehrwöchigen Tests hier eine Konstellation die in meiner Testumgebung am besten funktioniert und am wenigsten „false positive“ gebracht hat.

Voraussetzung ist ein zusätzlich installiertes postgrey.

/etc/postfix/main.cf anpassen

[...]
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_invalid_hostname, reject_non_fqdn_hostname, reject_unknown_recipient_domain, reject_non_fqdn_recipient, reject_unauth_destination, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_rbl_client zen.spamhaus.org, reject_rbl_client cbl.abuseat.org,reject_rbl_client dul.dnsbl.sorbs.net,reject_rbl_client ix.dnsbl.manitu.net, check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, check_recipient_access mysql:/etc/postfix/mysql-virtual_policy_greylist.cf
[...]
smtpd_sender_restrictions = reject_non_fqdn_sender, reject_unknown_sender_domain, check_sender_access regexp:/etc/postfix/tag_as_originating.re , permit_mynetworks, permit_sasl_authenticated, check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf, check_sender_access regexp:/etc/postfix/tag_as_foreign.re
[...]

postfix restart

/etc/init.d/postfix restart

Bedingt durch die Greylist können sich mails ca. 5 Minuten verzögern.

Weiterhin sollte man die Logs im Auge behalten ob nicht irgend welche Mails gegen die Blacklist rennen.

tail -f /var/log/mail.log

Evtl. lohnt vorher ein Blick auf die schwarzen Listen mit Hilfe der mxtools usw.

Squirrelmail öffnet sich nicht

und die Datei wird nur zum download angeboten.

öffne

vim /etc/apache2/mods-enabled/suphp.conf

suche

AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-suphp

ändere in

#AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
#suPHP_AddHandler application/x-httpd-suphp

Apache neu laden

/etc/init.d/apache2 reload

 

Mint 16 Aptana Studio beendet sich

Es geht in diesem Beitrag um die Stand-Alone Version von Aptana Studio 3.4.2 unter Linux Mint 16 (Petra).

Symptom: Aptana beendet sich nach dem Start sobald man auch nur in ein Fenster klickt. Startet man das ganze von der Konsole, erhält man als Fehler

Failed to write core dump. Core dumps have been disabled. To enable core dumping, try „ulimit -c unlimited“ before starting Java again

Bei mir hat folgender Workaround geholfen (ANMERKUNG es kann auch sein das alles mit OpenJDK funktioniert. Habe ich nicht getestet. Nach Aussage von Aptana wird nur Oracle unterstützt)

Als erstes alles an OpenJDK entfernen was installiert ist. Im folgenden mal das was auf meiner Testmaschine installiert war.

[bash]
~ $ sudo aptitude purge openjdk-7-jdk openjdk-7-jre openjdk-7-jre-headless openjdk-7-jre-lib openjdk-6-jre openjdk-6-jre-headless openjdk-6-jre-lib
[/bash]

Dann das Repo von WebUp einbinden, ein paar Abhängigkeiten und Oracle installieren.

[bash]
~ $ sudo apt-get install libjpeg62 libwebkitgtk-1.0-0 git-core
~ $ sudo add-apt-repository ppa:webupd8team/java
~ $ sudo apt-get update
~ $ sudo apt-get install oracle-java7-installer
[/bash]

In dem entpackten Verzeichnis von Aptana befindet sich eine Datei Namens AptanaStudio3.ini. Diese öffnen

[bash]
~ $ vim AptanaStudio3.ini
[/bash]

und am Ende folgendes Einfügen

[bash]
-Dorg.eclipse.swt.browser.DefaultType=mozilla
[/bash]

Die ini sieht dann ungefähr so aus

[bash]
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
–launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505
–launcher.XXMaxPermSize
256m
–launcher.defaultAction
openFile
-name
Aptana Studio 3
-vmargs
-Xms40m
-Xmx512m
-Declipse.p2.unsignedPolicy=allow
-Declipse.log.size.max=10000
-Declipse.log.backup.max=5
-Djava.awt.headless=true
-Dorg.eclipse.swt.browser.DefaultType=mozilla
[/bash]

Die Diskussion zu dem ganzen findet man bei den Käfern von Eclipse.

Contao TinyMCE Rechtschreibprüfung

Weil es bei mir gerade aktuell auf dem Tisch lag :) In Contao funktioniert bei den Beiträgen die Rechtschreibprüfung nicht. TinyMCE (Rich Text Editor) bedient sich der Google API zur Rechtschreibprüfung. Dieser Dienst wurde seitens Google ende letzten Jahres eingestellt.

Man kann sich damit helfen, dass TinyMCE dem Browser Wörterbuch „glaubt“.

Die Datei /assets/tinymce/tiny_mce.js öffnen (Sehr langer Spagetticode) und nach

browser_spellcheck&&!p.gecko_spellcheck){r.body.spellcheck=false

suchen. Dieses ändern in

browser_spellcheck&&!p.gecko_spellcheck){r.body.spellcheck=true

Jetzt vertraut TinyMCE dem Wörterbuch des Browsers und die Rechtschreibprüfung funktioniert. Bei mir betroffen waren Contao 3.2.8 und 3.2.9.