Q. Can you explain me what is device files and how do I access or see device files? Why UNIX / Linux has device files?
A. Under Linux and UNIX each and every hardware device treated as a file. A device file allows to accesses hardware devices so that end users do not need to get technical details about hardware.
In short, a device file (also called as a special file) is an interface for a device driver that appears in a file system as if it were an ordinary file. This allows software to interact with the device driver using standard input/output system calls, which simplifies many tasks.
Device file two types
There are two types of device files based upon how data written to them and read from them is processed by the operating system and hardware:
- Character special files or Character devices
- Block special files or Block devices
Understanding Character special files or Character devices
- Talks to devices in a character by character (1 byte at a time)
- Examples: Virtual terminals, terminals and serial modems etc
Understanding Block special files or Block devices
- Talks to devices 1 block at a time ( 1 block = 512 bytes to 32KB)
- Examples: Hard disk, DVD/CD ROM, and memory regions etc
Why use device files?
Device file allows transparent communication between user space applications and computer hardware.
Device file location
All device files are stored in /dev directory. Use cd and ls command to browse the directory:
cd /dev/
ls -l
How do I find out the device file type?
Simply use ls -l command:
ls -l /dev
Look for file's type in the first column output.
A character device is marked with a c as the first letter of the permissions strings.
$ ls -l /dev/console
A block device is marked with a b as the first letter of the permissions strings:
$ ls -l /dev/sdb1
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- My 10 UNIX Command Line Mistakes
- Linux: 20 Iptables Examples For New SysAdmins

- 25 PHP Security Best Practices For Sys Admins
- The Novice Guide To Buying A Linux Laptop
- 10 Greatest Open Source Software Of 2009
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
Facebook it - Tweet it - Print it -


{ 6 comments… read them below or add one }
Simple explaination, yet effective. thanks,
v gud explanation thnx dude……………
cat /proc/devices shows list of character & block files.
Yes , very clear explanation indeed… Thanks it answered my query !
great ..cleared all my doubts
Thanks to linux for answering my questions. I am a Tanzanian boy studying an Information Technology degree. I am aged 22 years.