I am currently working with an Embedded Linux Board and need to use the serial port, which is represented by the device file /dev/ttyS0. Upon running the command ls -l, I observed that the major and minor numbers for this device are 247 and 0, respectively. However, according to the Linux Allocated Devices Guide, these numbers should be 4 and 64. How can I change them to the correct values?

1 Answer 1


It's possible that you have a different module that creates the device and the module determines the major & minor numbers. Use the commands

readlink /sys/dev/char/247\:0/device/driver
udevadm info -a -n /dev/ttyS0

to find out what module is controlling the device. It may not be the usual PNP subsystem and serial driver. If the device is working then you should be ok. If it isn't you will need some more information, perhaps from dmesg and digging into the module. You cannot change the device number without changing the kernel module.

  • You are right. I find out that I have a different custom module handling the device. The serial driver is working. Apr 13 at 15:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .