Skip to content

doesFileExist doesn't work for some /dev files in ghc 6.12

Hi. I've noticed this with a program that checks for a lvm image. Here's the situation:

Prelude System.Directory> doesFileExist "/dev/null"
True
Prelude System.Directory> doesFileExist "/dev/stdin"
True
Prelude System.Directory> doesFileExist "/dev/sda0"
False
Prelude System.Directory> doesFileExist "/dev/zezinho/sid"
False

All of these files exist in my system:

marcot@zezinho:/dev$ ls -l null sda1 stdin zezinho/sid /proc/self/fd/0 mapper/zezinho-sid /dev/pts/5
crw--w---- 1 marcot tty    136, 5 Fev 12 09:09 /dev/pts/5
brw-rw---- 1 root   disk   254, 4 Fev 12 08:55 mapper/zezinho-sid
crw-rw-rw- 1 root   root     1, 3 Fev 12 08:33 null
lrwx------ 1 marcot marcot     64 Fev 12 09:09 /proc/self/fd/0 -> /dev/pts/5
brw-rw---- 1 root   disk     8, 1 Fev 12 08:55 sda1
lrwxrwxrwx 1 root   root       15 Fev 12 08:33 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root   root       21 Fev 12 08:55 zezinho/sid -> ../mapper/zezinho-sid
Edited by Ian Lynagh -
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information