Exchange Server, Powershell, Skriptování

Exchange Mailbox Databases Total Size

This function retrieves the total size (in GB) of mailbox databases in Exchange Organization. There is an optional parameter to filter databases by part of name. When you specify a value for the Name attribute and no databases could be found, it retrieves 0.

Exchange Server, Powershell

Count number of daily emails on specific mailbox

Hardware, Windows

TRIM status in Win7

fsutil behavior query disabledeletenotify
DisableDeleteNotify = 0

If Windows returned 0, TRIM is enabled.

Skriptování, Windows

Update: Kdo je přihlášený na vzdáleném stroji?

Lze to zjistit pomocí nástroje netsh a vyfiltrování jeho výstupu. Protože se mi nepodařilo sestavit příkaz tak, aby se přímo netsh dotázal vzdáleného stroje (ví někdo jak na to?), použil jsem ještě psexec pro získání vzdálené příkazové řádky. Z prvního příkladu je vidět, že na vzdáleném stroji “pc023″ je přihlášen uživatel “Administrator” z domény “OS”
C:\Temp>psexec \\pc023 cmd
 
PsExec v1.71 - Execute processes remotely
Copyright (C) 2001-2006 Mark Russinovich
Sysinternals - www.sysinternals.com
 
 
Microsoft Windows XP [Verze 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
 
C:\Temp>netsh diag show computer /v | findstr /i "user"
UserName = OS\Administrator

Nebo pomocí PsLoggedon
C:\Temp>psloggedon \\pc012
 
PsLoggedon v1.34 - See who's logged on
Copyright (C) 2000-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
 
Users logged on locally:
2.12.2011 12:12:47 OS\strachotao
 
Users logged on via resource shares:
6.12.2011 14:51:14 OS\STRACHOTAO
 
C:\Temp>

http://technet.microsoft.com/en-us/sysinternals/bb897545

Digitální fotografie

IrfanView – text in full screen

Options –> Properties/Settings… –> Full screen / Slideshow –> Show text:
$D$F $X $Z% $F $S $Wx$H $T(%d.%m.%Y %H:%M:%S)

Exchange Server

Mailbox Recovery Exchange 2010

1. Z pásek nebo jiných záloh obnovíme zálohu databáze, ve které je mailbox ze kt. chceme data obnovit.
2. Vytvoříme novou recovery databázi s tím, že použijeme cestu k obnovené databázi ze zálohy
[PS] E:\_restore>New-MailboxDatabase -Recovery -Name recovery1 -EdbFilePath "E:\_restore\dbs1.edb" -LogFolderPath "E:\_restore" -Server srv01x11
WARNING: Recovery database 'recovery1' was created using existing file E:\_restore\dbs1.edb. The database
 must be brought into a clean shutdown state before it can be mounted.
 
Name                           Server          Recovery        ReplicationType
----                           ------          --------        ---------------
recovery1                      srv01x11        True            None

3. Aby se mohla databáze připojit musí být ve stavu “Clean Shutdown”, to zkontrolujeme.
[PS] E:\_restore>eseutil /mh "E:\_restore\dbs1.edb" | findstr /i "state"
            State: Dirty Shutdown

4. Databáze je ve stavu “Dirty Shutdown”, musíme ji dostat do “Clean Shutdown”. Pustíme na ní soft recovery s doplněním transakčních logů s aktuálním prefixem e13
[PS] E:\_restore>eseutil /r e13 /i /d"E:\_restore"
 
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 14.01
Copyright (C) Microsoft Corporation. All Rights Reserved.
 
Initiating RECOVERY mode...
    Logfile base name: e13
            Log files: 
         System files: 
   Database Directory: E:\_restore
 
Performing soft recovery...
                      Restore Status (% complete)
 
          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................
 
 
 
Operation completed successfully in 23.313 seconds.
 
[PS] E:\_restore>eseutil /mh "E:\_restore\dbs1.edb" | findstr /i "state"
            State: Clean Shutdown

5. Databaze je nyní v “Clean Shutdown”, takže ji můžeme připojit
[PS] E:\_restore>Mount-Database recovery1
6. Nyní již můžeme obnovit e-maily do požadované schránky. Jako Identity je nutné použít ‘DisplayName’
[PS] E:\_restore>Restore-Mailbox -Identity "Novak Jan" -RecoveryDatabase recovery1 -RecoveryMailbox "Novak Jan" -IncludeFolders \'Important' -targetfolder recovery
 
Confirm
Are you sure you want to perform this action?
Recovering mailbox content from mailbox 'Novak Jan' in the recovery database 'recovery1' to the mailbox for 'Novak Jan
(Jan.Novak@domain.cz)'. This operation may take a long time to complete.
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): y
 
 
RunspaceId                       : 7v275979-a43d-4937-86c2-b7337eff201c
Identity                         : domain.cz/Praha/Users/IT/Novak Jan
DistinguishedName                : CN=Novak Jan,OU=IT,OU=Users,OU=Praha,DC=domain,DC=cz
DisplayName                      : Novak Jan
Alias                            : NOVAKJ
LegacyExchangeDN                 : /O=WGR/OU=CZ--01/cn=Recipients/cn=NOVAKJ
PrimarySmtpAddress               : Jan.Novak@domain.cz
SourceServer                     : srv01x10.domain.cz
SourceDatabase                   : recovery1
SourceGlobalCatalog              : PRAHA00A01
SourceDomainController           :
TargetGlobalCatalog              : PRAHA00A01
TargetDomainController           :
TargetMailbox                    : domain.cz/Praha/Users/IT/Novak Jan
TargetServer                     : srv01x10.domain.cz
TargetDatabase                   : dbs3
MailboxSize                      : 893.9 MB (937,324,679 bytes)
IsResourceMailbox                : False
SIDUsedInMatch                   :
SMTPProxies                      :
SourceManager                    :
SourceDirectReports              :
SourcePublicDelegates            :
SourcePublicDelegatesBL          :
SourceAltRecipient               :
SourceAltRecipientBL             :
SourceDeliverAndRedirect         :
MatchedTargetNTAccountDN         :
IsMatchedNTAccountMailboxEnabled :
MatchedContactsDNList            :
TargetNTAccountDNToCreate        :
TargetManager                    :
TargetDirectReports              :
TargetPublicDelegates            :
TargetPublicDelegatesBL          :
TargetAltRecipient               :
TargetAltRecipientBL             :
TargetDeliverAndRedirect         :
Options                          : Default
SourceForestCredential           :
TargetForestCredential           :
TargetFolder                     : \recovery\Recovered Data - Novak Jan - 10/25/2011 12:20:09
PSTFilePath                      :
RecoveryMailboxGuid              : 2f18e48e-3b9c-40a8-8fbc-305d6b0abe8a
RecoveryMailboxLegacyExchangeDN  : /O=WGR/OU=CZ--01/CN=RECIPIENTS/CN=NOVAKJ
RecoveryMailboxDisplayName       : Novak Jan
RecoveryDatabaseGuid             : 2611bb17-4dd4-40b1-9a97-f1a334753de4
StandardMessagesDeleted          : 0
AssociatedMessagesDeleted        : 0
DumpsterMessagesDeleted          : 0
MoveType                         : Restore
MoveStage                        : Completed
StartTime                        : 10/25/2011 12:20:28 PM
EndTime                          : 10/25/2011 12:20:32 PM
StatusCode                       : 0
StatusMessage                    : This mailbox in the recovery database has been restored to the target user mailbox.
ReportFile                       : C:\Program Files\Microsoft\Exchange Server\V14\Logging\MigrationLogs\restore-Mailbox20111025-122008-6583750.xml
ServerName                       : srv01x10.domain.cz

7. Po obnově už jen stačí odpojit a odstranit recovery databázi
[PS] E:\_restore>Dismount-Database recovery1
Confirm
Are you sure you want to perform this action?
Dismounting database "recovery1". This may result in reduced availability for mailboxes in the database.
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
 
[PS] E:\_restore>Remove-MailboxDatabase recovery1
Confirm
Are you sure you want to perform this action?
Removing mailbox database "recovery1".
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
WARNING: The specified database has been removed. You must remove the database file located in E:\_restore\dbs1.edb
from your computer manually if it exists. Specified database: recovery1
[PS] E:\_restore>

Digitální fotografie

Night Sky

Vyfoceno 22.10.2011 22:31
Canon EOS 500D, EF-S 18-55mm, clona 8, čas 4343s (1hodina 12min. 23 sekund), ISO200, stativ

Batch, Skriptování

Timestamp for cmd

Simple and useful tool for creating timestamps in command line (batch). It need not fixed time format and is used current time zone.

Examples
for /f "tokens=1" %%a in ('timestamp.exe') do (
  set timestamp=%%a
)
systeminfo > %timestamp%_%computername%.log

for /f "tokens=1-8 delims=- " %%a in ('timestamp.exe -d') do (
  set year=%%a
  set month=%%b
  set day=%%c
  set hour=%%d
  set minute=%%e
  set second=%%f
)
echo Now is %hour%:%minute%:%second% %month%-%day%-%year%

Download: timestamp.zip

Digitální fotografie

Měsíc

Vyfoceno 15.7.2011 23:01
Canon EOS 500D, EF-S 18-55mm + teleskop, clona 8, čas 1/20s

WordPress

IPLog – WordPress Plugin

Jednoduchý plugin na logování IP adres návštěvníků. Po aktivaci vytvoří v databázi tabulku “wp_iplog_v1″, do které zapisuje: $_SERVER["REMOTE_ADDR"] //IP v4
$_SERVER["REQUEST_URI"] // cílová stránka
$_SERVER["HTTP_HOST"] // cílový web
$_SERVER["HTTP_USER_AGENT"] // user agent (os, browser, bot)
$_SERVER["HTTP_REFERER"] // referer

Plugin nemá žádné rozhraní, data jsou dostupná pouze z databáze.
Otestován na verzi WordPress 3.2.
Stáhnout IPLog verze 1

Za případné chyby neručím :)