Знать сервер или рабочий стол распространения Ubuntu [дубликат]

Я задаю вопрос после поиска в Google и пробовал несколько решений, но мне нужен конкретный ответ.

Я вошел в систему на другом компьютере с SSH, и мне нужно знать, что ОС используется на сервере или настольном компьютере.

Я пробовал следующую команду и ее результат:

lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.5 LTS
Release:    12.04
Codename:   precise

Вторая команда

cat /proc/version

Linux version 3.5.0-61-generic (buildd@toyol) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #90-Ubuntu SMP Sun Apr 26 11:23:53 UTC 2015

Совсем не повторяется с этой

Как проверить, установлен ли рабочий стол или сервер ubuntu?

1
задан 13 April 2017 в 15:23

2 ответа

Как упомянуто в связанном сообщении, не легко определить, используете ли Вы рабочий стол или выпуск сервера, потому что все пакеты могут быть установлены или удалены.

Вот моя функция, которую я использую для своих сценариев. В основном это проверяет, установлены ли xserver-распространенный или xwayland. Если один из них установлен, это означает настольная система.

#!/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
}

Вот несколько других вещей проверить:

По умолчанию выпуск сервера использует классика /etc/network/interfaces, в то время как настольный выпуск работает с Администратором сети, таким образом проверьте, установлен ли Администратор сети

dpkg -l network-manager

Или выполняет команду nmcli (инструмент командной строки для NM), если Вы получаете сообщение как это:

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

вероятность высока, что Вы находитесь на выпуске сервера. Но имейте в виду, можно изменить сервер для работы с NM.

<час>

Использование следующая команда, чтобы определить, установлены ли настольные компоненты

dpkg -l ubuntu-desktop

На Сервере, Вы получите сообщение как это:

dpkg-query: no packages found matching ubuntu-desktop

На Рабочем столе Вы получите сообщение, которое говорит Вам, какая версия установлена

<час>

Проверка на другие пакеты, которые обычно находятся на рабочем столе:

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

или использование:

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

проверка, если X-сервер работает:

ps -e | grep X
sudo netstat -lp | grep -i Xorg
<час>

Проверка на сервисы, которые только доступны на рабочем столе:

Это зависит от Вашей версии Ubuntu, как проверить сервисы:

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

типичные сервисы:

  • lightdm
  • , x11-распространенный
  • оболочка гнома

и некоторые другие, которые связаны с определенными производными

<час>

, Мое приложение зависит от распределения сервера

, Даже если не имеет никакого смысла запускать серверное приложение на настольном выпуске, не должно быть никаких проблем с установкой всех зависимостей для Вашего приложения на настольном выпуске и делать это работой.

можно ли уточнить это, почему это зависит от дистрибутива сервера?

3
ответ дан 14 April 2017 в 01:23
  • 1
    Я отредактировал свой ответ. Посмотрите на него – Redbob 31 August 2017 в 01:20

необходимо попробовать следующий шаг 1: тип dpkg --list, который это покажет Вам всем, установил пакеты (это будет много), шаг 2: прокрутите или вниз найти любого *-session пакетами, я полагаю, что они - источники рабочего стола

Удачи!

0
ответ дан 14 April 2017 в 01:23
  • 1
    Есть ли точка для того, чтобы сделать его в режиме восстановления. Я в состоянии войти в систему очень хорошо и также к ssh? – kroiz 31 August 2017 в 01:22

Другие вопросы по тегам:

Похожие вопросы: