7

I am using Ubuntu 16.10 (Desktop Edition) to begin my foray with Linux. however, I also want to learn some networking things, which I think needs Ubuntu Server.

As I'd rather not re-partition and reinstall a different version of Ubuntu just for lab work, so I'd like to install Ubuntu Server on top of my current desktop install of Ubuntu, but I have been unable to find a guide to do this.

So, is there a way, and how do I do it?

Kaz Wolfe
  • 34,122
  • 21
  • 114
  • 172
  • 2
    Depends on what you want to do. There is a Meta-Package ubuntu-server you can additionally install by issuing sudo apt install ubuntu-server in the commandline window, which will install some 'server' packages if not already there. For additionally server functions you might have to install more packages, e.g. nfs-kernel-server if you want to have an NFS server, or some samba-packages to serve CIFS shares – ridgy Jan 15 '17 at 17:41
  • @ridgy I recommend posting that as an answer. – Eliah Kagan Jan 15 '17 at 19:44
  • The different Ubuntu flavors are with the same core (perhaps a specific kernel but this is only relevant for experienced users) but with somewhat different packages. Just install what you need and do the work :) – Thorbjørn Ravn Andersen Jan 16 '17 at 01:56

2 Answers2

13
Ensuring system still works...                           [ OK ]
Making up fake text...                                   [ OK ]
Deploying Ubuntu Server payload to OP...                
>  48:65:6c:6c:6f:20:77:6f:72:6c:64:2c:20:68:6f:77:20
>  61:72:65:20:79:6f:75:20:74:6f:64:61:79:3f:20:41:72
>  65:20:79:6f:75:20:65:6e:6a:6f:79:69:6e:67:20:74:68
>  65:20:76:69:65:77:3f:00:00:00:00:00:00:00:00:00:00    [ OK ]
Compressing the analog RSS application...                [ OK ]
Synthesizing the unicode MAC protocol...                 [ OK ]
Sending the fiber optic alarm into the feed...           [ OK ]
Rebooting the redundant CD-ROM program...                [ OK ]
Connecting the RX circuit to compress neural array...    [ OK ]
Writing VB script to track killer's IP address...        [ OK ]
Writing answer...                                        [ OK ]

Congratulations! By simply reading this post, you now have Ubuntu Server!

No, really, I'm serious here. The only major difference between Ubuntu Server and the regular version of desktop Ubuntu is the fact that Ubuntu Server does not come with a graphical interface or any sort of graphical "quality-of-life" improvements. As you can see on the list of things installed by default, there really isn't anything there except for the standard loadout. From the official documentation:

There are a few differences between the Ubuntu Server Edition and the Ubuntu Desktop Edition. It should be noted that both editions use the same apt repositories, making it just as easy to install a server application on the Desktop Edition as it is on the Server Edition.

The differences between the two editions are the lack of an X window environment in the Server Edition and the installation process.

Meaning, you can just install any server-related packages and everything will work for the most part. For example, if you want to install NGINX, any guide (like this one from DigitalOcean) will work perfectly fine. In the unlikely case that you don't have something you need installed, it will be when it needs to be. You can trust apt's dependency resolution system to resolve any (unlikely) problems that come up from you not having some server-standard package installed.

The only catch is that you may need to reconfigure the occasional config file to prevent a conflict (NetworkManager is infamous for this), which is not really that involved of a process at most times. You might also need to punch the occasional hole in your firewall or set up some port-forwarding, but that's pretty easy and you (probably) would have had to do that on your server install already.

So, in short, just use apt like normal and install whatever packages you want.

Kaz Wolfe
  • 34,122
  • 21
  • 114
  • 172
  • Good initial point is this manual: https://help.ubuntu.com/16.04/serverguide/index.html – pa4080 Jan 15 '17 at 17:47
  • What follows apt install in this case? Is there a list of particular packages that are selected by default with Server but not the desktop distributions? – Damian Yerrick Jan 15 '17 at 20:33
  • 1
    @DamianYerrick Nope, to the best of my knowledge, the base server image contains all the same packages contained in the base Ubuntu desktop, with the exception of X11 and the like. – Kaz Wolfe Jan 15 '17 at 20:35
  • I might also add that should the OP want to have it as close to the server edition as possible, they could remove ubuntu-desktop, though there are several other packages associated with the GUI, such as unity, various gnome packages, and theme-related content. tasksel may be of great use in this situation, however, misuse or error in the configuration menu could do unintended damage to a system, especially remote ones in my case. – Dooley_labs Jan 16 '17 at 04:47
  • Hello everyone, Thanks for valuable suggestions. I am sorry, I forgot to mention the purpose, Actually, I need to create one demo server room. Where will be 2 windows as the client and one PC will be the server. There are connected with a simple router. They will share the file like FTP file server. They will use the common localhost like Apache web server. And also need the email server. It's a mini project to create a home server.I have to use Ubuntu server and configure my IP address between the other's client. – Garten786 Jan 16 '17 at 07:24
  • Can anyone help me to give some valuable step-by-step solution, how I can complete my networking project? Please. – Garten786 Jan 16 '17 at 08:04
  • @Garten786 That's a bit out of scope for this thread, but you're more than welcome to ask a new question or search around the site. Everything you want to do has been individually discussed somewhere here. I'd also recommend looking at DigitalOcean's tutorial series, as they have very detailed guides to all of that. – Kaz Wolfe Jan 16 '17 at 08:09
  • @KazWolfe Sorry, Ok then give it to me some DigitallOcean's tutorial. And Thanks for help. – Garten786 Jan 16 '17 at 08:18
  • @Garten786 A quick Google search turned up: https://www.digitalocean.com/community/tutorials/how-to-configure-the-apache-web-server-on-an-ubuntu-or-debian-vps, https://www.digitalocean.com/community/tutorials/how-to-set-up-vsftpd-on-ubuntu-12-04, and https://www.digitalocean.com/community/tutorials/how-to-install-and-setup-postfix-on-ubuntu-14-04 – Kaz Wolfe Jan 16 '17 at 08:22
  • @KazWolfe not 100% sure that is true. I think Server must at least include SSH by default. –  Jan 16 '17 at 10:46
  • @MarkYisri When installing Ubuntu Server, the SSH server is an optional parameter in tasksel. – Kaz Wolfe Jan 16 '17 at 18:02
  • @KazWolfe is tasksel automatically run by the default installer? –  Jan 17 '17 at 10:35
5

If just learning you can install server packages.

Used by Server install to choose what type of server you want

sudo apt-get install tasksel
sudo tasksel

https://help.ubuntu.com/community/Tasksel

But there may be some advantages of totally separating server in a dual boot or VM like using virtualbox. Often you use only command line or very lightweight gui with server install.

Full install and lots more info:

https://help.ubuntu.com/lts/serverguide/

https://www.ubuntu.com/download/server/install-ubuntu-server

oldfred
  • 12,100