1
00:00:00,005 --> 00:00:01,005
- [Instructor] Yay for Grub,

2
00:00:01,005 --> 00:00:04,005
the Grand Unified

3
00:00:04,005 --> 00:00:06,008
Linux bootloader.

4
00:00:06,008 --> 00:00:08,004
Now when you power on your system,

5
00:00:08,004 --> 00:00:10,008
there's probably some sort of power on self test

6
00:00:10,008 --> 00:00:13,002
in the BIOS and things like that,

7
00:00:13,002 --> 00:00:17,007
but the system will start up the bootloader.

8
00:00:17,007 --> 00:00:20,002
GRUB will be in a special place in the disc

9
00:00:20,002 --> 00:00:22,007
for the system to be able to find it.

10
00:00:22,007 --> 00:00:25,007
That gets started and it's GRUB's job

11
00:00:25,007 --> 00:00:28,007
to load the kernel into RAM

12
00:00:28,007 --> 00:00:31,003
and also commonly with Linux,

13
00:00:31,003 --> 00:00:34,003
there's going to be a fairly small,

14
00:00:34,003 --> 00:00:38,007
little file system called the initial root file system,

15
00:00:38,007 --> 00:00:40,009
sometimes called the Knit rd.

16
00:00:40,009 --> 00:00:43,007
It used to be a RAM disc.

17
00:00:43,007 --> 00:00:47,003
So GRUB loads those two files in memory

18
00:00:47,003 --> 00:00:49,008
and then starts up the kernel,

19
00:00:49,008 --> 00:00:52,007
passing to it the kernel command line

20
00:00:52,007 --> 00:00:56,001
that's set in GRUB's config file

21
00:00:56,001 --> 00:00:58,005
and GRUB has some nice features,

22
00:00:58,005 --> 00:01:00,003
including being able to be interrupted

23
00:01:00,003 --> 00:01:03,000
before it starts to kernel.

24
00:01:03,000 --> 00:01:05,005
GRUB is quite powerful.

25
00:01:05,005 --> 00:01:10,002
GRUB is built with support for some file systems

26
00:01:10,002 --> 00:01:13,008
so that it can read your disc

27
00:01:13,008 --> 00:01:16,002
and look for files by name.

28
00:01:16,002 --> 00:01:18,005
Some bootloaders can't do that.

29
00:01:18,005 --> 00:01:20,009
That means, for example,

30
00:01:20,009 --> 00:01:23,005
with the interactive nature of GRUB,

31
00:01:23,005 --> 00:01:26,005
you can get it to find the name of a kernel

32
00:01:26,005 --> 00:01:29,005
for you if you had a typo.

33
00:01:29,005 --> 00:01:32,003
There's quite a lot involved with GRUB.

34
00:01:32,003 --> 00:01:37,001
If you do a man minus K grub, the K means keyword.

35
00:01:37,001 --> 00:01:39,008
You can see things related to GRUB.

36
00:01:39,008 --> 00:01:41,000
There's a lot going on.

