By the end of this article you should be able to answer the following questions:
$ uname -r
$ ls -lh /boot | grep vmlinuz
- /proc (houses running process's data)
- /sys (houses system device drivers)
- /dev (houses file representation of all your devices)
$ man hier
The Linux kernel is the core of your OS. You can find out what is your kernel's version using the uname command:
$ uname -r 3.10.0-229.14.1.el7.x86_64
As a safety measure, never update an existing kernel, just install a new one. Yum is smart enough to do this for you.
The linux kernel is amonolithic kernel.
The Linux kernel loads device drivers and filesystem drivers from kernel modules. These modules are loaded dynamically, as and when needed. These kernel modules can be found in the
$ ls -l /lib/modules total 8 drwxr-xr-x. 8 root root 4096 Sep 19 20:58 3.10.0-229.14.1.el7.x86_64 drwxr-xr-x. 7 root root 4096 Sep 16 19:31 3.10.0-229.el7.x86_64
The kernel itself can be found in the /boot folder, here is an example of a kernel file:
$ ls -lh /boot | grep vmlinuz -rwxr-xr-x. 1 root root 4.8M Sep 16 19:31 vmlinuz-0-rescue-bb2262658ee64941afea091071b78f45 -rwxr-xr-x. 1 root root 4.8M Sep 15 16:14 vmlinuz-3.10.0-229.14.1.el7.x86_64 -rwxr-xr-x. 1 root root 4.8M Mar 6 2015 vmlinuz-3.10.0-229.el7.x86_64
“vmlinuz” refers to the fact that the Linux kernel is stored in a compressed image file. This gets decompressed during bootup.
During boot-up, the kernel creates the following folders:
/proc- This contains running processes and any kernel parameters that can modify
/sys- This contains the detected system devices and details about their drivers. However system devices are not accessible via this folder, they are accessible via the /dev folder.
/dev- This stores the access points for your devices
For help info about these high level directories as well as others, checkout:
$ man hier