Как проверить, установлен ли Ubuntu Desktop или Server?

У меня есть общий хостинг. У меня есть доступ к оболочке. Операционная система - Ubuntu, и я хочу проверить, является ли это версией сервера или версией для ПК.

Когда я вхожу через shell, он показывает следующую информацию:

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
29
задан 07.07.2017, 01:18

8 ответов

Нет четкого, просто сформулированного ответа на этот вопрос.

Можно загрузить функции рабочего стола на сервер и удалить их с рабочего стола. Основная проблема заключается в том , какие пакеты являются частью функциональности сервера , и получит дополнительный период поддержки и обновлений.

Лучший ответ (ИМХО) можно найти в вопросе Launchpad (с 2008 года):

В чем разница между серверной и настольной версией? [1110 ]

https://answers.launchpad.net/ubuntu/+question/40114

0
ответ дан 24.04.2019, 20:50

это можно проверить, набрав cat /etc/motd. Вывод будет отличаться на сервере и будет отличаться на настольном издании.

Рабочий стол:

Ubuntu 10.10

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

Сервер:

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  

Также стоит отметить, что этот файл легко редактируется с помощью sudo, что делается очень часто, потому что это сообщение, которое пользователь видит, когда он входит через ssh.

0
ответ дан 24.04.2019, 20:50
  • 1
    Это в основном говорит вам, установлен ли landscape-client. Это может произойти на серверах, но на самом деле это не связано с тем, используете ли вы серверную ОС или нет. – Tania R 11.11.2010, 13:04

Это может быть не самым быстрым или чистым способом определения, но запустите:

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

Если установленный в данный момент пакет linux-image содержит слово «server», значит, вы работаете в Ubuntu сервер.

Например, текущий последний пакет ядра для рабочего стола Ubuntu 10.10:

linux-image-2.6.35-22-generic

И сервер:

linux-image-2.6.35-22-server

Для более общий пакет, который должен быть одинаковым в разных версиях Ubuntu, linux-image-generic является пакетом по умолчанию для рабочего стола Ubuntu и linux-image-server по умолчанию для серверной версии.

0
ответ дан 24.04.2019, 20:50
  • 1
    Ядро сервера можно запустить при установке на компьютере так же, как вы можете запустить ядро ​​сервера на сервере. Это не окончательный ответ с любой натяжкой. – thekingoftruth 11.11.2010, 10:18
  • 2
    @Oli: как вы уже указали, похоже, нет однозначного ответа;) – Peter Mortensen 09.03.2011, 11:39
dpkg -l ubuntu-desktop 

сообщит вам, установлены ли предлагаемые компоненты рабочего стола.

uname -a

сообщит вам, используется ли сервер или общее ядро.

«Рабочий стол или сервер» не является бинарным - можно установить некоторые компоненты рабочего стола на машину, изначально установленную в качестве сервера, и т. Д.

Вы должны решить, какой пакет вы хотите использовать в качестве ключевое различие между «сервером» или «настольным компьютером». Может быть, xserver-xorg - хороший выбор, хотя даже некоторые серверы будут иметь это для зависимостей пакетов или для поддержки удаленных рабочих столов.

0
ответ дан 24.04.2019, 20:50
  • 1
    dpkg -i ubuntu-desktop не делает то, что вы описываете для меня. – Gary S. Weaver 11.11.2010, 08:57
  • 2
    Извините, я имел в виду dpkg -l. (Обновлено). – tardate 11.11.2010, 09:01
  • 3
    Без пакета ubuntu-desktop можно получить отлично работающий рабочий стол. Это всего лишь метапакет, обеспечивающий установку определенного стандартного набора вспомогательных приложений, таких как панели управления, специфичные для Debian и т. Д., Вместе с вашим рабочим столом. Если вы удалите какой-либо из них, тогда ubuntu-desktop будет «удален». тоже, но у вас все еще будет рабочий стол. Было бы намного лучше проверить пакет xserver-xorg-core. Несмотря на то, что наличие этого пакета не гарантирует его использования, нет веской причины устанавливать его на компьютере, не являющемся рабочим столом. – douglasr 23.04.2012, 20:27
  • 4
    Да, тот факт, что между рабочим столом и сервером нет четкой границы, широко обсуждается в большинстве ответов, включая мой. Но ubuntu-desktop - это разумный тест на наличие рабочего стола Ubuntu. Если вы устанавливаете с настольного CD / ISO, у вас будет этот пакет. – arunagw 05.08.2013, 16:42

Ни одно из вышеперечисленных решений не помогло мне. Иногда в системе нет motd, или, возможно, администратор изменил его и т. Д. Я даже не уверен , почему ответ, приведенный выше, был «правильным». Вот что я в итоге использовал.

#!/bin/bash
__check_desktop() {
  if [ `(dpkg-query -W -f='${Status}' ubuntu-desktop 2>/dev/null | grep -c "ok installed")` -eq 1 ]; then
    err "Ubuntu Server is required, but it appears that you are running Ubuntu Desktop"
    exit 1
  fi
}

# Now just call the function:
__check_desktop
0
ответ дан 24.04.2019, 20:50

Вы должны помнить, что между выпусками Desktop и Server нет принципиальной разницы.

Вполне вероятно, однако, что у вашего хостинг-провайдера нет всех графических элементов, таких как GNOME, на вершине стека, потому что они не нужны. Установленные пакеты делают его сервером.

Возможно, вас заинтересует скрипт ubuntu-maintenance-check ( ссылка ), который сообщает вам цикл обслуживания каждого установленного пакета - те, которые имеют более длительный период, являются серверными пакетами.

0
ответ дан 24.04.2019, 20:50

Я запускаю обнаружение в большой сети и пытаюсь отличить его от LINUX, установленного как рабочая станция, по сравнению с сервером (потому что мы будем относиться к ним по-разному).

Я надеялся на атрибут или файл, в котором вместо Ubuntu был Ubuntu-Server.

Я нахожу некоторые интересные файлы в / var / log / installer:

media-info говорит «Ubuntu-Server» для сервера и просто «Ubuntu» для рабочего стола. syslog показывает ту же информацию для «cdrom»

Оба они полезны, и я могу использовать их вместе с информацией об оборудовании. Это должно сказать вам, по крайней мере, какая версия была установлена ​​первоначально.

0
ответ дан 24.04.2019, 20:50

Этот ответ не такой резкий, как делают некоторые люди. Вы можете выполнить установку пакета ubuntu-standard и использовать его в качестве сервера. Вы можете использовать ubuntu-minimal в качестве сервера. Вы можете взять ubuntu-desktop и сломать его, чтобы он не использовал X ... Или даже оставить X там для администрирования (eww). Вы можете изменить пакеты ядра с -server на -generic на -rt и т. Д. Вы можете изменить motd или даже просто обновить версию, в которой motd не так длинен, как новая (ни один из моих серверов никогда не выходил) со всей этой болтовней - вероятно, потому что они обновлены с более старых LTS).

Я думаю, что все мы должны задавать вопросы: Почему это важно? Чему ты пытаешься научиться? Какая разница для вас?

Если вы пытаетесь запустить что-то графическое, проверьте, что вам действительно нужно (X, x11vnc и т. Д.). Если вы пытаетесь проверить, что нет графического интерфейса, сделайте то же самое!

0
ответ дан 24.04.2019, 20:50
  • 1
    +1. Почему это важно? Ну, рассмотрим ксплице. Рабочий стол бесплатный, сервер не ...;) – ericraio 09.03.2011, 11:38
  • 2
    Ну, это более конкретный вопрос: что проверяет ksplice, чтобы решить, можете ли вы использовать бесплатную версию для ПК. Я предполагаю, что они проверяют сборку ядра рабочего стола и сервера. – alfizqu 29.04.2011, 19:41
  • 3
    Почему это имеет значение? У меня нет полномочий на замену системы, поэтому нужно ее разархивировать, начиная со знания того, чем она была изначально. Чему ты пытаешься научиться? Только то, о чем просили: была ли это установка на сервере или на компьютере. Чем это отличается от вас? Если это была установка сервера и она полна X-контента, мы должны уволить наших ИТ-специалистов и т. Д. – Gary S. Weaver 27.12.2017, 10:38
  • 4
    @JanKyuPeblik Если вам передали сломанную систему, а это не настольный компьютер, вам следует обратиться к человеку, сообщившему об ошибке . Шутки в сторону. Компьютеры не являются автомобилями. Это не спецификация рабочих значений и допусков. Это все настраивается. Суть здесь - в применении к вашим мыслям - то, что человек, управляющий системой, мог легко взять сервер и настроить его как рабочий стол. Если вы превратите его обратно в сервер, вы причинили вред. Техническое различие между ними во время установки не имеет отношения к проблеме. И какое различие было в 2010 году, теперь значительно меньше. – RoR 28.12.2017, 09:34
  • 5
    Все, что я получил от этого, было "историей, глупо". – bioneuralnet 29.12.2017, 09:14