The operating system denied access to the specified file что делать
MSSQLSERVER_17207
Сведения
attribute | Значение |
---|---|
Название продукта | SQL Server |
Идентификатор события | 17207 |
Источник события | MSSQLSERVER |
Компонент | SQLEngine |
Символическое имя | DBLKIO_OS2DISKERROR |
Текст сообщения | %ls: при создании или открытии файла «%ls» произошла ошибка операционной системы %ls. Определите причину, исправьте ошибку операционной системы, затем еще раз попытайтесь выполнить операцию. |
Объяснение
SQL Server не удалось открыть указанный файл из-за указанной ошибки ОС.
Если SQL Server не удается открыть базу данных и (или) файлы журнала транзакций, в событии приложения Windows или в журнале ошибок SQL Server может появиться сообщение об ошибке 17207. Вот пример такого сообщения.
Эти ошибки могут возникнуть во время запуска экземпляра SQL Server или любой операции с базой данных, при которой выполняется попытка запустить базу данных (например, ALTER DATABASE). В некоторых сценариях могут возникнуть ошибки 17207 и 17204, а в других случаях может возникнуть только одна из них.
Если такие ошибки происходят в пользовательской базе данных, она остается в состоянии RECOVERY_PENDING, а приложения не могут получить доступ к базе данных. Если такие ошибки происходят в системной базе данных, экземпляр SQL Server не запускается и вы не можете подключиться к SQL Server. Это также может привести к тому, что ресурс отказоустойчивого кластера SQL Server перейдет в режим «вне сети».
Если проблема связана с файловой группой FileStream в SQL Server, вы увидите, что вместо имени файла указан только полный путь к каталогу. Ниже приведен пример.
Причина
Прежде чем можно будет использовать базу данных SQL Server, ее необходимо запустить. При запуске базы данных инициализируются различные структуры данных, представляющие базу данных и ее файлы, открываются все файлы, принадлежащие базе данных, и, наконец, база данных восстанавливается. SQL Server использует функцию API CreateFile в Windows для открытия файлов, принадлежащих базе данных.
Сообщения 17207 (и 17204) указывают на то, что при попытке SQL Server открыть файлы базы данных во время запуска произошла ошибка.
Эти сообщения об ошибках содержат следующие сведения:
Имя функции SQL Server, которая пытается открыть файл. В этих сообщениях об ошибках обычно содержится одно из следующих имен:
В сведениях о состоянии указаны различные данные о нескольких расположениях внутри функции, которая может создать это сообщение об ошибке.
Полный физический путь к файлу.
Идентификатор файла, соответствующий файлу.
Код ошибки операционной системы и описание ошибки. В некоторых экземплярах вы увидите только код ошибки.
Сведения об ошибках операционной системы, выводимые в этих сообщениях о них, являются основной причиной ошибки 17204. Распространенными причинами этих сообщений об ошибках являются проблемы с разрешениями или неверный путь к файлу.
Рекомендуемые действия
Для устранения ошибки 17207 нужно расшифровать соответствующий код ошибки операционной системы и провести диагностику. После устранения ошибки операционной системы можно попытаться перезапустить базу данных (например, с помощью инструкции ALTER DATABASE SET ONLINE) или экземпляр SQL Server, чтобы перевести затронутую базу данных в режим «в сети». В некоторых случаях не удается устранить ошибку операционной системы, поэтому необходимо предпринять определенные корректирующие действия. Мы обсудим их в этом разделе.
В случае возникновения ошибки операционной системы 5 ( Access is Denied ), рассмотрите следующие методы устранения:
Проверьте разрешения, заданные в файле, просмотрев свойства файла в проводнике Windows. SQL Server использует группы Windows, чтобы подготовить службу контроля доступа для различных файловых ресурсов. Убедитесь, что соответствующая группа (с именем SQLServerMSSQLUser$ComputerName$MSSQLSERVER или SQLServerMSSQLUser$ComputerName$InstanceName) имеет необходимые разрешения для файла базы данных, указанного в сообщении об ошибке. Дополнительные сведения см. в статье Настройка разрешений файловой системы для доступа к компоненту ядра СУБД. Убедитесь, что группа Windows содержит учетную запись запуска службы или идентификатор безопасности службы SQL Server.
Проверьте учетную запись пользователя, от имени которой сейчас запущена служба SQL Server. Для получения этих сведений можно использовать диспетчер задач Windows. Найдите значение «Имя пользователя» для исполняемого файла «sqlservr.exe». Если вы недавно изменили учетную запись службы SQL Server, поддерживаемым способом выполнения этой операции является использование служебной программы «Диспетчер конфигурации SQL Server». Дополнительные сведения см. в статье Диспетчер конфигурации SQL Server.
В зависимости от типа операции — открытие баз данных во время запуска сервера, присоединение базы данных, восстановление базы данных и т. д. — учетная запись, используемая для олицетворения и получения доступа к файлу базы данных, может варьироваться. Сведения о том, какая операция позволяет задавать разрешения к каким учетным записям, см. в статье Защита данных и файлов журналов. Используйте такие средства, как Process Monitor из пакета Windows SysInternals, чтобы узнать, каким образом предоставляется доступ к файлу: в контексте безопасности учетной записи запуска службы экземпляра SQL Server или через олицетворенную учетную запись.
Если SQL Server олицетворяет учетные данные пользователя, выполняющего операцию ALTER DATABASE или CREATE DATABASE, в средстве Process Monitor отобразятся следующие сведения (пример).
Если вы получаете ошибку ОС The system cannot find the file specified = 3
Если возникает ошибка операционной системы The process cannot access the file because it is being used by another process = 32
MSSQL Резервное копирование на сетевой ресурс завершается с ошибкой: Operating system error 5(Access is denied.), как победить?
Добрый день хабровчане.
Исходные данные:
Виртуальный сервер на ESXI 5.5
ОС:
Windows Server 2019 Std Core x64
Версия SQL сервера:
MS SQL Server 2017 x64
Время от времени возвращаюсь к вопросу настройки резервного копирования баз на сетевую шару, в своей песочнице, но никак не могу найти способ победить ошибку:
Ясное дело, доменному пользователю выданы соответствующие права на сетевую папку, и сервис инстанции MSSQL стартует от имени данного доменного пользователя.
Скрин командной строки выполненной на самом сервере с упомянутой инстанцией MSSQL@MSSQL1C01:
Свойства запуска указанного экземпляра MSSQL:
Прочел статью о похожем кейсе, но к сожалению методы в ней предложенные не помогли решить описанную ошибку.
Пожалуйста помогите разобраться с ситуацией.
Спасибо за время уделенное прочтению.
Простой 4 комментария
Добрый час хабровчане.
Вопрос решен, но обо всем по порядку.
Ну во-первых:
Поздравляю Шарик, ты балбес
Описанные исходные кейсы выполнялись не на том сервере что нужно, я просто перепутал открытые соединения в открытой SSMS, чтож, тупашить еще никто не отменял.
Теперь о возможных путях решения.
Для гибкости администрирования создал группу доступа в Active Directory, и на нужную шару выдал группе права.
Для чистоты эксперимента вход на каждую из тестируемых инстанций MSSQL выполнялся с использованием локальной аутентификации SQL, и ясное дело, у такого пользователя не было доступа к используемой сетевой шаре.
Так что скорее данное предположение ошибочно.
Теперь осталось решить как поступить правильнее в контексте безопасности:
Использовать учетную запись ПК для доступа к шаре, или использовать учетную запись технологического пользователя сервиса MSSQL.
Большое спасибо всем кто не остался в стороне и принял участие в дискуссии.
How to solve Operating system error 3
When using SqlBackupAndFtp you may have come across this SQL Server error when saving a database backup: Cannot open backup device ‘
’. Operating system error 3 (The system cannot find the path specified).
Assuming the full path and file name are correct and actually exist, this error is caused by SQL Server being unable to either access or write to the specified path. This lack of permission can itself have one or more root causes. Let us look at these in more detail.
Possible Reasons for Operating system error 3
This error is most commonly encountered when taking backups that should then be copied over to another computer/ server on the same or a different network. But it can sometimes also occur even on the same computer/ server.
When you get this error, the cause is insufficient file-path access permissions for the operating-system account used by SQL Server. Remember, the login name you have used on Windows is not what is used when running SQL Server jobs. Instead what is used is the account specified for use for the SQL Server service. To check this, open services on the computer where SQL Server is installed (go to Start => Run, type services.msc and hit Enter). Once it opens, look for the service with the name SQL Server and double click it. Navigate to the tab labeled Log On and note down the username listed therein – this is the set of credentials used by SQL Server.
Even though the general cause of this error is the lack of SQL Server access to the backup folder/ path, this may in turn be caused by the following scenarios (with resolutions for each scenario):
Summary
In SQLBackupAndFTP, this “Operating system error 3” error message is broadly caused by SQL Server being unable to write to a remote folder location. But this may itself be caused by more than one underlying fault. Use the above guide to help troubleshoot the exact cause and then resolve it as necessary.
7 Comments
Mac
April 18, 2018 @ 7:15 pm
This article is good enough to understand what to do when you face the issue of operating system error. You can follow this step to fix your problem. The article clearly discusses all the problem and their solution of os error. You just simply follow the step to fix your problem properly.
Adriane Ringdahl
June 25, 2018 @ 7:53 pm
With thanks! Valuable information!
Marcel
September 16, 2018 @ 7:08 am
If you have this problem and you are using a remote sql-server, check if you have selected that option when configuring your database. It took me 2 hours to realize this was the error. After changing it from local to remote everything worked fine.
Denis
February 3, 2020 @ 7:24 am
Marcel, tell me please what option did you mean?
Anonymous
November 7, 2019 @ 5:37 am
this article is good enough and it cleared my query
lakshman
September 8, 2020 @ 9:56 am
Hi, i am facing similar issue in windows server 2003.
followed your initial step “Start => Run, type services.msc and hit Enter” but i could not find any word like SQL Server
José Miguel
April 17, 2021 @ 7:32 am
Thanks!
That helped a lot!
I’d also advise to check if the path changed slightly, specially when then path is on store procedure code
The operating system denied access to the specified file что делать
Шустрый
Профиль
Группа: Участник
Сообщений: 92
Регистрация: 24.4.2010
Репутация: нет
Всего: 1
Приветствую всех форумчан. Есть вопрос относительно обработки исключений для ShellExecute.
try
ShellExecute(Handle,’open’,’D:\Folder\file.xls, nil, nil,SW_SHOWNORMAL);
except on EFOpenError //если файла нет на месте
do
begin
messagedlg(‘Файл не найден.’, mtInformation, [mbOK], 0); //сообщение не появляется, т.е. в ответ на щелчок по кнопке ничего не происходит
end;
Как указать дескриптор ShellExecute?
или нужно что-то другое?
Эксперт
Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь
Репутация: 29
Всего: 89
А с чего вы взяли, что системная функция ShellExecute возбуждает Delphi-вые исключения?
Цитата |
If the function succeeds, it returns a value greater than 32. If the function fails, it returns an error value that indicates the cause of the failure. The return value is cast as an HINSTANCE for backward compatibility with 16-bit Windows applications. It is not a true HINSTANCE, however. It can be cast only to an int and compared to either 32 or the following error codes below. |
Код |
Res := ShellExecute(Handle,’open’,’D:\Folder\file.xls’, nil, nil,SW_SHOWNORMAL); case Res of ERROR_FILE_NOT_FOUND: raise EFOpenError.Create(Format(‘Файл %s не найден’, [‘D:\Folder\file.xls’])); . end; |
Впрочем, гораздо приятнее в этом плане выглядит ShellExecuteEx:
Цитата |
Returns TRUE if successful; otherwise, FALSE. Call GetLastError for extended error information. |
Шустрый
Профиль
Группа: Участник
Сообщений: 92
Регистрация: 24.4.2010
Репутация: нет
Всего: 1
1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.
[ Время генерации скрипта: 0.1080 ] [ Использовано запросов: 21 ] [ GZIP включён ] The operating system denied access to the specified file что делатьThis forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions. Answered by:QuestionSQL 2005 Enterprise Even if I logon as Administrator and try to backup any of my databases to local partitions, I get this error below. I have been operating fine up until this point and doing backups all the time. As far as I know, and after checking, no permissions have changed and of course Administrator has ntfs permissions to my local C and other partitions on this server: TITLE: Microsoft SQL Server Management Studio Backup failed for Server ‘servername’. (Microsoft.SqlServer.Smo) System.Data.SqlClient.SqlError: Cannot open backup device ‘F:\foldername’. Operating system error 5(Access is denied.). (Microsoft.SqlServer.Smo) In the Event log for Windows Server 2003 I see this: Event Type: Error For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. AnswersAll repliesYou need to check the security permissions on the folder you are trying to backup to. Make sure the service account (Network Service) has write permissions. It may well not do. SQL on changing the service account changes the permissions on the critical drives it knows about but won’t to it for all the drives in a server. Tnks God I found this post. It really save me. I have the same problem. I have changed the SQLAGENT service to run as domain\administrator but are you suggesting the sql server instance service also? SQL Service account is DOMAIN\SQLAdmin Have given the SQLAdmin AD account access to the Backup shares on the file servers (2 file servers, FILE1, FILE2) and I still get the error Operating system error 5(Access is denied.). FROM DISK = N ‘\\SERVER\APPS\backups\UA\DB\DB.BAK’ I trid to attach it as device, which runs BUT when restoring, same error occurred (Access denied) Only case I can backup/restore to/from network shares, is from the machines where SQL Server runs (SQL1, SQL2) e.g. I copy the BAK file from FILE1 to SQL2, share the folder (add SQLAdmin account with access), then restore on SQL1 with file from SQL2 Share FROM DISK = N ‘\\SQL2\backups\UA\DB\DB.BAK’ 1. Let the Server take backup on default directory and copy the file in your desired folder. I did that. 2. Give same kind of permissions to your desired folder as Backup directory has. Hope it solves the issue. Thanks alot MoonGuy, also i found that the installation path & Backup Directory of SqlServer Express can be found at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer in BackupDirectory key. I ran into a similar scenario where I wanted to backup my Testing databases on to the E:\ of my Dev database server for storage. I just added the service account (LOCAL\sql05svc) for Sql Server into the local admin group on the Dev machine where I am writing the backups to and it worked out fine too. The account did have the same password on both machines though. I am guessing you could do the same with a Domain account that you use to run Sql Server service with. great help..i had the same problem and i have resolve it doing the follow my operating system is winXP pro. Control panel->administrative tools->services-> SQL Server at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’ thanks for the help i have spent more than four hours googling for it
at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop'» If you run into a similar problem at the folder-level, try right-clicking to see if the above two accounts exist within the Security tab. Thanks, that helped a lot. If you run into a similar problem at the folder-level, try right-clicking to see if the above two accounts exist within the Security tab. |
«Control panel->administrative tools->services-> SQL Server
at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop'»
Make sure you dhould be having enough access on the drive. from SQL level and OS level too.
great help..i had the same problem and i have resolve it doing the follow
my operating system is winXP pro.
Control panel->administrative tools->services-> SQL Server
at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’
thanks for the help i have spent more than four hours googling for it
Thank you for explaining, i was lost, and i didnt know wut else to do thanks
I was having the same problem trying to restore a backup file sent to me. Heres how I fixed it:
Copied the backup file into SQL’s default backup directory (Program files\SQL\MSSQL.1\Backup)
Right clicked the file, properties
Under Security clicked Advanced
Check «Inherit from parent. » apply and ok
Should do the trick. in my case the directory had the right permissions so if I did a backup the file would get the right permissions but on a file sent to me it did NOT have the right permissions. Doing this assigns the same permissions and the backup folder and also then you don’t have to make any other system changes since you just changed the file. Hope this helps someone.
great help..i had the same problem and i have resolve it doing the follow
my operating system is winXP pro.
Control panel->administrative tools->services-> SQL Server
at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’
thanks for the help i have spent more than four hours googling for it
I had a similar issue with this problem while restoring a database backup file.
We were able to solve the problem by giving Read permissions to the SQLBrowserUser.
I added NETWORK and NETWORK SERVICE accounts to the copy folder permisssions and security tabs.
You need to check the security permissions on the folder you are trying to backup to. Make sure the service account (Network Service) has write permissions. It may well not do.
SQL on changing the service account changes the permissions on the critical drives it knows about but won’t to it for all the drives in a server.
Just a google searcher who found your post and wanted to say thanks! Your directions solved my issue. Appreciate you taking the time to write it down!
Error restoring the database. Cannot open backup device ‘E:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\QCTL_new_CopyTool.bak’.
Operating system error 2(The system cannot find the file specified.).
RESTORE FILELIST is terminating abnormally.
Thanks to Arxigos,
Was also googling several hours to find an answer.
Thanks again for the solution.
Thanks for your help. It saved me too.
I have written an article on SQL Server backups and the solution for this issue,
This errors has been an ongoing issue:
1. System.Data.SqlClient.SqlError: Cannot open backup device ‘F:\foldername’. Operating system error 5(Access is denied.). (Microsoft.SqlServer.Smo)
2. Msg 3201, Level 16, State 1, Line 1
Cannot open backup device ‘C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\//ves10/New/filenam.bak’. Operating system error 3(The system cannot find the path specified.)
The easy way to solve this is by:
2. Create a new user login account in the SQL server and give it all the privilages present which include sysadmin, setupadmin, dbcreator etc.
>> Control panel->administrative tools->services-> SQL Server
>> at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’
Thanks a lot, it is still saving people lives years after posting this solution. But I wonder what made it behave like this in the first place!
— Vijay Kumar Jayabal
I am to getting this same error and I solved this by
>> Control panel->administrative tools->services-> SQL Server
>> at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’
Is it possible by someother way to overcome this error possibly a sql query? or should we need to add the command line to enable ‘local system account’ at the time of SQL Express installation itself?
SQL 2005:I am running into this same issue, but in my case, backing it up to a share in a different domain.
SQL Server\SQL Server agent started with Pduct\domain account and backing databases to a share in a non-pduct domain share.
It works fine if I backup for the same non-pduct domain sql server, but not from pduct domain. Getting ‘Access is denied’. I tried all the above options mentioned.
Any idea what else can I do to solve this. Having the network eng to look into permissions on the share, waiting for a reply, meantime I found this.
You may need to check the domain connectivity. I have seen where connect from one domain to other they used to use bridge domain. It means from domain A your AD group belogs to and you want to connect to domain B, then you have to connect to the domain C_B and from C_B domain you can connect to the domain B.
Definatly it is lengthy process to copy your files on the different domain.
As you mentioned «Access denied» that means your domain B account is not trusted with the server.
Manu Please click the Mark as Answer if my post solves your issue.
I had the same problem. checked the folder, removed the «READ ONLY» and «Service» to the list of accounts who have permission and it WORKED. THANKS to all of you
I have the same problem.
Trying to backup an external database, and save the backup to my local computer!
First of all the folder «C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup» did not exist.
So I tried create it manually, and do backup. No file is created, but the program says, that the backup is successfull. Do not understand why.
Ok. I found another way to do it.
Downloaded this program to do a backup:
Maybe this could help someone. Helped me 🙂
Also I DID NOT change the «login as» for the SQL Server service because I WANT it to use the NETWORK SERVICE account not a local system account.
let me simplify it, go to control panel>services and see the «Logon As» for MSSQLSERVER. Remember this user.
Now go to ur desired backup folder(anywhere in ur Network).
Now the same user with full access control. Apply
u r done!! Go agead and make ur back up.
Solution posted by Moonguy close to the top worked for me.
Every database I worked with restored fine ecept the one I needed to work with, until I gave the MSSQL user account permissions to my folder, or copied the backup file to the MSSQL.2008\backup folder.
Why other databases worked fine, or this problem only croppe dup for this DB, I don’t know, but it works now.
I had the same issue but fixed it like this:
1. Create and share the folder (in my case c:\backup\). Then give everyone read/write permissions for the folder (\\SERVERNAME\backup\). Alternative you could give the NETWORK SERVICE full control in the share
2. Use the UNC patch as export location \\SERVERNAME\backup\
Thanks for the solution it works «Go to Backup directory and check the user name. Its very big name and I have not checked how SQL server adds it in allowed users list»
I added the SQLusername to my folder and it works!
Adding the service account and giving write permissions to it solved the problem for me.
Had the same problem running Virtual Server 2008 with SQL 2008. Added the MSSQL account to the permission list for the folder I wanted to save backups in and it worked. Thanks
i am facing the same prblm i am wrking on asp.net & trying to backupa file on network folder
i have given all permission to everyone to the shared network folder still i get the above error msg
You are great. Thanks for explaining step by step.
This fixed my issue. Thank you!!
Thank you, I hadn’t even considered file permissions 🙂
I gave the SQL svc, SQL agent, network and network service accounts full control on this directory.
Do I also need to give rights on the SQL server default backup directory actually on the SQL box?
Control panel->administrative tools->services-> SQL Server
at the properties i choose ‘log on as: local system account and also choosed to allo service to interact with desktop’
Here is a bit detail of the Answer that worked for me.
1. find out the sql server agent`s account. Eg. Abebe (Services>right click on sql server agent> ppy> login. )
2. Go to the drive that you want to do backup to. Eg. M
4. Go to Services->Sql Server Agent (right click it and restart)
5. Now the SQL server Agent has enough permission on that drive to open and get access to it.
6.If you try to take a backup after the above steps it should work.
P.S. If further help or clarification is needed let me know.
Also do the same for the account that runs the SQL Server as well.
Some of my clients report me the same error the problem was that he was using the folder name «d:\data» but he has forgotten to add the file name of the backup, so, we add the file name «d:\data\BKDB01.bk» and works.
I had this same issue. new disk that I was backing up to. I had to create a directory in the disk and then was able to back up to that directory. wasnt able to backup to the root of the disk.
I’ve been burned by this before, but didn’t think to check it until I had spent an hour trying to back up a SCVMM SQL 2012 database: The SQL Agent service wasn’t running because it was set to manual start (the default). I started the service and had no trouble with the backup. Of course, I then set the service to automatic startup, since this shouldn’t cause any harm.
This is a very old thread and I didn’t read the whole thing, but someone early on simply mentioned the SQL Agent service and that was enough to remind me, so thanks for that!
1) Give the MSSQLService service instance a named local/domain account to run under and then give that account permissions to the directory.
Giving the SQL Agent service a named user account and giving it the appropriate folder rights didn’t seem to make any difference.
Ele consegue fazer backup, manual, mais quando voce tenta fazer via manitenance plan da error
» failed with the following error: «Cannot open backup device ‘
Verifique o nome do database
(o nome do database estava com espaço em branco no final)
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se
Sometimes the folder exists, and then you get this error. Sometimes the there is no folder with this name, and it is possible to create the file.
Although Windows does not really like when you try to create files on the top level of a disk, and tends to have restrictive permissions.
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se
Hey wat is the solution?? Can u plz share with me, I dint get wat exactlly u guys are talking about. I am getting the same problem, I have a user_account and i dont know what permisions it has, I took a backup from the system connected in LAN, and when i tried to restore the database after taking backup, I got this error. Its troubling a lot yaar, plz get me a solution and take me out of this.
1. The solution is listed above. Read and work with your system administrators to get the permissions set.
Thank You for actually supplying a simple and workable answer!
Followed your instructions and fixed my issue immediately!!
I had a similar problem with this configuration and eventual solution. Hope this helps anyone else out there!
TFS installation with SQL Server Express 2012 on server 1, trying to back up to a lettered storage partition on server 2.
The service «SQL Server (SQLEXPRESS)» was initially logged in as «Network Service».
I could see that I had the network path correct since a «BackupSettings.xml» file was being created at the desired backup path.
Solution:
I changed the user logged in to run the «SQL Server (SQLEXPRESS)» service to a domain account we use to run SQL Server services on both servers. I did this on server 1, the one with TFS, using Server Manager > Configuration > Services.
This might have been redundant or unnecessary, but I also changed the Service Account for the TFS Application Tier to that same domain account. I did this using the Team Foundation Server Express Administration Console > server 1 > Application Tier.
I added that domain account to the Administrators Group of server 2, the backup destination server. I did this using Server Manager > Configuration > Local Users and Groups > Groups > Administrators.
After that I was able to configure and run the TFS backups.