I'm fairly certain the syntax is correct. Not a lot of people do this, so I realize it's a bit out there. The tape drive properties in Windows show the device name as \\.\Tape0 <file:///\\.\Tape0> , so I have to assume that there's something going on along the lines of what you pointed out. If I have time I certainly want to validate a few things before I call it quits on getting things to work as I was hoping to.
Yeah, I'm probably kind of on my own with this experiment! Thanks -Mike From: [email protected] [mailto:[email protected]] On Behalf Of Jakob Bohm Sent: Tuesday, January 21, 2014 7:51 AM To: [email protected] Subject: Re: [Help-tar] GNU tar and/on Windows server On 1/12/2014 8:27 AM, Mike Pepe wrote: Greetings- I'm not sure if I'm going to find anyone who has tried this, but I hope someone may have a pointer as to what may be going on. I'm trying to back up data to a tape drive attached to a Windows 2012 server. When I attempt to do this with the version of tar supplied in unxutils, I get this error: C:\temp>tar --version tar (GNU tar) 1.12 Copyright (C) 1988, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by John Gilmore and Jay Fenlason. C:\temp>tar cvf \\.\Tape0 <file:///\\.\Tape0> . tar: Cannot open \\.\Tape0 <file:///\\.\Tape0> : Invalid argument tar: Error is not recoverable: exiting now Hmm, I haven't tried this in a long time, are you sure the \\.\Tape0 <file:///\\.\Tape0> Win32 device name is the right one? The other likely possibility would be some aspect of how the UnxUtils porters pass the file name to the Win32 system level "open()", aka "CreateFile()" . For instance, if they try to prefix "C:" or do other incorrect reparsing, or if they pass open flags inconsistent with tape drives. As an experiment, the tar in Cygwin does actually work: The Cygwin translation layer obviously does not involve passing the Win32 device name though the upper layers of tar and libc, and may do unspecified things inside the modified newlibc in order to make tape opens work, given that Cygwin obviously has special case tape open code which recognizes the "/dev/st0" file name and maps it to either \\.\Tape0 <file:///\\.\Tape0> or something similar. $ tar --version tar (GNU tar) 1.26 Packaged by Cygwin (1.26-1) Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by John Gilmore and Jay Fenlason. administrator@rackable ~ $ tar cvf /dev/st0 /cygdrive/c/temp <snip> Enjoy Jakob -- Jakob Bohm, CIO, Partner, WiseMo A/S. http://www.wisemo.com Transformervej 29, 2730 Herlev, Denmark. Direct +45 31 13 16 10 This public discussion message is non-binding and may contain errors. WiseMo - Remote Service Management for PCs, Phones and Embedded
