50 votes

Comment vérifier si Ubuntu Desktop ou Server est installé ?

J'ai un hébergement partagé. J'ai accès à Shell. Le système d'exploitation est Ubuntu, et je veux vérifier s'il s'agit de la version serveur ou de la version bureau.

Lorsque je me connecte via Shell, les informations suivantes s'affichent :

Linux [server-name] 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
Ubuntu 10.04.1 LTS

52voto

John Nolan Points 16633
dpkg -l ubuntu-desktop 

vous indiquera si les composants de bureau suggérés sont installés.

uname -a

vous indiquera si c'est le noyau serveur ou générique qui est utilisé.

Le terme "bureau ou serveur" n'est pas binaire : il est possible d'installer des composants de bureau sur une machine initialement installée comme serveur, etc.

Vous devez décider quel paquetage vous voulez utiliser pour faire la distinction entre "serveur" et "ordinateur de bureau". Il se peut que xserver-xorg est un bon choix, bien que certains serveurs l'aient également pour les dépendances des paquets ou pour prendre en charge les bureaux à distance.

26voto

Mufaka Points 54

Cette réponse n'est pas aussi tranchée que certains le prétendent. Vous pouvez faire un ubuntu-standard et l'utiliser comme serveur. Vous pouvez utiliser ubuntu-minimal en tant que serveur. Vous pouvez prendre ubuntu-desktop et le casser pour qu'il n'utilise pas X... Ou même laisser X pour l'administration (eww). Vous pouvez changer les paquets du noyau de -server à -generic à -rt etc. Vous pouvez changer le motd ou même simplement mettre à jour à partir d'une version où le motd n'est pas aussi long que le nouveau (aucun de mes serveurs n'est sorti avec toutes ces conneries - probablement parce qu'ils ont été mis à jour à partir de LTS plus anciennes).

Je pense que les questions que nous devrions tous nous poser sont les suivantes : Pourquoi est-ce important ? Qu'essayez-vous d'apprendre ? Quelle différence cela fait-il pour vous ?

Si vous essayez de faire tourner quelque chose de graphique, vérifiez ce dont vous avez réellement besoin (X, x11vnc, etc.). Si vous essayez de vérifier qu'il n'y a pas d'interface graphique, faites de même !

18voto

Alotor Points 3438

Il peut être vérifié en tapant cat /etc/motd . Le résultat sera différent sur le serveur et différent sur l'édition de bureau.

Bureau :

Ubuntu 10.10

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/

Serveur :

Ubuntu 10.10

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/

  System information as of Wed Nov 10 20:54:11 UTC 2010

  System load:  0.07               Processes:           78
  Usage of /:   30.4% of 14.76GB   Users logged in:     1
  Memory usage: 38%                IP address for eth0: XXXXXXXX
  Swap usage:   0%

  Graph this data and manage this system at https://landscape.canonical.com/
---------------------------------------------------------------------
At the moment, only the core of the system is installed. To tune the 
system to your needs, you can choose to install one or more          
predefined collections of software by running the following          
command:                                                             

   sudo tasksel --section server  

Il convient également de mentionner que ce fichier est facilement modifiable par sudo, ce qui est fait très souvent, car c'est le message que l'utilisateur voit lorsqu'il se connecte via ssh.

7voto

ayan4m1 Points 905

Ce n'est peut-être pas la façon la plus rapide ou la plus pure de le dire, mais courez :

dpkg --get-selections | grep linux-image | grep -v deinstall

Si le paquet linux-image actuellement installé contient le mot "server", vous utilisez Ubuntu server.

Par exemple, le dernier paquet de noyau pour Ubuntu 10.10 desktop :

linux-image-2.6.35-22-generic

Et le serveur :

linux-image-2.6.35-22-server

Pour un paquet plus générique qui devrait être le même dans les différentes versions d'Ubuntu, linux-image-generic est le paquetage par défaut pour Ubuntu desktop et linux-image-server est la valeur par défaut de l'édition serveur.

5voto

caracal Points 137

"La même question, ou presque, a été posée ici : Connaître la distribution Ubuntu serveur ou bureau

J'aimerais poster ma réponse ici aussi parce qu'elle contient quelques nouvelles indications sur la façon de vérifier si vous êtes sur une édition de bureau ou de serveur.

Comme indiqué dans les articles précédents, il n'est pas facile de déterminer si vous utilisez une édition de bureau ou une édition serveur, car tous les paquets peuvent être installés ou supprimés.

Si vous êtes dans un environnement cohérent et prévisible, il ne devrait pas être très difficile de déterminer s'il s'agit d'un ordinateur de bureau ou d'un serveur.

Je n'utilise que ubuntu-desktop (vanilla) ou ubuntu server. Pour moi, le dpkg -l ubuntu-desktop c'est une méthode très fiable pour déterminer s'il s'agit d'un ordinateur de bureau ou d'un serveur.

Comme indiqué dans l'article en lien, il n'est pas facile de déterminer si vous utilisez une édition bureau ou serveur, car tous les paquets peuvent être installés ou supprimés.

Voici la fonction que j'utilise pour mes scripts. En gros, elle vérifie si xserver-common ou xwayland sont installés. Si l'un d'entre eux est installé, cela signifie qu'il s'agit d'un système de bureau.

#!/usr/bin/env bash

check_if_desktop (){
  IS_DESKTOP="false"

  displayManager=(
    'xserver-common' # X Window System (X.Org) infrastructure
    'xwayland' # Xwayland X server
  )
  for i in "${displayManager[@]}"; do
    dpkg-query --show --showformat='${Status}\n' $i 2> /dev/null | grep "install ok installed" &> /dev/null
    if [[ $? -eq 0 ]]; then
      IS_DESKTOP="true"
    fi
  done
}

Voici quelques autres points à vérifier :

Par défaut, l'édition serveur utilise l'interface classique /etc/network/interfaces L'édition de bureau fonctionne avec Network Manager, il faut donc vérifier si Network Manager est installé.

dpkg -l network-manager

Ou lancez la commande nmcli (l'outil en ligne de commande pour NM) si vous obtenez un message comme celui-ci :

The program 'nmcli' is currently not installed. You can install it by typing:
sudo apt-get install network-manager

il est fort probable que vous soyez sur une édition serveur. Mais n'oubliez pas que vous pouvez modifier un serveur pour qu'il fonctionne avec NM.


Utilisez la commande suivante pour déterminer si les composants du bureau sont installés

dpkg -l ubuntu-desktop

Sur un serveur, vous obtiendrez un message comme celui-ci :

dpkg-query: no packages found matching ubuntu-desktop

Sur un ordinateur de bureau, vous obtiendrez un message vous indiquant la version installée.


Vérifiez la présence d'autres paquets que l'on trouve généralement sur un ordinateur de bureau :

dpkg -l unity (gnome, mate and so one) # Desktop environments
dpkg -l compiz (E17, fluxbox and so one) # Window manager
dpkg -l xorg # X window server

ou de l'utiliser :

 dpkg-query --show --showformat='${Status}\n' *packagename* 2> /dev/null | grep "install ok installed"

vérifier si le serveur X est en cours d'exécution :

ps -e | grep X
sudo netstat -lp | grep -i Xorg

Vérifier les services qui ne sont disponibles que sur un ordinateur de bureau :

La manière de vérifier les services dépend de votre version d'Ubuntu :

sudo service *servicename* status # on SysVinit 
sudo status *servicename* # on Upstart
systemctl status *servicename*.service # on systemd

Les services typiques sont les suivants :

  • lightdm
  • x11-common
  • gnome-Shell

et d'autres qui sont associés à certains produits dérivés


Mon application dépend de la distribution du serveur

Même s'il n'est pas logique d'exécuter une application serveur sur une édition de bureau, il ne devrait pas y avoir de problème pour installer toutes les dépendances de votre application sur l'édition de bureau et la faire fonctionner.

Pouvez-vous expliquer pourquoi cela dépend de la version du serveur ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X