Upgrade Microsoft Hyper-V Linux IC from 3.3 to 3.4

5 Kommentare
Recently I had to upgrade the integration components on a lot of CentOS virtual systems running on a Hyper-V failover cluster. During the upgrade procedure I faced a couple of things, which I'd like you to be aware of. The version on the guest VM is CentOS 6.3, the Hyper-V failover cluster is running under Windows Server 2008 R2 SP1 and consists of 6 nodes.

Below is the output of LVM related commands before starting the upgrade of Linux IC:

Find differences in Public Folder replicas

0 Kommentare
This is a small piece of code to run it in EMS and to help you finding differences in item number in a public folder structure. The powershell script shows the number of elements in each sub folder for the both of Exchange 2010 servers, which public folder replicas are located on. Below is an example output of the script.

[PS] C:\>C:\scripts\get-pffolderdiffs.ps1

Path                                       ItemCount_SRV1 ItemCount_SRV2
----                                       -------------- --------------
\PF1\VPC                                                 0             0
\PF1\VPC\Exec                                         1739          1739
\PF1\VPC\Exec\2007                                   20406         20406
\PF1\VPC\Exec\2008                                   21952         21952
\PF1\VPC\Exec\2009                                   27804         27804
\PF1\VPC\Exec\2010                                   16888         16888
\PF1\VPC\Exec\2011                                   39021          1869
\PF1\VPC\Exec\2012                                   15734         15734

Please note that the script is provided AS IS without any guarantee:


Get-PublicFolder -Server $SR1 -ResultSize unlimited -Identity $PF -Recurse `
  | Sort-Object -Property @{expression={$_.ParentPath + '\' + $_.Name}} |
ft @{label="Path"; expression={ $_.ParentPath + "\" + $_.Name }},
   @{label="ItemCount_$SR1"; expression={ `
     (get-PublicFolderStatistics -Server $SR1 ($_.ParentPath + '\' + $_.Name) `
  | Select-Object -ExpandProperty ItemCount) }}, `
   @{label="ItemCount_$SR2"; expression={ `
     (get-PublicFolderStatistics -Server $SR2 ($_.ParentPath + '\' + $_.Name) `
  | Select-Object -ExpandProperty ItemCount) }} -auto

Check_MK check to show some data about Ex2010 mailbox databases

20 Kommentare
A few days ago I finished to test a new check for check_mk and published it as package at Check_MK Exchange. I named the check "Ex2010_MBDB_Info". In this article I'd like to share a couple of details about the check and its functionality.

The purpose of the check is to get the size of mailbox databases and the count of the mailboxes in each of them. The check package consists of the check itself, the plugin for check_mk agent, the perf-o-meter helper file and the pnp-template.

Extending a LVM partition in a Hyper-V guest VM running CentOS

0 Kommentare
Imagine a scenario like the following: you have a Hyper-V host and a CentOS 6.3 guest. The CentOS guest has Microsoft Integration Services for Linux 3.3 installed and running. A data file system on the guest is running out of the free space:

[root@myhost ~]# df -h /data/svn/
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/data-svn   99G   93G  964M  99% /data/svn

Although the partition is a part of LVM, but your entire disk is almost full. In the article I'd like to show how you can get rid of this without getting your services offline.

Lock and unlock an ActiveSync device

2 Kommentare
Assume, a mobile phone or tablet device with a buggy implementation of the ActiveSync protocol causes a lot of traffic or a heavy load in your Exchange 2010 infrastructure (see this article of mine for an example). You surely could disable the ActiveSync feature for the Mailbox user to disable the access for the user completely. A better way is however to disable only the device, which causes the troubles.

Exchange management shell offers cmdlets to manage ActiveSync devices:

Exchange 2010 transaction logfiles grow very fast

12 Kommentare
A few days ago I had a problem with transaction log files on a Exchange 2010 SP2 RU1 mail server. They grown and grown and grown... I saw above 160,000 (one hundred sixty thousand !!!) files belonging to a single mailbox database. The mailbox database itself was ca. 30 GByte in size. It was then no surprise that the appropriate volume exceeded it capacity after only a couple of hours.

I wouldn't even have noticed the issue but the appropriate backup job that should flush transaction log files among other things failed and didn't run. Because of the failed backup job the transaction log files were not flashed and were not removed but grown.

Transport-Rule in Exchange 2010 to prefix the Subject

1 Kommentare
Assume, you'd like to prepend the subject of an e-mail with a prefix, if the e-mail has been sent from the certain computer and if it has a certain sender name. In this case you can create a new transport rule with Powershell.

For example, the subject should be prepended by the phrase '[Alert]', if the From address contains 'my_sender@company.com' AND if the computer's name, which the email is sent from, is 'my_computer.company.com'. The powershell command below configures this:

-Name 'My_transport_rule' -Comments 'My comment'
-HeaderContainsMessageHeader 'Received' -HeaderContainsWords 'my_computer.company.com '
-FromAddressContainsWords 'my_sender@company.com' -PrependSubject "[Alert] "

After the command has been executed the rule is active. It acts in the whole Exchange organization and is not restricted to a single server.

Please note that the argument for the parameter -HeaderContainsWords must contain the name, which the email program on the sender computer actually uses. If the new rule doesn't work as expected, look into the internet headers of a test e-mail and note the computer name, which is in the line Received.

Check_MK plugin to get firmware and service tag of a DELL Powerconnect switch

2 Kommentare
check_mk is a great monitoring application! I've been trying it for a couple of days first and I am convinced that check_mk has a big future due to its nice conception, super built-in capabilities and the ability to create own check plugins with less effort.

I also tried to create a new check plugin for DELL Powerconnect switches, because the check plugins for such switches provided by check_mk distribution cannot show the firmware version and the service tag of the switch. I copied a provided check plugin (to be more accurate: snmp_info)and modified it a little bit. I'd like to share my result below, please enjoy it!

Sibirien / Сибирь 2007

0 Kommentare
Hier geht es zum neu veröffentlichen Fotoalbum Sibirien / Сибирь 2007. Fotos im Fotoalbum sind während einer Resise nach Nowosibirsk im Jahr 2007 entstanden. Außer Nowosibirsk zeige ich noch einige Fotos aus der Stadt Anschero-Sudschensk.
Aus Sibirien / Сибирь 2007

Symantec Backup Exec and Restore to Hyper-V Failover Cluster

1 Kommentare
Assume, that your organization uses Symantec Backup Exec 2010 to backup Hyper-V VMs. What have you to keep in mind, if you need to restore a Hyper-V VM from a backup created by Backup Exec 2010? I've written a couple of points that could be useful to think of to plan such a restore job:

  • Backup Exec 2010 can restore as to the same Hyper-V failover cluster, where the VM is backed up as well to a different Hyper-V failover cluster. This method can be used to move VMs between the Hyper-V clusters, especially if the Hyper-V clusters are either not connected at all or connecvted through a WAN at a low speed.
  • Backup Exec 2010 doesn't use failover cluster capabilities while restoring a Hyper-V VM and therefore restores to a single Hyper-V node in the cluster directly.
  • The restored VM is not failover enabled, because it is restored only to a Hyper-V node. To make the VM failover enabled you must move the restored VM to another Hyper-V node in the failover cluster. Either you export the VM on the Hyper-V node with Hyper-V Manager and import it with Failover Cluster Manager or you can use Microsoft SCVMM to move the VM. Depending on the method of making the VM failover enabled and on the VHD size it takes either much time or a lot of time. You must take this fact into account, when you develop your backup and recovery concept.
  • Make sure that you enabled the option in the restore job settings to overwrite the existing VM. If you don't enable the option and you do have a VM with the same name existing on your Hyper-V node, Backup Exec 2010 restore job fails only after the whole data is written back from the tape to the Hyper-V node and the VM is going to be registered in Hyper-V. The correction the failure and a new run of the restore job cost time.
  • Pay attention to the free space of the system drive (usually C:) of the Hyper-V node, which Backup Exec chosen as target to recover to, because the standard restore path points to the system drive.
  • After the restore has finished you should review the hardware settings of the restored VM, especially if you restored from one Hyper-V failover cluster to a different one. This check includes such things like network name and the VLAN id and may be RAM and CPU settings too.
  • After the restored VM is up you must check the network settings inside of the VM to be sure, it has network access after the restoration. 

Пассив: Страдательный залог успеха!

0 Kommentare
Поговорим про построение предложений в современном немецком разговорным языке, которым в русском языке соответствует страдательный залог. Я назвал бы три способа, с помощью которых можно образовать страдательный залог, т.е. такой, который "показывает «претерпевание» объектом какого-либо действия" (см. полную цитату в Википедии). На самом деле, далеко не каждый раз можно образовать одно предложение всеми тремя способами. Кроме того, в зависимости от контекста один из способов образования пассива может звучать довольно неформально.

Script to inform about new updates in CentOS

0 Kommentare
A couple days ago I shared my script for OpenSuSE. Now I've re-written that Perl script to speak the language of yum. The script below is intended to run periodically by cron and to send me an e-mail, if new updates have been found for the system. It's nothing extraordinary, yum-cron can this too. But an advantage of my Perl script is that the e-mail is sent only once. No email is sent, if the same updates are found again. The trick is that the Perl script saves the updates (if any) in a temporary file to compare its content then with the updates found at the current run.

Besides I wanted to see the installed and the available versions of a package side by side. I could unfortunately get this output with yum or repoquery directly.

Mallorca / Майорка 2003

0 Kommentare
Diesmal habe ich den Fotoalbum mit Fotos veröffentlicht, die ich auf unserer Reise nach Mallorca im Jahre 2003 gemacht habe. Es war ein toller sehr heißer Sommer, in Europa starben Leute wie Fliegen wegen der Hitze. Auf Mallorca war es etwas kühler als in Deutschland oder in Frankreich, aber es sehr warm.

Wir haben einen Badeurlaub mit Inselrundfahrt in einem gemieteten Auto kombiniert. Ich muss sagen, Mallorca ist wirklich sehr schön und auf jeden Fall eine Reise wert! Nur eine? Natürlich nicht, sondern viele Reisen wert! ;-)

Fotoalbum in Picasa: Kreta / Крит 2002

0 Kommentare
Ich habe ein neues Fotoalbum in Picasa hochgeladen. Es handelt sich um Fotos, die ich während meiner Reise nach Kreta im Jahre 2002 gemacht habe. Die Reise war sehr schön! Wir - mein Sohn und ich - waren eine Woche lang auf der Insel, mieteten einen Wagen und erkundeten auf eigene Faust Chania, Plakias, Rethymno, waren natürlich im Knossos-Palast und im Kloster Arkadi! 

Kreta ist eine Insel, die sehr viel zu bieten hat und auf die man immer wieder fahren könnte. Auch ich hoffe, ich würde Kreta noch einmal besuchen.

Script to inform about new updates in OpenSuSE

1 Kommentare
Some time ago I wrote a script that informs me via e-mail, when zypper finds new updates. Now I'd like to share the script (actually there are two scripts: a main Perl script and a Shell script as wrapper).

An advantage of my script is that it informs you only once, if there are new updates and not every time you start it. It is achieved due to the storing the last result in the file system. The next time you'll get an e-mail is, when the script finds a newer update as found before.

Я не прощаюсь, я говорю "До свидания"

0 Kommentare
Кто сказал "А", должен сказать "Б". После рассказа о приветствиях расскажу теперь про то, что говорят при расставании.

Самое элементарное, что знает, собственно, каждый человек, изучающий немецкий язык, это Auf Wiedersehen! Это соответствует вполне русскому До свидания! Это, конечно, самое простое и довольно формальное выражение. Очень кстати употребить это выражение, когда нужно оставаться просто вежливым, не переходя, так сказать, на личности: в магазине, на почте, в учреждении. Есть укороченная форма этого выражения - немцы вообще очень

Guten Morgen, guten Tag...

0 Kommentare
Здравствуй, привет, добрый день!

Сегодня речь пойдёт о том, как приветствуют по-немецки. Есть, конечно, совершенно разные формы приветствия, пригодные для того или иного случая. Для начала пройдёмся по обычным стандартным приветствиям, которые знают практически все (но далеко не все ими пользуются):

Guten Morgen! говорится, естественно, утром, часов до 11-ти – 12-ти. Очень распространено укороченное Morgen!, отличающееся от основного меньшей степенью официальности,

Ja – nein – doch в ответах на вопрос

0 Kommentare
Да – нет – да нет же: о специфике их использования пойдёт речь в этой статье.

“Ja” используй в положительном ответе, например:
- Hast du das Buch gelesen?
- Ja, ich habe es gelesen.

Казнить нельзя помиловать

0 Kommentare

Наверное, многим, если не всем, известна детская история про то, как важна бывает иногда маленькая запятая. Предложение, смысл которого меняется на противоположный в зависимости от постановки запятой, я знаю с начальной школы:

“Казнить нельзя помиловать!”

Немецкий язык и с чем его едят

0 Kommentare

Решил завести такую рубрику. Во-первых, очень люблю немецкий язык. Интересного о языке и из языка встречается очень много, кое-чем хотелось бы поделиться с многоуважаемой публикой. Во-вторых, эти вещи, как правило, быстро забываются, а ведь и самому иногда хочется вспомнить то или иное. Ну, и а в-третьих, как говорится “Deutsche  Sprache – schwere Sprache”, и вовсе не без оснований,  так что давайте разбираться вместе!

CentOS 6.2 and Active Directory

5 Kommentare

In this article I’ll show you how to connect your CentOS to the Active Driectory as user backend. I assume that MSFU 3.5 (Microsoft Services For Unix) feature is activated in your AD.

There are a couple of tasks you have to do, when you’re going to bring your CentOS box with Active Directory. First of all, the nslcd daemon (nss-pam-ldapd) must be installed and configured. After that step you should be able to see UNIX specific attributes of users from AD backend. The next step is to setup authentication against AD.

Exchange 2010 Mailbox Database Move

0 Kommentare
It’s very easy to move a mailbox database in Exchange 2010 to a new location. Either you use EMC or you use the cmdlet Move-DatabasePath in EMS. Exchange 2010 would unmount the mailbox database to be moved (it’s unavailable all the moving time), copy the database file, the catalogs, remove them and last mount the mailbox database and set it online.

I prefer to use the cmdlet to move the mailbox database in Exchange 2010:

Move-DatabasePath -Identity 'MailDB' -EdbFilePath 'D:\MailDB\MailDB.edb' 
                  -LogFolderPath 'D:\MailDB'

Please note that if you’re going to start moving the mailbox database by a script or batch file, you should you the following syntax to avoid questions:

Move-DatabasePath -Identity 'MailDB' -EdbFilePath 'D:\MailDB\MailDB.edb' 
                  -LogFolderPath 'D:\MailDB' -Confirm:$false -Force:$true

If you get the error while running the cmdlet:
This operation cannot be performed on a remote server. Please use the -ConfigurationOnly option and then manually move the files.
make sure that you're running the command above on the mailbox database server locally!