1
00:00:00,000 --> 00:00:18,719
Hey guys and welcome back. Now in the previous nugget we had talked about Grubb Legacy and

2
00:00:18,719 --> 00:00:24,199
we did mention and I suppose the name will give you a little bit of a hint that Grubb

3
00:00:24,199 --> 00:00:30,800
Legacy is Legacy and it's not the most updated version. We now have Grubb 2 and this is really

4
00:00:30,800 --> 00:00:36,399
what we're going to be seeing on modern Linux based systems. Now the reason why is that it

5
00:00:36,399 --> 00:00:41,719
does bring with it several improvements. One of the improvements it brings is the fact that it

6
00:00:41,719 --> 00:00:48,320
has UUID support which makes things much much easier and it handles our Grubb configuration

7
00:00:48,320 --> 00:00:54,159
file and the generation of that configuration file any more programmatic way. Simply put,

8
00:00:54,159 --> 00:01:02,399
Grubb 2 just is easier to use and much better designed. Now with respect to Grubb 2 we do

9
00:01:02,399 --> 00:01:07,780
have some particular locations that we do want to be aware of. Now the first location we want to

10
00:01:07,780 --> 00:01:15,719
check out is in the Etsy directory and in the Grubb.D directory within that. What you're going to

11
00:01:15,719 --> 00:01:22,000
find within this directory right here are a whole bunch of templates and another very important

12
00:01:22,159 --> 00:01:29,799
file is also within the Etsy directory but it's going to be Etsy defaults forward slash Grubb. Now

13
00:01:29,799 --> 00:01:37,159
one thing to note here is that see this file right here in conjunction with the templates and the

14
00:01:37,159 --> 00:01:46,240
Etsy GrubbD directory. They are actually used together to generate a Grubb.Cfg file. So with the

15
00:01:46,280 --> 00:01:54,640
Grubb legacy you would just go in and modify the Grubb.Cfg file directly. In this case here we do

16
00:01:54,640 --> 00:02:00,719
not modify the Grubb.Cfg itself. If we want to make changes to what will ultimately be our Grubb

17
00:02:00,719 --> 00:02:06,919
configuration file we want to do it via modification of those templates within the Etsy Grubb.D

18
00:02:06,919 --> 00:02:14,319
directory or the Etsy default Grubb file which contains some very particular settings. So let

19
00:02:14,359 --> 00:02:21,439
me actually show you the templates as well as our settings file that will be used to generate this

20
00:02:21,439 --> 00:02:30,039
Grubb configuration file. Okay so if we go in to the Etsy directory and then into Grubb.D if we do

21
00:02:30,039 --> 00:02:36,840
an LS we're actually going to see these configuration template files. Now we can actually go in and

22
00:02:36,840 --> 00:02:43,519
look at these if we so choose. Let's go into maybe say Debian theme so 05 and hit enter and we can see

23
00:02:43,560 --> 00:02:51,040
what we have in here. This is ultimately a long bash script. Okay so if we escape out notice we

24
00:02:51,040 --> 00:02:57,320
have these custom templates. Now these are the files we would like to be editing. If we want to

25
00:02:57,320 --> 00:03:03,640
create some custom menu entries remember we talked about the Grubb menu file earlier on and the

26
00:03:03,640 --> 00:03:09,920
previous nuggets. If we want to generate new entries we could do so by amending to this custom

27
00:03:10,319 --> 00:03:15,319
file right here this custom template so to speak. Now this is just one location that we have to

28
00:03:15,319 --> 00:03:21,159
check like I say we also want to be looking at the default directory and within here we will have

29
00:03:21,159 --> 00:03:28,239
this Grubb file. Okay so let me go in here so nano Grubb and we can see here this is a settings

30
00:03:28,239 --> 00:03:34,199
file and like I say this is going to be used in conjunction with the templates we see in the

31
00:03:34,359 --> 00:03:41,479
Etsy Grubb.D directory. Now what we are actually looking at here is not too dissimilar to what we

32
00:03:41,479 --> 00:03:47,719
talked about in the previous nuggets. Remember we talked about a default value with respect to the

33
00:03:47,719 --> 00:03:53,599
options within our Grubb menu. The 0 being the option at the very top and if we happen to change

34
00:03:53,599 --> 00:03:58,879
this to the number 1 that would mean we were choosing the second from the top. This is the same

35
00:03:58,960 --> 00:04:06,000
type of deal this time though for Grubb 2 so we use the Grubb underscore default option and if we

36
00:04:06,000 --> 00:04:11,560
want to automatically select the option at the top once that timer has elapsed we would leave

37
00:04:11,560 --> 00:04:18,079
that value at the value 0. However if we wanted to choose the second from the top by default once

38
00:04:18,079 --> 00:04:24,680
the timer elapses we would change that to the value 1 so on so forth. Now the next value we

39
00:04:24,680 --> 00:04:31,000
can see here is the Grubb timeout style we have the value hidden. This is similar to what we saw

40
00:04:31,000 --> 00:04:37,600
before when we talked about the hidden menu option with respect to the Grubb legacy. When we have

41
00:04:37,600 --> 00:04:43,800
the Grubb timeout style set to hidden the title menu is not going to be displayed during the actual

42
00:04:43,800 --> 00:04:50,319
timeout countdown. Now the Grubb timeout we have right here again we can change this value if we

43
00:04:50,480 --> 00:04:56,319
choose this is how many seconds should we wait before we actually boot to the default. Now right

44
00:04:56,319 --> 00:05:02,199
now we have the value at 0 which means that we're not going to wait at all. If we wanted to modify

45
00:05:02,199 --> 00:05:08,159
this we could change this to 5 which would be 5 seconds or 30 which would be 30 seconds or if we

46
00:05:08,159 --> 00:05:13,839
so choose we could actually set the value to negative 1. Now what this would actually mean is

47
00:05:13,839 --> 00:05:20,799
that we would wait forever we would actually not count down and then load in a default option instead

48
00:05:20,799 --> 00:05:27,319
we would actually require that the user is explicit and chooses the option because quite simply we

49
00:05:27,319 --> 00:05:32,039
would just wait and wait and wait until they did so. Now we can see some other options here we can

50
00:05:32,039 --> 00:05:38,639
see Grubb command line Linux this is if we want to pass in additional parameters to the kernel

51
00:05:38,639 --> 00:05:45,279
such as the RHGB option that we talked about in the previous nuggets which would be the red hat

52
00:05:45,279 --> 00:05:51,839
graphical boots and if we wanted to use this with the quiet option we could also pass in the value

53
00:05:51,839 --> 00:05:59,240
quiet and we can also see the Grubb command line Linux defaults and as we can see here we're passing

54
00:05:59,240 --> 00:06:05,560
the values quiet and splash so quiet to suppress the output splash to actually get that splash menu.

55
00:06:05,560 --> 00:06:12,160
Now like I say this settings file in conjunction with the templates found in our Grubb.d directory is

56
00:06:12,160 --> 00:06:18,840
going to allow us to generate this Grubb.cfg.config file now as it stands right now if I just do

57
00:06:18,840 --> 00:06:26,439
a clear and I go to my boot directory we do an LS I have this directory here called Grubb now some

58
00:06:26,439 --> 00:06:32,639
distributions may actually have a directory called Grubb2 but on my Ubuntu machine or my

59
00:06:32,680 --> 00:06:40,039
Zubuntu machine this directory is just called Grubb now within here this is where the Grubb.cfg

60
00:06:40,039 --> 00:06:45,439
file is going to be located so if I actually go in and look at this file right here notice this

61
00:06:45,439 --> 00:06:51,919
file looks much much different from the configuration file I talked about in the previous nuggets this

62
00:06:51,919 --> 00:06:57,759
is much more programmatic and like I say it's going to be pulling from what we find within that Grubb.d

63
00:06:57,800 --> 00:07:06,120
directory and the settings in our XA default Grubb file now what if we wanted to change this Grubb.cfg

64
00:07:06,120 --> 00:07:13,039
file ie we wanted to modify some of the values within this directory here our configuration

65
00:07:13,039 --> 00:07:18,719
templates or we wanted to modify the actual settings within this file right here how would we

66
00:07:18,719 --> 00:07:23,800
actually generate that new file well let me show you what I can do here okay so like we can see

67
00:07:23,840 --> 00:07:30,680
here we do have this Grubb configuration file if we wanted though to generate a new configuration

68
00:07:30,680 --> 00:07:36,879
file from our templates and from our settings file how could we do such a thing well first we

69
00:07:36,879 --> 00:07:42,519
would make a modification that we wanted to implement either within one of our template files right

70
00:07:42,519 --> 00:07:49,319
here or alternatively we could go into our settings file right here so let's say I would change the

71
00:07:49,360 --> 00:07:55,879
Grubb default value from 0 to 1 and maybe the timeout will change it to 5 seconds so I'll save

72
00:07:55,879 --> 00:08:02,040
this and I'll push X so now what I will do is I will actually go to my boot menu so here we are

73
00:08:02,040 --> 00:08:08,240
and I have a command that I can use to generate this configuration file now be careful this

74
00:08:08,240 --> 00:08:13,680
command is actually different if you're using a Debian based system or a Red Hat based system if

75
00:08:14,120 --> 00:08:22,519
we are using a Debian based system the command is going to be Grubb-MKconfig and if you're on a Red

76
00:08:22,519 --> 00:08:29,879
Hat based system that would actually be Grubb2-MKconfig but like I say I happen to be on Ubuntu

77
00:08:29,879 --> 00:08:36,680
which is derived from Debian so I will use Grubb-MKconfig and I'll just say dash 0 to specify

78
00:08:36,680 --> 00:08:43,200
the output file that I'm going to generate and I'll just call this my new Grubb stuff touch CFG

79
00:08:43,440 --> 00:08:48,960
and if I enter now nothing is going to happen because I have to run this as root of course so I'll

80
00:08:48,960 --> 00:08:55,040
try this again and now we're going to generate this new configuration file if I do an LS we can see

81
00:08:55,040 --> 00:09:01,200
here we have now generated this new file here again pulling from those two different locations so now

82
00:09:01,200 --> 00:09:05,680
I could go in and have a look at this file that I have generated we can see all this programmatic

83
00:09:05,680 --> 00:09:11,360
stuff has been automatically generated okay let's go back and what I would do is I would actually

84
00:09:11,440 --> 00:09:17,120
move this file into the same directory as my Grubb configuration file which is in this directory

85
00:09:17,120 --> 00:09:23,039
here this might be Grubb2 for you okay so I've moved it in I go into this directory now we can see

86
00:09:23,039 --> 00:09:29,519
the Grubb configuration file and my newly generated one ultimately I would back this one up and I

87
00:09:29,519 --> 00:09:36,960
would rename this one the new one Grubb.Cfg and if I wanted to install this I could use my Grubb

88
00:09:36,960 --> 00:09:42,320
install command and then specify the location of where I want to install this now one thing I really

89
00:09:42,320 --> 00:09:47,280
do want to get to though and what I'll do is I'll actually terminate my SSH session right here and

90
00:09:47,280 --> 00:09:52,080
I'll just go directly to my virtual machine now what I'm going to do here is to restart my system

91
00:09:52,080 --> 00:09:58,879
and I'm going to try to access the Grubb menu now depending on whatever system you're using the way

92
00:09:58,879 --> 00:10:06,000
you do this may vary on my Windows machine the key the time going to press is the escape key you might

93
00:10:06,000 --> 00:10:11,039
be on a system whereby you might have to press the shift key so if you're having trouble doing this

94
00:10:11,039 --> 00:10:15,279
like I say there may be some variation you may have to do a little bit of googling to get the

95
00:10:15,279 --> 00:10:22,000
correct key for your system so what I will do here is I'll press restart and I'll press restart and

96
00:10:22,000 --> 00:10:27,919
I'll hit the escape key so now this brings me to this menu right here okay now what I'm going to do

97
00:10:27,919 --> 00:10:33,200
is I'm actually going to choose advanced options for Ubuntu and click this now if I try to full

98
00:10:33,280 --> 00:10:37,360
screen this it's not going to show the full screen unfortunately so I'm just going to change the view

99
00:10:37,360 --> 00:10:43,120
to scaled mode so it might look a little bit pixelated I do apologize now down the bottom here

100
00:10:43,120 --> 00:10:48,960
we can see we have these different options if I press the letter C this is going to bring me into

101
00:10:48,960 --> 00:10:55,120
a command line interface and as we can see here this is a minimal bash like interface and this is

102
00:10:55,120 --> 00:11:00,640
a prompt you may be presented with if you happen to have a severe issue on your machine now if I

103
00:11:00,639 --> 00:11:06,000
do the command ls we're actually going to see information relating to our disk so I can see

104
00:11:06,000 --> 00:11:13,199
HD 0 here that denotes the first disk ms-dOS 5 this is actually my partition information this is

105
00:11:13,199 --> 00:11:20,080
going to be sda5 so to speak this happens to be where my file system is mounted and this part here

106
00:11:20,080 --> 00:11:27,439
this is where my boot is mounted so if I actually happen to do ls and I select my root file system

107
00:11:27,440 --> 00:11:34,960
so I'll do HD and I can select ms-dOS 5 but I can just select the value 5 okay if I hit enter here

108
00:11:34,960 --> 00:11:42,880
it tells me the file system type ext we get the uuid as well as some basic partition information

109
00:11:42,880 --> 00:11:48,720
now if I happen to choose the forward slash for the root file system watch what happens see this

110
00:11:48,720 --> 00:11:54,000
this is just like what we see on our Linux base system here are all of our folders see this lost

111
00:11:54,000 --> 00:12:00,720
and found boot swap file say for example home so if I arrow up and I choose home we can see the IPv0

112
00:12:00,720 --> 00:12:06,879
folder so I can go into IPv0 we can see all my downloads and desktop folders so on so forth so

113
00:12:06,879 --> 00:12:13,039
we can still navigate our file system now you may recall when we talked about our grub legacy

114
00:12:13,039 --> 00:12:18,240
configuration file let me just bring this back up do you remember these settings here roots kernel

115
00:12:18,240 --> 00:12:24,560
and knit rd well we want to ultimately do a similar thing right here but there is a little bit

116
00:12:24,560 --> 00:12:29,600
of variation one thing to note here is that this option here kernel this is going to look a little

117
00:12:29,600 --> 00:12:36,720
bit different when we're using grub 2 the value is going to be the word linux not the word kernel

118
00:12:36,720 --> 00:12:42,720
so I'm going to say set root and give it a particular value but as opposed to saying set kernel I'm

119
00:12:42,720 --> 00:12:49,040
going to say linux and then give the name of the kernel as well as where the root file system should

120
00:12:49,040 --> 00:12:55,519
be mounted whereas the init rd value this is going to be the exact same so the only real variation

121
00:12:55,519 --> 00:13:01,200
here is going to be this value here kernel will be instead the word linux so if we want to see what

122
00:13:01,200 --> 00:13:07,840
our values are right now we can just type the command set and this will show everything that we have

123
00:13:07,840 --> 00:13:16,639
already set so we can see here the roots right here is the hd0 ms dos 5 that is the disc and the

124
00:13:16,639 --> 00:13:20,800
partition and if we actually want to be able to see this a little bit better I will just set the

125
00:13:20,800 --> 00:13:26,800
pager value to 1 and I'll now say set now I can just spacebar down so we can see the very top and

126
00:13:26,800 --> 00:13:34,240
hit spacebar to scroll down okay so let's actually type in these three values the root value the linux

127
00:13:34,320 --> 00:13:43,360
value as well as the init rd value so I'll just say set roots equal to and I'll just say hd0 and I

128
00:13:43,360 --> 00:13:49,919
can say ms dos 5 but I'll just leave it at 5 so if I hit enter that would be that value set now like

129
00:13:49,919 --> 00:13:55,360
I say I'm actually not changing any particular values the values I have happen to be working I'm

130
00:13:55,360 --> 00:14:00,080
just showing how you could actually change these values if you needed to now like I say we have to

131
00:14:00,080 --> 00:14:05,440
specify where the kernel is and where we should mount the root file system we're not going to use

132
00:14:05,440 --> 00:14:11,520
the command kernel instead we're going to use the command linux now whereabouts is the kernel image

133
00:14:11,520 --> 00:14:18,720
found it's found within the boot directory and all the images are going to start with vm lin if I do

134
00:14:18,720 --> 00:14:24,400
vm lim and hit tab we're going to see all the options the one that I'm going to choose is the one I'm

135
00:14:24,399 --> 00:14:32,240
already using right now which is vm linux 5 13028 and I can tab this out and I have to specify where

136
00:14:32,240 --> 00:14:38,319
the root file system is going to be I'm going to say root is equal to forward slash dev forward slash

137
00:14:38,319 --> 00:14:46,480
sda5 so if I hit enter here that is going to set that value the third value is going to be the init

138
00:14:46,560 --> 00:14:53,440
rd value now remember just like we talked about the version number here has to match okay so 5

139
00:14:53,440 --> 00:15:01,360
13028 I have to use the same init rd image so I'll say init rd boot and the image will be init

140
00:15:01,360 --> 00:15:09,120
rd and I can hit tab we can see I have 5 11 027 that is not the one I want I wanted to match

141
00:15:09,120 --> 00:15:17,120
this one right here so 5 13028 which is this one right here so I will say 5 dot 13 I can

142
00:15:17,120 --> 00:15:24,399
tab this out and to enter so that is my three values now set my root value my linux value and my

143
00:15:24,399 --> 00:15:30,000
init rd value I will just hit boots and now it should begin booting up and if you just give it a

144
00:15:30,000 --> 00:15:35,919
minute I'm now able to log in to my machine so I'll type in my username and then my password

145
00:15:35,919 --> 00:15:40,559
and there we go so I can just log in and now I have full access back to my system

146
00:15:40,559 --> 00:15:46,079
I can do a uname dash r we can see this is the kernel I had I didn't actually change anything

147
00:15:46,079 --> 00:15:52,159
we're going to see debuts to an ls and we can see here this was the image I used for the kernel

148
00:15:52,159 --> 00:15:58,799
and correspondingly this was the image I used for my init rd again notice that the numbers

149
00:15:58,879 --> 00:16:07,199
happen to match 5 13028 and 5 13028 matching correctly so clearly I happen to force myself

150
00:16:07,199 --> 00:16:12,639
into the grub menu but if you happen to find yourself in that unfortunate situation where

151
00:16:12,639 --> 00:16:18,719
you try to boot up and it automatically loads in you know the settings that you can use to try

152
00:16:18,719 --> 00:16:23,919
to boot back into your system you want to specify your linux value pointing to the correct kernel

153
00:16:23,919 --> 00:16:30,240
image as well as the correct corresponding init rd image once you do that you can use the boot

154
00:16:30,240 --> 00:16:35,839
command and hopefully if all is successful you should be able to boot back into your machine

155
00:16:35,839 --> 00:16:39,839
okay dox I hope this has been informative for you and I'd like to thank you for viewing

