This post will outline steps to set children-max in CentOS/RHEL 7 temporarily and permanently.
Temporary set children-max for udev Service
To change temporarily, without rebooting:
# systemctl status systemd-udevd.service ... Status: "Processing with ## children at max" <--- The original value can be seen
# udevadm control --children-max=[new value]
# systemctl status systemd-udevd.service ... Status: "Processing with ## children at max" <--- The new value can take effect
Persistently set children-max for udev Service (requiring a reboot)
To change permanently, we need to modify the GRUB2 configuration file. Please note that this requires a reboot of the system.
1. Backup the GRUB2 configuration file /boot/grub2/grub.cfg.
2. Edit the line of ‘linux16‘ by adding ‘udev.children-max=[value]‘
from:
linux16 /vmlinuz-4.1.12-###.el7uek.x86_64 root=UUID=### ro crashkernel=auto rhgb quiet
to:
linux16 /vmlinuz-4.1.12-###.el7uek.x86_64 root=UUID=### ro crashkernel=auto rhgb quiet udev.children-max=[value]
3. Save file /boot/grub2/grub.cfg and exit.
4. Reboot the server for the new value to be applied.
# shutdown -r now
/boot/grub2/grub.cfg | grep linux16