Archive

Articles taggués ‘Quotas’

Modification des paramètres de quota.

Lors de la modification des paramètres de quota sur une boite aux lettres, on constate que le paramétrage prend longtemps avant d’être appliquer.

Il s’agit d’une délais d’application par défaut de deux heures dans le configuration de Exchange 2007.

Le seul moyen de contourner ce délais est de redémarrer le service MSExchangeIS. Et ca, c’est pas cool, surtout pour les 5000 autres utilisateurs du serveur.

Je conseil donc d’être vigilent lors des modifications et diplomate lorsque votre PDG se retrouve bloqué.

Pour les impatients, j’ai trouvé un article ici qui propose de modifier le délais d’attente. (J’ai pas testé.)

Enlever les petites boites d’un groupe.

L’objectif est d’enlever les boites aux lettres de moins de 400MB d’un groupe qui sert à mettre en place des exclusions de quotas.
La suite de Ajoute de boites aux lettres dans un groupe.

?View Code POWERSHELL
$group = "GR_EXCEPTION_QUOTA"
Get-QADGroupMember -Identity $group | foreach {
$user = $_.UserPrincipalName
$userlt400 = Get-MailboxStatistics -Identity $user -ErrorAction silentlycontinue
	if ( $userlt400.totalitemsize -lt 400MB ) {
	Remove-QADGroupMember -Identity $group -Member $userlt400.LegacyDN
	}
}
Categories: Exchange 2007 Tags: , ,

Configurer un garde fou sur les boites.

Si vos boites n’ont pas de quotas, il est tout de même préférable de configurer un garde fou.
Ce script va configurer un quota automatiquement par rapport à la taille actuelle de la boite.

?View Code POWERSHELL
Get-Mailbox -Server CCR001 -ResultSize unlimited | where-Object { $_.database -match "paris" -and $_.UseDatabaseQuotaDefaults -eq $false -and $_.CustomAttribute6 -ne "NoQuota"} | foreach {
$user = $_.identity
$userstats = Get-MailboxStatistics -Identity $user
$mbsize = $userstats.TotalItemSize
$sendquota = $userstats.TotalItemSize + 500MB
$warquota = $userstats.TotalItemSize + 400MB
 
Write-Host $user.displayname $mbsize $sendquota $warquota -Separator ","
Set-Mailbox -Identity $user -ProhibitSendQuota $sendquota -IssueWarningQuota $warquota
}

Traiter les membres d’un groupe

Permet d’effectuer une tache d’administration sur les membres d’un groupe.

?View Code POWERSHELL
Get-Group -Identity "Group_Name" |
	ForEach-Object {
		$groupdn=("LDAP://"+$_.DistinguishedName)
		$group = ([ADSI]$groupdn)
		""
		"Nom du groupe"
		"-------------"
		$_.DistinguishedName
		""
		"Liste des membres du groupe"
		"---------------------------"
 
		ForEach ($member in $group.member){
 
			$member
#	Desactivation du quota *EXCEPTION_QUOTA*
			Set-Mailbox -Identity $member -IssueWarningQuota Unlimited -ProhibitSendQuota Unlimited -ProhibitSendReceiveQuota Unlimited -UseDatabaseQuotaDefaults $false 
		}
	}

Afficher les boites restreintes par un quota.

Affiche les boites de plus de 500MB qui ont l’héritage de configuration des quotas actif.
J’ai ajouté un filtre sur le serveur et les databases d’une filiale.

?View Code POWERSHELL
Get-MailboxStatistics -Server CCR004| Where {$_.Database -match "paris" -and $_.TotalItemSize -gt 500MB} | ForEach-Object { $size = $_.TotalItemSize ; Get-mailbox -Identity $_.displayname | where-object { $_.UseDatabaseQuotaDefaults -eq "true" }}| Select-Object displayname,alias,database, @{ expression={$size.Value.ToMB() } ;label="TotalItemSize (MB)" }

Appliquer un quota sur plusieurs databases.

Permet d’appliquer les quotas sur toutes les databases d’une filiale.

?View Code POWERSHELL
Get-MailboxDatabase -Server CCR001 | Where-Object { $_.name -match "paris" } | Set-MailboxDatabase -IssueWarningQuota 400MB -ProhibitSendQuota 500MB
Categories: Exchange 2007 Tags: ,

Ajoute de boites aux lettres dans un groupe.

Permet d’ajouter les boites de plus de 400MB dans un groupe d’exclusion.
Couplé avec Désactive l’héritage du quota sur un groupe. permet la mise en place des quota en douceur.

?View Code POWERSHELL
Get-MailboxStatistics -Server ServerMB001| Where {$_.Database -match "compta" -and $_.TotalItemSize -gt 400MB} | ForEach-Object {
$user = Get-Mailbox -Identity $_.identity
Add-QADGroupMember -Identity GR_EXCEPTION_QUOTA -Member $user.UserPrincipalName
}
Categories: Exchange 2007 Tags: , ,

Désactive l’héritage du quota sur un groupe.

Ce script à lancer régulièrement, désactive le quota sur les membres d’un groupe et l’active sur tous les autres.

?View Code POWERSHELL
#	Liste des comptes sans héritage et replace l'heritage si l'utilisateur n'est pas dans le groupe "no_quota".
 
Get-Mailbox -ResultSize Unlimited |
Where-Object { $_.UseDatabaseQuotaDefaults -eq $false } |
	ForEach-Object {
		$User = get-qaduser -samaccountname $_.Alias
		if ($User.memberof -match "no_quota")
		{}
		else
			{
			$User.samaccountname
			Set-Mailbox $User.samaccountname -UseDatabaseQuotaDefaults $true
			}
	}
#	Recherche des groupes "no_quota" et enlève l'héritage si l'utilisateur est dans ce groupe.
 
Get-Group -Identity no_quota |
	ForEach-Object {
		$groupdn=("LDAP://"+$_.DistinguishedName)
		$group = ([ADSI]$groupdn)
 
		ForEach ($member in $group.member){
			Set-Mailbox -Identity $member -IssueWarningQuota Unlimited -ProhibitSendQuota Unlimited -ProhibitSendReceiveQuota Unlimited -UseDatabaseQuotaDefaults $false
		}
	}