# Not  a How-To: FreeBSD 11 from 0 to full build in less than 2.5 hours



## AHR Inc (Feb 7, 2017)

boring, and a sort of a lost momentum is there


Some seminar to attend:

Example again: I think there is slipup where "worrier" should have been warrior? Happens to me sometimes.


1. Do not exit install after finishing and answer yes to get to Shell. Once at the prompt type in
`ee /etc/ssh/sshd_config`              # means edit the ssh configuration

```
# uncomment and change the lines per following example (do not make any other changes)

PermitRootLogin yes
StrictModes yes
RSAAuthentication yes

HostbasedAuthentication no
IgnoreUserKnownHosts no
IgnoreRhosts yes

PasswordAuthentication yes
PermitEmptyPasswords no

PrintMotd yes
UseDNS no

# (ee save: press escape and (a) (a))
```

... And of course exit to exit shell and reboot.

2. Assuming you already setup your network card in the install steps and you are connected via ssh, the focus is now to edit three files: /etc/rc.conf; /etc/resolv.conf; /etc/hosts;

3. And there is also the /etc/wpa_supplicant.conf that covers wireless connection.

However, I will spare the detail since that can be found in the forum. What is to note is the focus on those files. Yes files that needs your attention.

*PRE BUILD TASKS: *
`gpart show da0`

```
=>        0  570310591  da0s1  BSD  (272G)
          0  134217728      1  freebsd-ufs  (64G)  da0s1a fs-root
  134217728  134217728      2  freebsd-ufs  (64G)  da0s1b fs-usr
  268435456  134217728      4  freebsd-ufs  (64G)  da0s1d fs-var
  402653184   16777216      5  freebsd-ufs  (8.0G) da0s1e fs-tmp
  419430400   33554432      6  freebsd-ufs  (16G)  da0s1f fs-/usr/obj
  452984832   67108864      7  freebsd-ufs  (32G)  da0s1g fs-zbk
  520093696   16777216      8  freebsd-swap  (8.0G) da0s1h fs-spare
  536870912   33439679         - free -  (16G)
```
`df -h`

```
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/da0s1a     62G    176M     57G     0%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/da0s1b     62G    1.3G     56G     2%    /usr
/dev/da0s1d     62G     37M     57G     0%    /var
/dev/da0s1e    7.7G     32M    7.1G     0%    /tmp
/dev/da0s1f     15G     32M     14G     0%    /usr/obj
/dev/da0s1g     31G     32M     28G     0%    /zbk
```


```
# pre-build tasks
pkg upgrade -f pkg
pkg upgrade -f

# svn install
pkg install subversion
rm -R /usr/ports

# base - Revision 313376: /stable/11
svn checkout https://svn.freebsd.org/base/stable/11/ /usr/src

# *** press p to accept permanent certificate

# ports - Revision 433530: /head
svn checkout https://svn.freebsd.org/ports/head/ /usr/ports

mkdir -p /usr/ports/distfile && \
mkdir -p /usr/ports/packages

#
# END of pre-build
#

shutdown -r now
```

*THE BUILD:*

```
# check number of cpu cores
sysctl hw.model hw.machine hw.ncpu
```


```
hw.model: Intel(R) Xeon(R) CPU           E5440  @ 2.83GHz
hw.machine: amd64
hw.ncpu: 8
```
`df -h`

```
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/da0s1a     62G    176M     57G     0%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/da0s1b     62G    4.5G     53G     8%    /usr
/dev/da0s1d     62G    104M     57G     0%    /var
/dev/da0s1e    7.7G     32M    7.1G     0%    /tmp
/dev/da0s1f     15G     32M     14G     0%    /usr/obj
/dev/da0s1g     31G     32M     28G     0%    /zbk
```


```
cd /usr/src
rm -rf /usr/obj/*
# script /var/tmp/mw.out # for some reason I skipped this one

make -j8 buildworld   # @2334   completed 0019

# make sure we have a GENERIC config in the /usr/src
ls -l /usr/src/ | grep GENERIC

# if missing file, copy from svn output
cp /usr/src/sys/amd64/conf/GENERIC /usr/src/GENERIC
make buildkernel KERNCONF=GENERIC   # @0052

make installkernel

make installworld

mergemaster -Ui

shutdown -r now  # @0058
```

`df -h`

```
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/da0s1a     62G    292M     57G     1%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/da0s1b     62G    5.2G     52G     9%    /usr
/dev/da0s1d     62G    104M     57G     0%    /var
/dev/da0s1e    7.7G     32M    7.1G     0%    /tmp
/dev/da0s1f     15G    5.8G    8.4G    41%    /usr/obj
/dev/da0s1g     31G     32M     28G     0%    /zbk
```


```
#
cd /usr/src
make check-old

#To remove old files and directories run 'make delete-old'.
#To remove old libraries run 'make delete-old-libs'.

yes|make delete-old
yes|make delete-old-libs

# END of my fresh build  @ 0105  about one hour and a half
```
`df -hc`

```
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/da0s1a     62G    292M     57G     1%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/da0s1b     62G    5.2G     52G     9%    /usr
/dev/da0s1d     62G    104M     57G     0%    /var
/dev/da0s1e    7.7G     32M    7.1G     0%    /tmp
/dev/da0s1f     15G    5.8G    8.4G    41%    /usr/obj
/dev/da0s1g     31G     32M     28G     0%    /zbk
total          240G     11G    209G     5%
```


Of course it sounds better than my last post on the issue. I guess I got too sentimental and neither google let me find the aim. However, it feels like a more stable ground now.
https://forums.freebsd.org/threads/59613/


Good luck!


----------



## SirDice (Feb 7, 2017)

AHR Inc said:


> `ee /etc/ssh/sshd_config`              # means edit the ssh configuration
> 
> ```
> PermitRootLogin yes
> ```


Please stop suggesting this. It's an extremely bad habit. 



> ```
> yes|make delete-old
> yes|make delete-old-libs
> ```


`make -DBATCH_DELETE_OLD_FILES delete-old delete-old-libs`


----------



## AHR Inc (Feb 7, 2017)

Good note SirDice, I am actually wired on the local and not live in any way shape or form. I only get the server connected for the time I have to svn etc.  Thank you.


----------



## SirDice (Feb 7, 2017)

AHR Inc said:


> ```
> # svn install
> pkg install subversion
> ```


No need to install devel/subversion, on 10.0 and higher you can use svnlite(1).



> ```
> # *** press p to accept permanent certificate
> ```


Install security/ca_root_nss and the verification works.



> ```
> # if missing file, copy from svn output
> cp /usr/src/sys/amd64/conf/GENERIC /usr/src/GENERIC
> make buildkernel KERNCONF=GENERIC # @0052
> ```


Don't copy the file to /usr/src/, it's supposed to be in /usr/src/sys/amd64/conf/. And there's no need to supply KERNCONF=GENERIC, if you don't provide KERNCONF GENERIC is used automatically.


----------



## AHR Inc (Feb 7, 2017)

SirDice said:


> Don't copy the file to /usr/src/, it's supposed to be in /usr/src/sys/amd64/conf/. And there's no need to supply KERNCONF=GENERIC, if you don't provide KERNCONF GENERIC is used automatically.



A "don't know what to make" error comes in as a result for running without the fix I noted
# if missing file, copy from svn output

Then, it must be a bug because I went through a few times.
make buildkernel  # ok quick enough but wrong
make installkernel # failed


----------



## ShelLuser (Feb 7, 2017)

This is one of the most chaotic and incoherent tutorials I've seen in quite a while. Also: why do you single out forquare like this and insinuate that they gave bad advice (the "_example of how not to do it_" comment) while they did not? Each to their own but I think this is a bit rude, at least that's the impression I got.

Especially considering that you yourself are giving some very bad advice by telling readers to allow remote root logins.


----------



## AHR Inc (Feb 7, 2017)

... here is post suggesting the same error i noted the fix/workaround
error make: don't know how to make buildkernel. Stop
https://forums.freebsd.org/threads/41944/


----------



## SirDice (Feb 7, 2017)

You need to be in /usr/src/: `cd /usr/src/ && make buildkernel`


----------



## AHR Inc (Feb 7, 2017)

ShelLuser said:


> This is one of the most chaotic and incoherent tutorials



I am not sure I did recommend in particular or “insinuate” but would be more productive to consider pointing to the right tutorial of safe ssh. Looks to me that you are jumping to conclusion.


----------



## AHR Inc (Feb 7, 2017)

That can be confirmed that I was in the directory /usr/src


----------



## AHR Inc (Feb 7, 2017)

But then again this post is not suggesting to go in production or live, does it? I think it is very very jumping to conclusions and unproductive approach!
.. take a good look at who creates the chaos - a mirror may serve well: Mr safety!


----------



## gkontos (Feb 7, 2017)

What exactly is the purpose of this how-to? I really fail to understand the concept here.


----------



## AHR Inc (Feb 7, 2017)

Just for clarification of what “not to do” Chaos

Neither this is something I vouch for it “when i open it say free BSD /x86 boot defeat”

Mr. jumping to conclusions, you must be misunderstanding what not to do Chaos or mockery?

Contrary to your expectation my only reaction was “why you did not close the post earlier” – may be too busy jumping to conclusion. I am amazed that you even helped that guy and pushed to make something out of it when the guy even in the language its self triggered suspicions that would be mockery.


----------



## ANOKNUSA (Feb 7, 2017)

AHR Inc said:


> But then again this post is not suggesting to go in production or live, does it?



Then why bother writing it? This is not your personal journal. It is a public support forum. Don't write a how-to here if you don't intend for it to be universally applicable and to help people get serious work done.


----------



## AHR Inc (Feb 7, 2017)

*FreeBSD 11 from 0 to full build in less than 2.5 hours*


----------



## DutchDaemon (Feb 7, 2017)

Sorry, this is becoming too much of a mess to be in the official HowTo section. As
*Posting in Howtos & FAQs* states:



> a good HowTo/FAQ shouldn't trigger any questions, just praise, or a deafening silence



Continued in Off-Topic, with changed title.

At least you can discuss the pros and cons of this approach here without it becoming some kind of 'you should do it this way' mantra.


----------



## hitest (Feb 8, 2017)

AHR Inc said:


> Most of the time a unix worrier is using a terminal and not the console unless the word desktop is used.



So you're writing about anxious Unix users?!  Did you mean warrior?


----------

