public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device?
@ 2006-06-01 10:19 Robert McKay
  2006-06-01 15:21 ` Igor Peshansky
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Robert McKay @ 2006-06-01 10:19 UTC (permalink / raw)
  To: cygwin

I've got rather an annoying/frustrating problem with cygwin 2.510.2.2
on WinXP [Version 5.1.2600]. It was working fine last friday but over
the weekend gremlins have broken my /dev/null.

$ echo > /dev/null
bash: /dev/null: No such file or directory

$ ls -l /dev/null
crw-rw-rw- 1 mckayr1 mkpasswd 1, 3 Jun  1 10:35 /dev/null

$ rm /dev/null
rm: cannot remove `/dev/null': No such file or directory

$ mknod /dev/null c 1 3
mknod: `/dev/null': File exists

$ mknod /tmp/null c 1 3
$ ls -l /tmp/null
crw-rw-rw- 1 mckayr1 mkpasswd 1, 3 Jun  1 10:36 /tmp/null
$ echo > /tmp/null
bash: /tmp/null: No such file or directory

$ echo > /dev/zero
$

$ dd if=/dev/zero of=file count=10
10+0 records in
10+0 records out
5120 bytes (5.1 kB) copied, 0.02 seconds, 256 kB/s
$ ls -l file
-rw-rw-rw- 1 mckayr1 mkpasswd 5120 Jun  1 10:39 file

I found a few similar references to this issue in the mailing list
archives, however there it was happening to people running on embedded
windows.

Then I found this post:

http://www.cygwin.com/ml/cygwin/2003-10/msg01017.html

which shed some light on what might be the issue. Cygwin /dev/null is
implemented on top of the windows NUL device. Sure enough when I try
this from cmd.exe :

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\>dir > NUL
The system cannot find the file specified.

C:\>


Now I can't say for sure that this was working on friday, but I got a
few other people to try the same thing and they don't get that "The
system cannot find the file specified" message (ie: for them it works
as you would expect):

C:\>dir > NUL
C:\>

I don't have any idea why or how my NUL device has stopped working so
I suppose my first question to the list is somewhat offtopic :

Does anyone know what can go wrong with the windows NUL device? :-)

Do you need any kind of special permissions to use NUL?

I've tried rebooting, logging out logging back in, re-installing
cygwin many times but still no joy.

I guess my next question is.. how hard would it be to simply replace
the cygwin /dev/null with one that doesn't use the NUL device? If I
could remove the /dev/null device and replace it with a second
/dev/zero device that would probably fix 99% of my problems as most
things are only trying to write to /dev/null, not read from it. If I
could write my own /dev/null device that just implemented a couple of
do-nothing read/write syscalls without using the windows NUL service
that would be even better.

Any suggestions appreciated,

Sincerely,

Robert McKay.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: bash: /dev/null: No such file or directory. Why is /dev/null  implemented using the windows NUL device?
  2006-06-01 10:19 bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device? Robert McKay
@ 2006-06-01 15:21 ` Igor Peshansky
  2006-06-01 16:30 ` Christopher Faylor
  2006-06-01 18:31 ` Lev Bishop
  2 siblings, 0 replies; 4+ messages in thread
From: Igor Peshansky @ 2006-06-01 15:21 UTC (permalink / raw)
  To: Robert McKay; +Cc: cygwin

On Thu, 1 Jun 2006, Robert McKay wrote:

> I've got rather an annoying/frustrating problem with cygwin 2.510.2.2

First off, that is not your version of Cygwin -- it's the version of setup
you used to install it.  Please read the Cygwin problem reporting
guidelines at <http://cygwin.com/problems.html> for instructions on
reporting the versions of various parts of your Cygwin installation.

> on WinXP [Version 5.1.2600]. It was working fine last friday but over
> the weekend gremlins have broken my /dev/null.
>
> $ echo > /dev/null
> bash: /dev/null: No such file or directory
>
> $ ls -l /dev/null
> crw-rw-rw- 1 mckayr1 mkpasswd 1, 3 Jun  1 10:35 /dev/null
> [snip]
>
> I found a few similar references to this issue in the mailing list
> archives, however there it was happening to people running on embedded
> windows.
>
> Then I found this post:
>
> http://www.cygwin.com/ml/cygwin/2003-10/msg01017.html
>
> which shed some light on what might be the issue. Cygwin /dev/null is
> implemented on top of the windows NUL device. Sure enough when I try
> this from cmd.exe :
>
> Microsoft Windows XP [Version 5.1.2600]
> (C) Copyright 1985-2001 Microsoft Corp.
>
> C:\>dir > NUL
> The system cannot find the file specified.
> [snip]
>
> I don't have any idea why or how my NUL device has stopped working so
> I suppose my first question to the list is somewhat offtopic :
>
> Does anyone know what can go wrong with the windows NUL device? :-)

Try asking on a Microsoft forum.

> Do you need any kind of special permissions to use NUL?

Not usually.

> I've tried rebooting, logging out logging back in, re-installing
> cygwin many times but still no joy.

None of these actions are likely to restore NUL.  Reinstalling Cygwin was
particularly futile, as Cygwin doesn't do anything to the underlying
Windows configuration.

> I guess my next question is.. how hard would it be to simply replace
> the cygwin /dev/null with one that doesn't use the NUL device? If I
> could remove the /dev/null device and replace it with a second
> /dev/zero device that would probably fix 99% of my problems as most
> things are only trying to write to /dev/null, not read from it. If I
> could write my own /dev/null device that just implemented a couple of
> do-nothing read/write syscalls without using the windows NUL service
> that would be even better.

If you've found the embedded Windows thread from last year, you must've
seen the footnote in <http://cygwin.com/ml/cygwin/2006-04/msg00316.html>,
which tells you how to do it.  I suggest you read the rest of the thread,
however.  For one, you may not be able to redirect output from Windows
programs to /dev/null after that change.  Also, you will then have to live
with essentially your own branch of Cygwin, unsupported on this list.
HTH,
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_	    pechtcha@cs.nyu.edu | igor@watson.ibm.com
ZZZzz /,`.-'`'    -.  ;-;;,_		Igor Peshansky, Ph.D. (name changed!)
     |,4-  ) )-,_. ,\ (  `'-'		old name: Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

"Las! je suis sot... -Mais non, tu ne l'es pas, puisque tu t'en rends compte."
"But no -- you are no fool; you call yourself a fool, there's proof enough in
that!" -- Rostand, "Cyrano de Bergerac"

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device?
  2006-06-01 10:19 bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device? Robert McKay
  2006-06-01 15:21 ` Igor Peshansky
@ 2006-06-01 16:30 ` Christopher Faylor
  2006-06-01 18:31 ` Lev Bishop
  2 siblings, 0 replies; 4+ messages in thread
From: Christopher Faylor @ 2006-06-01 16:30 UTC (permalink / raw)
  To: cygwin

On Thu, Jun 01, 2006 at 10:57:30AM +0100, Robert McKay wrote:
>I guess my next question is..  how hard would it be to simply replace
>the cygwin /dev/null with one that doesn't use the NUL device?  If I
>could remove the /dev/null device and replace it with a second
>/dev/zero device that would probably fix 99% of my problems as most
>things are only trying to write to /dev/null, not read from it.  If I
>could write my own /dev/null device that just implemented a couple of
>do-nothing read/write syscalls without using the windows NUL service
>that would be even better.

Personally, I would be rather concerned if my Windows system started
dropping devices like "NUL" and I'd wonder what else was wrong with it.
I don't think modifying cygwin to deal with the breakage is really in
your best interest.  I think getting to the bottom of the problem is
what you need to do.  Maybe you have a virus?  Or maybe one of those
system doctor programs will be able to diagonose what's going on.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device?
  2006-06-01 10:19 bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device? Robert McKay
  2006-06-01 15:21 ` Igor Peshansky
  2006-06-01 16:30 ` Christopher Faylor
@ 2006-06-01 18:31 ` Lev Bishop
  2 siblings, 0 replies; 4+ messages in thread
From: Lev Bishop @ 2006-06-01 18:31 UTC (permalink / raw)
  To: cygwin

On 6/1/06, Robert McKay wrote:

> Does anyone know what can go wrong with the windows NUL device? :-)
>
> Do you need any kind of special permissions to use NUL?

You could download winobj from sysinternals.com.
Check that \GLOBAL??\NUL is a symbolic link to \Device\Null
Check that \Device\Null exists.
Check the permissions for both (properties, security tab).

HTH
Lev

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-06-01 17:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-06-01 10:19 bash: /dev/null: No such file or directory. Why is /dev/null implemented using the windows NUL device? Robert McKay
2006-06-01 15:21 ` Igor Peshansky
2006-06-01 16:30 ` Christopher Faylor
2006-06-01 18:31 ` Lev Bishop

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).