In the past, there have been quite a few sync problems with OneDrive. Luckily, this is a thing of the past now. In this article, we’ll explore why you should choose OneDrive as your cloud storage solution and what to look for when migrating to OneDrive.
1. Why OneDrive?
OneDrive is an ideal storage space for files, Allowing You to Collaborate with files and access your files anywhere in the world. It also takes advantage of a vast array of Microsoft’s security measures, such as the recycle bin restore possibilities, ransomware protection, and the ability to backup some known folders like documents and desktops.
*Recycle bin restore possibilities:
Think of this as two separate recycle bins. When a file is deleted, it enters the first recycle bin (first stage). The first recycle bin will hold your files for 30 days after which they’ll be transferred to the second stage recycle bin where the files remain for 60 days. Finally, after 90 days have passed, you still have a two-week period in which you’re able to submit a restore request to Microsoft. So, in total, you’ve got a whopping 104 days to get your files back.
*Ransomware Protection:
It’s super easy to restore files from a previous date after suffering a ransomware attack.
*Known Folder Move (KFM):
When redirecting the desktop, documents, and images folder to OneDrive by using Known Folder Move (KFM), you can be certain that no files will be lost in case of a hard drive crash, for example. There’s also the added benefit of having all your files on the go when switching between devices.
It’s also really easy to set up. To start moving those Know folders to OneDrive, you only need to create a new settings catalog and specify these settings!
Of course, in addition to these benefits, there are many more advantages to be mentioned. But with many advantages, there can be some caveats.
2. What are the risks?
1. Security
Security is the keyword. Of course, there are many more advantages to using OneDrive than I’ve mentioned. But with great power comes great responsibility! You need to ask yourself questions like, where does my data reside? How can it be accessed? Security is the keyword here! All of these questions are very important things that need to be looked at carefully. For more information on this please refer to my previous blogs.
https://call4cloud.nl/2020/06/conditional-access-design-guide/
2.OneDrive Limits
Unfortunately, OneDrive also has some limits on what you could sync. Of course, it’s improved a lot with the X64 bits version as I am explaining in this blog. But still, you will need to make sure you are not syncing everything with your OneDrive App. Please make sure you are only syncing the most necessary files and nothing more! Those files need to be opened from the Dekstop Apps itself or by using Teams
3. How to migrate to Onedrive?
Unfortunately, migrating your user’s data to OneDrive isn’t done in a few minutes. There’re some things we need to prepare before we’re ready to migrate our data. Below I’ll explain what I think is the easiest way of deploying OneDrive in your organization. Follow these four steps for a successful migration.
*Stap 1:Pre-provision
Before we can migrate to OneDrive, we need to make sure that all Personal Sites are prepared so that a personal site will be created for each user. We can do this by using the “Request-SPOPersonalSite”.
The actual Personal site will be created by a Timer Job later. If the user already has a Personal Site created, the request for creation for the user will be silently ignored.
PowerShell is a necessity for this. First, we need to execute the following script:
$orgName=""
Connect-SPOService -Url https://$orgName-admin.sharepoint.com
#alle users look upn
$users = Get-SPOUser -Site https://$orgName.sharepoint.com |
Where-Object { $_. IsGroup -ne $true -and $_. LoginName -like '*@*.*'} |
Select-Object -ExpandProperty LoginName;
#voor call all users 1 for 1 onedrive
$users | ForEach-Object {
Request-SPOPersonalSite -UserEmails $_
}
*Step 2: Permissions
When everyone’s OneDrive is prepared, we need to make sure the admin user has access to everyone’s personal OneDrive. This too can be done with PowerShell.
$orgName=""
$AdminSiteURL="https://$Orgname-admin.sharepoint.com"
$SiteCollAdmin=" "
Connect-SPOService -Url $AdminSiteURL
$OneDriveSites = Get-SPOSite -Template "SPSPERS" -Limit ALL -IncludePersonalSite $True
Write-Host -f Yellow "Total Number of OneDrive Sites Found: "$OneDriveSites.count
Foreach($Site in $OneDriveSites)
{
Write-Host -f Yellow "Adding Site Collection Admin to: "$Site.URL
Set-SPOUser -Site $Site.Url -LoginName $SiteCollAdmin -IssiteCollectionAdmin $True
}
Write-Host "Site Collection Admin Added to All OneDrive Sites Successfully!" -f Green
*Step 3: Read urls
The last step before you can begin migrating is to determine the urls of the personal OneDrive’s.
$orgName=""
$LogFile = [Environment]::GetFolderPath(“Desktop”) + “\OneDriveSites.log”
Connect-SPOService -Url https://$orgName-admin.sharepoint.com
Get-SPOSite -IncludePersonalSite $true -Limit all -Filter “Url -like ‘-my.sharepoint.com/personal/’” |select Url | Out-File $LogFile -Force
*Step 4: SharePoint migration Tool
Download the latest version of the SharePoint Migration Tool (SPMT). No Powershell this time, but JSON files. Of course, you can also migrate manually with the SharePoint migration tool. But with JSON it’s easier and you’re able to prepare and test in advance.
Example of a JSON migrating a user’s personal folders to OneDrive.
{
"Tasks": [
{
"SourcePath": "\\\servername\\share$\\desktop\\username\\Desktop",
"TargetPath": "https://tenantnaam-my.sharepoint.com/personal/url_uit_stap_3",
"TargetList": "Documenten",
"TargetListRelativePath": "Desktop"
},
{
"SourcePath": "\\\server name\\share$\\desktop\\username\\Documents", "TargetPath": "https://tenantnaam-my.sharepoint.com/personal/url_uit_stap_3",
"TargetList": "Documenten",
"TargetListRelativePath": "Documents"
}
]
}
Conclusion
OneDrive is a fantastic product these days. The worries of the past about sync problems are completely gone. There’re still some concerns about how to keep your data safe which need to be looked at very carefully. But all in all, I think it’s the best cloud storage solution out there. And migrating to OneDrive? That’s peanuts as long as you follow these steps.
But again I need to add a big warning! Do not sync all sites and data with OneDrive, only the most necessary!
I would change the line (in step 1) to:
Get-SPOUser -Site https://$orgName.sharepoint.com -Limit All
So you’ll include all users.
On this line in step 3:
Get-SPOSite -IncludePersonalSite $true -Limit all -Filter “Url -like ‘-my.sharepoint.com/personal/” |select Url | Out-File $LogFile -Force
You’re missing the end quote after the filter. So it should be:
Get-SPOSite -IncludePersonalSite $true -Limit all -Filter “Url -like ‘-my.sharepoint.com/personal/’” |select Url | Out-File $LogFile -Force