Site Collection Locks in SharePoint 2010
Some time back, I ran into an issue where a particular site collection was in read-only mode to everyone including site collection admin, certain options such as site action menus were in the disabled state!. Then I realized the site collection backup process was interrupted due to the disk-space issue and it left the site collection in the "Read-only" mode! which was documented in my post SharePoint site is read-only to everyone

SharePoint 2010 Locks can be Set/Reset in 4 ways:
Using Web User Interface:
Where to Look? Go to Central Administration > Application Management > Configure Quotas and Locks
Under Site Collection Quotas and locks, set the site collection to "Not locked" will release the site.
STSADM:
To lock site collection:
stsadm -o setsitelock -url <Site-collection-url> -lock <Lock-Type>
To get site lock status information of SharePoint site collection:
stsadm -o getsitelock -url <Site-collection-url>
Where <Lock-Type> can take one of the following value:
PowerShell to Set Site collection Lock:
Set-SPSite -Identity <Site-collection-url> -LockState <Lock-State>
Where: <Lock-State> can be:
SharePoint Site Collection Locks Programmatically with Object Model:
You can Programmatically set the Lock status using SPSite object's Properties:
using (SPSite site = new SPSite("http://sharepoint.com/sites/sales"))
{
site.ReadOnly = true;
//Set lock comments
site.LockIssue = "Maintenance";
}
PowerShell To Handle SharePoint Site Collection Locks:

BTW, SharePoint Site collections may be locked automatically, when they exceed the Site collection Quota!
Backup LIVE Site collection without Locks:
STSADM: stsadm -o backup -url <Site-collection-url> -filename <Backup-File> -nositelock
PowerShell: Backup-SPSite -Identity <Site-collection-url> -Path <Backup-File> -NoSiteLock
PowerShell Script to check lock Status of All site collections: Check Lock Status for All Site Collections in SharePoint
Screenshot from Read-only locked Site collection: Note that ribbon items are disabled!

Screenshot from Unlocked site:

SharePoint 2010 Locks can be Set/Reset in 4 ways:
- Using Web User Interface - Through Central Administration
- Using STSADM
- Using PowerShell
- Using Object Model
- By .Net code
- By PowerShell
Using Web User Interface:
Where to Look? Go to Central Administration > Application Management > Configure Quotas and Locks
Under Site Collection Quotas and locks, set the site collection to "Not locked" will release the site.
STSADM:
To lock site collection:
stsadm -o setsitelock -url <Site-collection-url> -lock <Lock-Type>
To get site lock status information of SharePoint site collection:
stsadm -o getsitelock -url <Site-collection-url>
Where <Lock-Type> can take one of the following value:
- none - Removes all the locks
- noadditions - Prevents from Addition
- readonly - Can't add/Update/Delete content
- noaccess - You can't view the site at all
PowerShell to Set Site collection Lock:
Set-SPSite -Identity <Site-collection-url> -LockState <Lock-State>
Where: <Lock-State> can be:
- ReadOnly
- Unlock
- NoAdditions
- NoAccess
SharePoint Site Collection Locks Programmatically with Object Model:
You can Programmatically set the Lock status using SPSite object's Properties:
- SPSite.ReadLocked
- SPSite.WriteLocked
- SPSite.ReadOnly
using (SPSite site = new SPSite("http://sharepoint.com/sites/sales"))
{
site.ReadOnly = true;
//Set lock comments
site.LockIssue = "Maintenance";
}
PowerShell To Handle SharePoint Site Collection Locks:
$SPSite = Get-SPSite -Identity http://SharePoint
#Check whether the site collection is read-only
$SPSite.readonly
#Remove the site collection's read-only lock
$SPSite.readonly = $false

BTW, SharePoint Site collections may be locked automatically, when they exceed the Site collection Quota!
Backup LIVE Site collection without Locks:
STSADM: stsadm -o backup -url <Site-collection-url> -filename <Backup-File> -nositelock
PowerShell: Backup-SPSite -Identity <Site-collection-url> -Path <Backup-File> -NoSiteLock
PowerShell Script to check lock Status of All site collections: Check Lock Status for All Site Collections in SharePoint
hi..You Provide a very useful information about SharePoint. Very well done. Thanks for Sharing.
ReplyDeleteThanks for pointing out this frustrating occurance! Also, is the lock / unlock of a site collection logged anywhere - ULS, etc?
ReplyDeleteNope! Its not getting logged :-(
DeleteIts very useful link,
ReplyDeleteI think you saved my job today with this post, had to let you know...
ReplyDeleteHi Rajak thanks for your valuable info.. is there any way I can get alerted like generate an email when site collection gets locked?
ReplyDeleteThanks for the post
ReplyDeleteHi,
ReplyDeleteCan a site made readonly using client object model?
I get error saying that its a readonly property.
the Code I am using is as below:
Site mysite = mycontext.Site;
mycontext.Load(mysite);
mycontext.ExecuteQuery();
mysite.ReadOnly = false;
mysite.LockIssue = "testing";
Hi Rajak thanks for your valuable info.. You had save my life. ***** 5 Star Rating for your post. :)
ReplyDeletethanks for posting it.
ReplyDeletethanks a lot......