Does the title sounds crazy? You might think that this topic is very simple? Yes you are right however some folks still raise this question in forums. Im seeing this question for for a long time in forums and thought of sharing the solution here, so that the folks can give a search to get this (coz Google is our first techie teacher or instant solution provider :P).
Ok why cant SQL use my local drives (desktop) to take the backup? Good question! When you install SQL Server the drives in scope are limited to the server where you are installing SQL server, lets say you are installing in Server1 then SQL can access all the drives existing in Server1, thats the concept. Even in windows explorer normally you cant browse other system drives directly, however you can use $ (eg.) \server1\c$) symbol to access the drives but this requires administrator privilege on destination server.
Now we talk about taking backup to our local machine.. I have always 3 different suggestions (if you have any better method, thats good update it in comment) to make a copy of SQL backup.
Creating Network Share in Local or Remote Machine
In this method you will be creating a network share in your local desktop or remote machine. With the use of this remote share you can take backup directly from SQL Server
Thats it you are done with it. Just point this share path in your backup. Lets say I need to backup Pubs database to my pc then Ill create a network share called remotebackup and use it to take Pubs db backup
Creating Network Share in SQL Server (server level)
In this method you will take the backup in the server itself and then make the backup path as network share and using this network share you will copy the backup file to your desktop.
Once you are ok with this start taking the backup. We will consider the same scenario for copying the Pubs db, first Ill take the backup to the server local drive (the folder which is made as server network share, in this case Ive shared D:Backups folder), then Ill manually map the share from my desktop to copy it.
Use Database Publishing Wizard
This is the last method which I know. In this method you will just script the entire database with schema and data and you can specify the the local path in the wizard so that it will script to the path given.
After installation open it and follow the wizard to script it. You will be getting a page as shown below where you can provide the path to save the script. Run this script against your local SQL server to get the database.