# How to upgrade from 7.2 to 8.0



## SeaHag (Dec 8, 2009)

After spending lots of time searching the net I can't find any way to upgrade my system from 7.2 to 8.0. Can someone please point me in the right direction? I don't want to do a binary upgrade but want to upgrade from source. I normally use portsnap. Can we use that or do we have to use cvsup?


----------



## graudeejs (Dec 8, 2009)

Tried looking at FreeBSD handbook: Chapter 24 Updating and Upgrading FreeBSD ?


portsnap is for ports only....


----------



## SeaHag (Dec 8, 2009)

Yes, I have. couldn't find anything useful there. It only describes what cvsup is then goes on the say; 

"24.7 Rebuilding â€œworldâ€
Once you have synchronized your local source tree against a particular version of FreeBSD (FreeBSD-STABLE, FreeBSD-CURRENT, and so on) you can then use the source tree to rebuild the system."

But it never gave what commands to use to update the source. And again, do we have to use cvsup or can we use portsnap? 

I didn't see anything there about how to update the source, only a description of what cvsup is.


----------



## chalbersma (Dec 8, 2009)

Have you upgraded the base system yet?


----------



## Anonymous (Dec 8, 2009)

Try this site:

http://www.daemonology.net/blog/2009-07-11-freebsd-update-to-8.0-beta1.html


----------



## graudeejs (Dec 8, 2009)

a quick handbook search would return this:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/mirrors.html

Here are interesting subsections
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvs-tags.html

note that cvsup, is now in base system and i called *csup*


also csup(1)


----------



## SeaHag (Dec 8, 2009)

> Have you upgraded the base system yet?



Nope, don't know how.



> Try this site:
> 
> http://www.daemonology.net/blog/2009...8.0-beta1.html



That uses freebsd-update, does a binary update not from source, not what I want.



> a quick handbook search would return this:
> http://www.freebsd.org/doc/en_US.ISO...k/mirrors.html
> 
> Here are interesting subsections
> ...



Not helpful, doesn't say anything about upgrading from 7.2 to 8.0


----------



## graudeejs (Dec 8, 2009)

SeaHag said:
			
		

> Not helpful, doesn't say anything about upgrading from 7.2 to 8.0



It's actually very helpful after you read
Chapter 24 Updating and Upgrading FreeBSD

I know what I'm saying


----------



## graudeejs (Dec 8, 2009)

Also, forums search would return this:
https://forums.freebsd.org/showthread.php?t=8406


----------



## SeaHag (Dec 9, 2009)

I've read all that and don't have the slightest idea how to upgrade my 7.2 system to 8.0. Does anybody know who can tell me? The answer "read the manual" is not helpful.


----------



## Dru (Dec 9, 2009)

http://support.microsoft.com/kb/221829


----------



## zeiz (Dec 9, 2009)

I do upgrade like I described here
Another info is here
If you don't want any explanations this is naked algorithm:
`# ee /root/src-supfile`
Copy the text below and paste it into your termal (new file):

```
*default host=cvsup.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8
*default delete use-rel-suffix
src-all
```
Press Esc, then pres "a" and "a" again.
Then type one by one:

```
# cp -r /etc/ /etc.old
# cp -r /boot /boot.old
# csup -L 2 /root/src-supfile
# cd /usr/src
# make buildworld
# make buildkernel
# make installkernel
# reboot
```
On boot screen choose Single user mode (press 4 ).
Press Enter when asked for default shell.

```
# fsck
# mount -a -t ufs
# cd /usr/src
# make installworld
# mergemaster -Fi ## this is tricky: don't delete your password file! Watch for word "root" and your user name in files and pay maximum attention to that files.
```
Answer yes to delete temproot.
Reboot.
If you are lucky you now have 8-STABLE and you can update it daily if you want.

Have fun and don't blame me if you screw your system without reading what others recommended in this thread.


----------



## sixtydoses (Dec 9, 2009)

FreeBSD upgrade can be done either by using `freebsd-update` tool or rebuilding it from the source. For the latter option there are detailed steps listed inside the /usr/src/Makefile as well.


The links given in earlier posts are useful.



			
				lumiwa said:
			
		

> Try this site:
> 
> http://www.daemonology.net/blog/2009-07-11-freebsd-update-to-8.0-beta1.html





			
				killasmurf86 said:
			
		

> Also, forums search would return this:
> https://forums.freebsd.org/showthread.php?t=8406


----------



## graudeejs (Dec 9, 2009)

He's just lazy to read.


----------



## SeaHag (Dec 9, 2009)

lumiwa said:
			
		

> Try this site:
> 
> http://www.daemonology.net/blog/2009-07-11-freebsd-update-to-8.0-beta1.html



I tried this but after the first reboot the usb mouse doesn't work in X anymore but works in the shell. Any ideas how to fix it?


----------



## graudeejs (Dec 9, 2009)

check if you have

```
hald_enable="YES"
dbus_enable="YES"
```
in /etc/rc.conf

Did you build X with HAL enabled? If not comment out *hald_enable="YES"*


----------



## SeaHag (Dec 9, 2009)

sixtydoses said:
			
		

> FreeBSD upgrade can be done either by using `freebsd-update` tool or rebuilding it from the source. For the latter option there are detailed steps listed inside the /usr/src/Makefile as well.
> 
> 
> The links given in earlier posts are useful.



How do I know which one to do, binary upgrade or from source? I always install ports from source not package so it's built on my system. Shouldn't I do upgrade the same way? How do you choose which way to do it? I think building on your own system is the preferred way, right?


----------



## SeaHag (Dec 9, 2009)

killasmurf86 said:
			
		

> check if you have
> 
> ```
> hald_enable="YES"
> ...



Yes, both of those are there but I don't remember if I built X with HAL enabled or not. Is there any way I can tell?


----------



## graudeejs (Dec 9, 2009)

Whatever you prefer...
I prefer to compile everything on my machine....
Others prefer not to waste time compiling and simply do binary update

If you have very old and slow pc, you probably will want binary update, because compiling sources on slow machine is ...... slow


----------



## SeaHag (Dec 9, 2009)

killasmurf86 said:
			
		

> Whatever you prefer...
> I prefer to compile everything on my machine....
> Others prefer not to waste time compiling and simply do binary update
> 
> If you have very old and slow pc, you probably will want binary update, because compiling sources on slow machine is ...... slow



I have AMD64, I prefer to compile everything on my machine too but I can't figure out how to upgrade by source so I tried the binary way. Of course it didn't work. In the boot up messages the text for the mouse is in brighter (bold?) white text. What does that mean? It says;


```
ums0: <Logitech USB-PS/2 Optical Mouse,class 0/0, rev 2.00/20.00, addr 2> on usb6
usm0: 4 buttons and [XYZ] coordinates ID=0
```


----------



## graudeejs (Dec 9, 2009)

it found your mouse


----------



## DutchDaemon (Dec 9, 2009)

Bright text is from the kernel, dim text is from userland.


----------



## sixtydoses (Dec 9, 2009)

SeaHag said:
			
		

> I tried this but after the first reboot the usb mouse doesn't work in X anymore but works in the shell. Any ideas how to fix it?



I don't exactly remember everything I did but the first time I upgraded to FreeBSD 8.0 my mouse failed to work in my X as well. I managed to get it to work by adding `Option  "AllowEmptyInput" "off"` under the `ServerLayout` section of my xorg.conf (you can find this mentioned in /usr/src/UPDATING). I've commented out that option though after removing my libusb and recompile my hal (I think).


@zeiz - isn't it supposed to be the following?


```
*default release=cvs tag=RELENG_8_0
```


----------



## SirDice (Dec 9, 2009)

sixtydoses said:
			
		

> @zeiz - isn't it supposed to be the following?
> 
> 
> ```
> ...


If you want to track 8.0-RELEASE. RELENG_8 tracks 8.0-STABLE.


----------



## DutchDaemon (Dec 9, 2009)

SirDice said:
			
		

> If you want to track 8.0-RELEASE. RELENG_8 tracks 8.0-STABLE.



8-STABLE to be exact


----------



## SirDice (Dec 9, 2009)

DutchDaemon said:
			
		

> 8-STABLE to be exact



Currently it says 8.0-STABLE:


```
dice@molly:~>uname -a
FreeBSD molly.dicelan.home 8.0-STABLE FreeBSD 8.0-STABLE #0: Mon Dec  7 20:31:55 CET 2009     root@molly.dicelan.home:/usr/obj/usr/src/sys/MOLLY8  i386
```

And yes, it will progress to 8.1-STABLE, 8.2-STABLE etc.


----------



## SeaHag (Dec 9, 2009)

lumiwa said:
			
		

> Try this site:
> 
> http://www.daemonology.net/blog/2009-07-11-freebsd-update-to-8.0-beta1.html



After following that guide when I try to startx I get this error;


```
/libexec/ld-elf.so.1: Shared object "librpcsvc.so.4" not found, required by "libXext.so.6"
```


----------



## zeiz (Dec 9, 2009)

> If you are lucky you now have 8-STABLE and you can update it daily if you want.


That's what I wrote in that post


----------



## DutchDaemon (Dec 9, 2009)

@SeaHag 

Did you recompile all of your ports? You should. For now, you could try installing the misc/compat7x port to get missing libraries back.


----------



## sixtydoses (Dec 10, 2009)

DutchDaemon said:
			
		

> @SeaHag
> 
> Did you recompile all of your ports? You should. For now, you could try installing the misc/compat7x port to get missing libraries back.



But if he is going to upgrade by source to 8-STABLE using the GENERIC kernel, he doesn't have to install the compat7x port, no? Since the `COMPAT_FREEBSD7` option is included in GENERIC by default?

Thanks.


----------



## SeaHag (Dec 10, 2009)

DutchDaemon said:
			
		

> @SeaHag
> 
> Did you recompile all of your ports? You should. For now, you could try installing the misc/compat7x port to get missing libraries back.



Yes, I followed this guide step by step;


```
http://www.daemonology.net/blog/2009...8.0-beta1.html
```

I ran portupgrade -af twice but still doesn't work.


----------



## DutchDaemon (Dec 10, 2009)

sixtydoses said:
			
		

> But if he is going to upgrade by source to 8-STABLE using the GENERIC kernel, he doesn't have to install the compat7x port, no? Since the `COMPAT_FREEBSD7` option is included in GENERIC by default?



As far as I know, the kernel option provides the framework, the port supplies the libraries used within that framework.


----------



## fronclynne (Dec 10, 2009)

sixtydoses said:
			
		

> But if he is going to upgrade by source to 8-STABLE using the GENERIC kernel, he doesn't have to install the compat7x port, no? Since the *COMPAT_FREEBSD7* option is included in GENERIC by default?
> 
> Thanks.



COMPAT_FREEBSD7 is for binary compatibility, _i.e._ your kernel can run 7.x binaries natively.

The misc/compat7x port provides legacy libraries for binaries which have been linked against them.


----------



## vigol (Dec 11, 2009)

> I tried this but after the first reboot the usb mouse doesn't work in X anymore but works in the shell...



I don't you solve it or not, if not:
When a ums0 mouse is detected and work in shell but don't work in X, it's a symptom of missing  /etc/X11/xorg.conf files.

*Xorg -configure*

refer to http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x-config.html

for detailed infos


----------



## jotawski (Dec 17, 2009)

SeaHag said:
			
		

> After spending lots of time searching the net I can't find any way to upgrade my system from 7.2 to 8.0. Can someone please point me in the right direction? I don't want to do a binary upgrade but want to upgrade from source. I normally use portsnap. Can we use that or do we have to use cvsup?



please cvsup to get a fresh set of source files for your system. and do a series of make buildworld/buidlkernel/installkernel/installworld with mergemaster in between as suggested.

now

# cd /usr/src
# make delete-old
# make delete-old-libs

(i got this from DutchDaemon) this shall delete all remnants of old system from your new one.

the next step is to aim at your interest, a few ports.

have a good luck.

regards,
jotawski


----------

