Archive for the ‘English’ Category.

YATE testing

How can you test your YATE installation?

By trying to place a call from the YATE machine to one of your lines.

  • set up and activate music on hold (moh), I attached mine to madplay. Thus I get moh/madplay as an available data source (another would be tone/ring)
  • start YATE if it is not already running.
  • telnet localhost 5038 to login to YATE (rmanager has to be activated!)
  • callgen set called=yourlinenumber
  • callgen set source=moh/madplay
  • callgen single

The device attached to the line should get a call with Caller ID “YATE”, which will be routed to moh/madplay, and automatically disconnected after a minute.

You need to setup your call only once, and can continue testing with callgen single as often as you need to.

Here’s more information in the original documentation.

Please note: you can’t call outgoing numbers (as set up in your regex routing table) this way.

Also, you may need to enable the callgen and the rmanager modules in your yate.conf, if they had been disabled.

Internet in India

This is an interesting list of India’s mobile operators.

Reliance Communications Ltd. of India offers a service called “Broadband+” which claims to have the fastest data rates available for wireless internet access in India at up to 3.1 Mbps download and 1.8 Mbps uploads in 64 selected cities (see below). The other locations sport 144kbps connections.

They offer connectivity in “24,000 towns and 6 lacs villages, as well as along major highways, railway“, but only the following 64 cities have the full speed coverage:

Agra,Ahmedabad,Ajmer,Anand,Ankleshwar, Banglore, Bhilwara, Bhiwadi,Bhopal,Bopal,Chandigarh,Chengalpatt,Chennai, Coimbatore,Daman,Delhi,Dewas,Dhar,Ernakulam,Erode,Gandhinagar,Guntur, Halol,Hazira,Hosur,hyderabad,Ibrahimpatnam Indore,Jaipur,Kakinada,Kanpur,Kolkata,Kota,Lucknow,Ludhina,Madgoa,Madurai,Mangalore,ManipalMhow,Mumbai,Mysore Nagpur,Nasik,Palladum,Panjim,Patiala,Perundurai,Pithampur,Pondicherry,Pune,Rajamundry,Salem,Silvassa Surat,Thiruvananthapuram,Tirupur,Udaipur,Ujjain,Vadodara,Vapi,Vellore,Vijaywada,Visakhapatnam,Ibrahimpatnam, Bhiwadi,Chengalpatt,Daman,Silvassa,Anand,Ankleshwar,Halol,Bopal,Hazira,Pithampur,Mhow,Panjim,Nasik,Pondicherry, Hosur,Perundurai,Thrissur
Kollam,Palakkad,Kancheepuram.

A suitable modem can be obtained from Reliance for 2299 Rs (ca. 40 €). They need to support “CDMA 1x RTT & CDMA 1xEVDO Rev A“.

This article states that UMTS is really another name for Wideband CDMA, which is different from 1XEV-DO = 1X Evolution Data Optimized CDMA2000 Reliance uses for their broadband product.

My Huawei E160 (which exclusively supports access via UMTS) will not work, I need to buy a new modem in India.

There are prepaid packs avalaible, for instance 6GB valid for 3 months come at Rs 1500 (ca. 25 €).

Here is a list of Reliance World Stores in Delhi:

Reliance World, E-24, Netaji Subash Marg, Daryaganj, New Delhi
Reliance World, Shop No. S-37, Main Market, Near Evergreen Sweets, Green Park, Delhi
Reliance World, D-115-116, Fateh Nagar, Jail Road, New Delhi
Reliance World, Reliance World, 29 UA Jawahar Nagar, Bungalow Road, Kamla Nagar, Delhi
Reliance World, 5A,Competent House, Jagatpuri Chowk, Krishna Nagar, New Delhi
Reliance World, K-3, Alankar Road-2, Central Market, Lajpat Nagar, New Delhi
Reliance World, 6, Community Centre, New Friends Colony, New Delhi
Reliance World, A-4/34, Paschim Vihar, New Delhi
Reliance World, 1/2 East Patel Nagar, New Delhi
Reliance World, A-7 Saraswati Vihar, Near Deepali Chowk, Outer Ring Road, Pitampura, New Delhi
Reliance World, E-18, NDSE Part 2, South Extension, New Delhi
Reliance World, C-40 Community Centre, Basant Lok, Opposite Priya Cinema, Vasant Vihar, New Delhi
Reliance World, 11 Bharti Artist Colony, Vikas Marg, Preet Vihar, Delhi

Access to MySQL

First I have a very good overview article for you:

http://dev.mysql.com/tech-resources/articles/migrating-from-microsoft.html

I’ve recreated the data structure in my SQL DB manually, now I can export the data from Access as a CSV textfile.

You can specify which delimiters and quotes Access uses to export the data. Access escapes characters by using them twice, i.e. the string

I am a “very” skilled developer

becomes

“I am a “”very”" skilled developer”

If you want to import that PHPMyAdmin, you should process the file first with a text editor and replace all double quotes (“”) by escaped quotes (\”).

I won 750.000 € … and a Toshiba laptop :-)

Obviously, this is an outrageous scam. I deem the Toshiba laptop part quite funny, though :-)

MICROWORD CORPORATIONS:
CUSTOMER SERVICE, MADRID SPAIN
REFERENCE NUMBER: JJN-RX/E-3929
BATCH NUMBER: 2010/330/MCV
LINK : <deleted>

OFFICIAL WINNING NOTIFICATION.

We are pleased to inform you of the released results of the Sweepstakes
Promotion organized by Microword Corporations,
in conjunction with the foundation for the promotion of software products,
held on 9th July,2010, in Madrid,Spain.
Your email address emerged as one of the online winning emails, in
the 3rd category and therefore attracted a cash
award of 750,000.00 (Seven Hundred and Fifty Thousand Euros Only) and a
Toshiba laptop.

To begin your claim,contact our
Foreign Transfer Manager via email or by telephone
below.

David Martins
Tel/ 0034 698 320 002
Email:infomicroword2@aol.com or <email deleted>

You are therefore advised to send the following information to the
Foreign transfer manager to facilitate them and process the COURIER of
your prize.

1. Full name…………..
2. Sex…………..
3. Country…………….
4. State………….
5. Contact Address……..
6. Telephone Number…….
7. Marital Status………
8. Occupation………….
9. Age………………..
10.Zip Code………….
11.Winning email address……..
12.Amount Won ……………

This Email Lottery is sponsored by Microword Corporations and all the
members of MSFT Word Resource Consortium Software
Promotion Companies including Intel Group, Toshiba and Dell Computers.
This internet E-mail draw is held periodically and
is organized to encourage the use of the Internet and promote computer
literacy worldwide.
Congratulations!!

Sincerely,
Anna Miguel
Promotions Manager

Zimbra LDAP and DNS

Nochmal durfte ich lernen: das DNS System ist einer der Angelpunkte eines IT-Unternehmens.

Deswegen muss es sowohl in der Hand eines erfahreren Administrators sein, als auch dieser immer Zugriff zu haben.

In meinem Fall sind das noch Nachwirkungen der Benutzung eines “Dumping-Providers” für Domains. Ich hatte darüber bereits einmal geschrieben.

Jetzt bin ich bei HTTP.net mit den Domains, die eine Domain (7vi.de) ließ sich aber nicht portieren da ich sie im System des alten Anbieters nicht lokalisieren konnte.

Unser System war zuletzt eine Mischung aus 7vi.de und ideaday.de;

Leider habe ich mich nicht rechtzeitig darum gekümmert, alles auf ideaday.de umzustellen. Als gestern abend 7vi.de wohl zu einem anderen Anbieter umgezogen & die DNS Einträge nicht ordnungsgemäß übernommen wurden, kam es in Zimbra heute zu einem Mailstau: die Mails konnten nicht mehr ausgeliefert werden, da das Zielsystem mail.7vi.de nicht erreichbar war.

Zimbra, LDAP and changing the hostname

We had the problem that we lost DNS administration control over one of our domains, which Zimbra was running on. Today I learned the hard way, that Zimbra depends on this external DNS servers, even for internal mail delivery.

Backup before using zmsetservername! It might be needed sorely later on!

Use the following to backup:

  • zmcontrol stop (as zimbra)
  • create the /backup/zimbra directory
  • install rsync if necessary (here’s a manpage)
  • (as root) rsync -avHK /opt/zimbra/ /backup/zimbra/

You might want to have a look at this Zimbra page, where I lifted the command from a script.

Proper DNS is essential for changing the hostname!

The best way to avoid trouble is to ensure, before changing the hostname, that the target host the LDAP server is running on (in my case identical with the main Zimbra host) is reachable. If it’s not, add it into the /etc/hosts file. (see below)

If you use zmsetservername to change the hostname (which is the only sensible way to do it, and usually works painlessly on 6.0+ systems), you might get a connection error to the LDAP server.

Starting ldap…done.

Unable to contact ldap://mail.oldhost.de:389: Connection refused
Unable to contact ldap://mail.oldhost.de:389: Connection refused

Attention: if you get this error when running zmsetservername, important parts of your configuration (including the accounts) have not been updated. Do not start Zimbra (thus accepting mails, which you would loose if restoring from backup). It will not work!

If you get the error:

  • if you started Zimbra and tried various things, shut it down, move /opt/zimbra to /opt/zimbra_2, so you can access any e-Mails which arrived in the meantime (they will be located in /opt/zimbra/data/postfix/spool/deferred – replace zimbra by zimbra_2 if you moved your folder)
  • Restore your backup to /opt/zimbra
  • Do not start Zimbra yet
  • Edit the /etc/hosts file as follows:

127.0.0.1 localhost.localdomain localhost
# Auto-generated hostname. Please do not remove this comment.
<your-IP> mail.newhost.de mail mail.oldhost.de

mail.7vi.de being the old hostname not being accessible anymore. Check that it is resolved once again

  • After that, you can run the zmsetservername, it will connect to the LDAP, and update all necessary files. No manual changes (apart from recreating the certificates) will be needed. If everything works, you will see output like the following:

Starting ldap…done.

Searching for ldap server entry…done.< BR>Renamingcn=mail.oldhost.de,cn=servers,cn=zimbra…done.
Updating zimbraServiceHostnameforcn=mail.newhost.de,cn=servers,cn=zimbra…done.
Updating zimbraMtaAuthHostforcn=mail.newhost.de,cn=servers,cn= zimbra…Updating zimbraSpellCheckURLforcn=mail.newhost.de,cn=servers,cn=zimbra…done.
Updating zimbraSmtpHostnameforcn=mail.newhost.de,cn=servers,cn=zimbra…done.
Updating zimbraVirtualHostname fordc=oldhost,dc=de…done.
Updating zimbraLogHostname forcn=config,cn=zimbra…done.
Updating zimbraMailHost for uid=admin,ou=people,dc=mail,dc=somehost,dc=de…done.

  • Now you can (should) restart your system, and start Zimbra
  • Go to the webadmin interface, and flush your mail queues. Wait a bit.
  • if you had the other system running, and some additional mails arrived to the deferred queue, you can just copy & paste them into the /opt/zimbra/data/postfix/spool/deferred folder – complete with their paths, i.e. 0/whatever to 0/whatever.
    Change the permissions to postfix:postfix
    Flush again – some mails should arrive double, but it’s better than loosing mails!

zmsetservername is located in /opt/zimbra/libexec by the way. It would not work without the prepended path for me either.

If you want to go the other way and fix LDAP routing: good luck, we tried for like 3 hours to get it going. Don’t forget, that you still need to update the users and a lot more other information. Trust me, restoring the backup is a better idea.

slapd will be running, but Zimbra won’t be able to connect to it. As LDAP is at the core of Zimbra, your possibilities will be limited. You can use

ps auxww | grep zimbra | grep slapd

to check whether slapd is running. This page might be a good start to try and solve the LDAP problems, if you have to do it that way. Remember: you probably need to run zmsetservername once again, or do the steps it does for you – as it could not connect to the LDAP before!

Problems still needing fixing:

  • update the certificates
  • /opt/zimbra/libexec files don’t seem to be in the global PATH
  • (maybe related to the problem above): logging does not work
  • reenable postgrey

Compiling with Closure

Closure is a JavaScript optimizing compiler (targetting optimized JavaScript) by Google. For a very good introduction to closure see this blog article.

Illegal boolean value –js problem
I am trying to compile the following:

java -jar compiler.jar –compilation_level=ADVANCED_OPTIMIZATIONS –third_party –js=jquery.js –js=snippet-one.js –js=jquery-ui.js –js=jquery.debug.js –js=snippet-two.js –js=jajax.js –js=jstorage.js –js=jcompress.js –js=jquery.windowframe.js –js=jquery.treeview.min.js –js=jquery.bgiframe.js –js=jquery.dimensions.js –js=jquery.tooltip.min.js –js=jquery.json-2.2.min.js –js=js_debug_toolbar.js –js=CFInstall.min.js –externs=snippet-three.js –js=visualisation.js –externs=snippet-four.js –js_output_file=__output.js

Which results in this error:

Illegal boolean value: –js

I merged the js files by hand into one big file and tried this:

java -jar compiler.jar –compilation_level=ADVANCED_OPTIMIZATIONS –third_party –js=jquery_one.js –externs=externs.js –js_output_file=output.js

Which still results in the same error:

Illegal boolean value: –js

The solution to this problem: you need to specify the –third_party tag with true, like this:

java -jar compiler.jar –compilation_level=ADVANCED_OPTIMIZATIONS –third_party=true –js jquery_one.js –externs externs.js –js_output_file output.js

Compiling JQuery with advanced optimizations does not work

Yes, it does not work! See this website for details.

We need to switch back one optimisation level for the script to work again …:

java -jar compiler.jar –compilation_level=SIMPLE_OPTIMIZATIONS –third_party=true –js=jquery.js –js=snippet-one.js –js=jquery-ui.js –js=jquery.debug.js –js=snippet-two.js –js=jajax.js –js=jstorage.js –js=jcompress.js –js=jquery.windowframe_patched.js –js=jquery.treeview.min.js –js=jquery.bgiframe.js –js=jquery.dimensions.js –js=jquery.tooltip.min.js –js=jquery.json-2.2.min.js –js=js_debug_toolbar.js –js=CFInstall.min.js –externs=snippet-three.js –js=visualisation.js –externs=snippet-four.js –js_output_file=__output2.js

250 post celebration!

A couple of days ago this blog has hit 250 posts. Since the start of it I had 2.183 visits, 1.714 unique visitors from 90 different countries. And I’m just rolling up my sleeves :-)

gal-happybirthday

Way to go!

paperplaneAnother quirky from Ananova:

http://web.orange.co.uk/article/quirkies/Angry_air_steward_storms_down_slide

“(…) Mr. Slater (the flight attendant) grabbed the intercom and said: “To the passenger who called be a mother ****er, **** you. I’ve been in the business 28 years. I’ve had it. That’s it.”

He then activated the emergency exit, grabbed two beers from the galley, and then slid down the inflatable slide on to the tarmac, reports the Wall Street Journal.”

The ducks revenge

009d01cb3724$87b4bb30$1eb2a8c0@attit

Thank you Astrid !!!

vzmigrate

Migrating a live OpenVZ server’s nodes to another OpenVZ server:

Create a way for the origin host to speak to the target via SSH without asking for a passwort:

http://www.puddingonline.com/~dave/publications/SSH-with-Keys-HOWTO/document/html/SSH-with-Keys-HOWTO-4.html

(Hint: leave the passphrase empty, using ssh-keygen without any parameters will create a Protocol version 2 – key id_rsa.pub)

Then use this website to migrate

http://wiki.openvz.org/Migration_from_one_HN_to_another

vzmigrate -r no -v 10.1.5.6 101

-r no = do not remove the area from source
-v = verbose
10.1.5.6 = the target IP
101 = the VE ID

It is even better to include the –keep-dst switch

–keep-dst = do not clear the private area on the target server after resync. I’ve looked at the source – as it uses rsync to do the job it’s safe to provide this switch (it will reexamine your files and update them if necessary).

Also I ran into a strange problem with Quotas being off – it would create the conf Files, sync the private area, and then delete the conf files again. Just copy them manually to the target & you’ll be fine. (Also you could cp them while it is syncing the private area and mv them back later.)