1с gui что это

Обновлено: 07.07.2024

  • Уменьшен размер и оптимизирована структура заголовка с метаинформацией в файле 1Cv8.1CD. Это позволяет существенно снизить число операций чтения файла при открытии базы данных и, тем самым, заметно ускорить время старта и начала работы программы.
  • Теперь можно настраивать размер внутренней страницы файла данных. Это размер порции данных, в которых хранится информация и которыми обменивается программа с файловой системой. Предыдущий формат файловой базы данных (версии "8.2.14") поддерживал единственный размер внутренней страницы файла – 4Кб. Новый формат по умолчанию использует размер страницы 8Кб, но позволяет его менять в диапазоне от 4Кб до 64Кб.
  • "холодный" запуск программы,
  • работа с файлами базы данных по локальной сети,
  • работа с сильно фрагментированной базой данных,
  • использование дисковых подсистем с невысокой производительностью.

Краткую справку по ключам использования утилиты можно узнать выполнив ее с ключом --help.
Ну вот собственно для этой консольной утилиты я и сделал GUI-обёртку.


При запуске программа ищет утилиты cnvdbfl.exe во всех установленных платформах и позволяет выбрать утилиту нужной версии в поле Версия cnvdbfl.exe, соответственно не нужно бродить по папкам bin в поисках утилиты. Далее выбираем файл базы данных . Файл так же можно выбрать перетянув его на форму мышкой. После выбора файла можно посмотреть информацию о файле , что бы узнать текущую версию формата и размер страницы.

После этого выбираем нужный формат и размер страницы и выполняем конвертацию. Предварительно можно сделать резервную копию файла базы данных. Вот собственно и все. В комментариях хотелось бы увидеть какие то еще практические примеры использования консольной утилиты cnvdbfl.exe (кому, когда, в каких ситуациях пригодилась).

Сделаны не значительные улучшения и исправления:


  • Исправлен обход элементов на форме;
  • Добавлен вызов справки консольной утилиты при нажатии F1;
  • Добавлена кнопка для копирования командной строки, сформированной на основании выставленных настроек, в буфер обмена (к примеру для дальнейшего использования в скрипте или командном файле);
  • Добавлен автоматический запуск от имени администратора, т.к. утилите часто требуется наличие прав администратора для доступа к консольным утилитам 1С в каталоге bin. Если включен UAC или что то подобное, то будет выдан запрос на разрешение запустить приложение;
  • Добавлена 64-х битная версия утилиты. Внимание! Разрядность касается только операционной системы. Что касается платформы 1С, то с 64-х битной платформой 1С может работать и 32-х битная версия утилиты;

Сделаны не значительные улучшения:


  • Добавлены защиты от "дураков", что бы не вводили что попало, в поля в которые не следует ничего вводить;
  • Добавлены дополнительные всплывающие подсказки для полей;
  • Добавлена асинхронность работы. Теперь окно можно двигать и сворачивать во время конвертации;
  • Добавлено отображение процента выполнения конвертации. По сути, значение процентов отображает соотношение размера нового файла базы данных по отношению к старому, т.е. если вы вдруг увидите, что текущее значение уже 150%, то это обозначает, что размер файла после конвертации увеличился в полтора раза;
  • Сделаны др. мелкие и мало заметные изменения;

Просьба обратить внимание, что перетягивание файла базы данных мышкой на форму может не работать на некоторых с борках Windows. Это вязано с тем, что проводник не запускается с правами администратора, а данное приложение всегда запускается с правами администратора. Такое поведение касается любых приложений, к примеру, попробуйте запустить 1С:Предприятие от имени администратора и перетянуть в него какой нибудь файл - ничего не произойдет, т.к. из приложения у которого меньше прав (Проводник) нельзя ничего перетаскивать в приложение у которого больше прав (1С:Предприятие).

Встречайте новое обновление с кучей улучшений!


image alt text

За несколько лет сначала вынужденного, а потом и вполне занимательного администрирования 1С у меня накопился набор решений под большинство особенностей продукта. Предлагаю отложить в сторону высокие материи про кластеры и тюнинг SQL, и перетряхнуть запасы скриптов и механизмов, которые облегчают жизнь с 1С.

Будут как простые инструменты создания новых пользователей и мониторинга "все ли вышли из базы", так и более изощренные интерфейсы проверки целостности базы и ее перемещения.

Как у большинства сложных приложений, у 1С через некоторое время работы вылезают странные ошибки, и возникает порой необъяснимое поведение. Специальные люди по 1С советуют в таких случаях почистить кэш.

Если запустить 1С с параметром /ClearCache, то будут очищены только клиент-серверные запросы. Локальные метаданные останутся и их нужно удалять отдельно на уровне файлов и папок. Эти данные хранятся в профиле пользователя, в папках с длинными названиями из GUID баз данных. Если баз на сервере немного, то такой кэш нетрудно удалить руками. Но если БД исчисляется десятками, то чистке вручную вы не обрадуетесь.

image alt text

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

И никаких связанных со старым кэшем проблем.

Для исправления испорченной файловой базы в поставку 1С входит утилита chdbfl.exe, которая просто считывает содержимое базы во временный файл. Если какие-то данные считать не может — пропускает. При этом у нее нет ключей запуска для автоматизации, и проверку приходится запускать вручную.

Вообще, правильнее запускать проверку БД конфигуратором, но этот процесс проходит значительно дольше. Если же использовать только проверку физической целостности средствами chdbfl.exe, то не забывайте делать резервную копию из-за возможной потери данных.

Для баз 8.1 Андрей Скляров создал хороший инструмент Check1CD, с двумя параметрами запуска: "исправлять найденные ошибки" и “путь к базе”.

Но в Check1CD не хватает двух вещей:

Раз есть "хотелка" и немного свободного времени, то почему бы не попробовать решить вопрос самостоятельно?

Доработать код для передачи параметров через ключи командной строки — дело техники.

image alt text

image alt text

С выходом 1С 8.2 возникла проблема — путь к chdbfl менялся с установкой нового релиза. Что ж, дополним скрипт:

Надо сказать, недавно был опубликован исходный код Check1CD. Да, тоже на AutoIT.

Аналогичный механизм можно применять и для автоматического запуска различных регламентных механизмов, где нужно запускать 1С и ждать завершения операции.

При различных регламентных операциях с 1С (ночное обновление конфигурации или бэкап в .dt) важно обеспечить отсутствие подключенных к ней пользователей. Можно конечно запускать 1С: Предприятие с ключом /C ЗавершитьРаботуПользователей, но это не всегда удобно, да и хочется же потом написать личное письмо с рекомендациями по устранению склероза.

Можно использовать штатную возможность подключения к 1С через COMConnector и скрипт на AutoIT. Код написан под 1С 8.1 и позволяет выкинуть пользователей из базы с записью в журнал.

Но операцию иногда нужно проворачивать по просьбе самого пользователя, который запустил "тяжелый" отчет и повесил 1С. Если не хотите решать эти вопросы самостоятельно, то просто выведите любителям “тяжелых” отчётов ярлык на скомпилированный скрипт:

Еще COMConnector помогает проверить наличие обновлений конфигурации, получить какую-то информацию из базы, и автоматизировать заведение пользователей в 1С.

На мой взгляд, создавать новых пользователей 1С должен системный администратор, а не программист 1С. Но последнему нужно сделать процесс максимально простым. Чтобы администратору не приходилось "заглядывать" в каждую базу отдельно, можно использовать еще один скрипт.

Для примера приведу функцию создания пользователей в типовой Бухгалтерии 2.0.

image alt text

Юрлиц развелось слишком много — нужно разбивать на столбцы.

Занятно, но после смены нескольких поколений администраторов в одной компании из далекого прошлого новенькие уже не знали как создать пользователя вручную.

Если нужно перенести базу 1С: Предприятия вместе с ее данными в SQL на другой сервер, то делать это вручную целесообразно только для 1-2 БД.

При большем их числе рутина станет утомительной - лучше воспользоваться скриптом.

image alt text

Список баз для миграции можно брать и из файла, а лог выводить в текстовый файл. Аналогичным образом можно конвертировать несколько десятков баз из файловых в SQL простой выгрузкой-загрузкой в .dt

Конечно, это далеко не все, что можно автоматизировать в связке с 1С. Но разного рода обмены, получение real-time информации из 1С в других приложениях и прочие сценарии не попали в этот обзор из-за узкой направленности и специфики.

Наверняка у вас тоже есть свой набор "ноу хау" для администрирования 1С — будет здорово если поделитесь с коллегами в комментариях.

Скрипты и ноу-хау предоставлены avelor, за что ему огромное спасибо!

Проект состоит из нескольких файлов (хотя ничего не мешает всё сделать одним):

rac_gui.cfg — дефолтный конфиг
rac_gui.tcl — основной скрипт запуска
В каталоге lib лежат файлы автоматически загружаемые при старте:
function.tcl — файл с процедурами
gui.tcl — основной графический интерфейс
images.tcl — библиотека изображений в base64

Файл rac_gui.tcl, собственно, запускает интерпретатор, инициализирует переменные, загружает модули, конфиги и так далее. Содержимое файла с комментариями:

После загрузки всего, что требуется и проверки наличия утилиты rac, будет запущено графическое окно. Интерфейс программы состоит из трёх элементов:

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

Содержимое «дерева» я сделал максимально похожим на штатную windows-оснастку от 1С.

image

Основной код формирующий данное окно содержится в файле

Алгоритм работы с программой следующий:

1. В начале, надо добавить основной сервер кластера (т.е. сервер управления кластером (в linux управление запускается командой "/opt/1C/v8.3/x86_64/ras cluster --daemon")).

Для этого жмёт на кнопку "+" и в открывшемся окне, вводим адрес сервера и порт:

image

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

2. Щелкнув на имя кластера откроется список функций доступный для него.

Ну и так далее, т.е. чтобы добавить новый кластер, выделяем любой доступный в списке и нажимаем кнопку "+" в панели инструментов и будет выведен диалог добавления нового:

image

Кнопки в панели инструментов выполняют функции в зависимости от контекста, т.е. от того какой элемент дерева или списка выбран, будет выполнена та или иная процедура.

Рассмотрим на примере кнопки добавления ("+"):

Код формирования кнопки:


Тут видим, что при нажатии кнопки будет выполнена процедура «Add», её код:


Вот и проглядывает один из плюсов тикля — в качестве имени процедуры можно передать значение переменной:


Т.е., к примеру, если мы ткнём в основной сервер и нажмём "+" то будет запущена процедура Add::server, если в кластер — Add::cluster и так далее (о том откуда берутся нужные «ключи» напишу чуть ниже), перечисленные процедуры отрисовывают графические элементы соответствующие контексту.

Как вы уже могли заметить, формы похожи по стилю — это и не удивительно, ведь они выводятся одной процедурой, точнее основной каркас формы (окно, кнопки, изображение, метка), название процедуры

Параметры вызова: заголовок, название изображения для иконки из библиотеки (lib/images.tcl) и опциональный параметр имя окна (по умолчанию .add). Таким образом, если брать вышеприведённые примеры для добавления основного сервера и кластера то вызов будет соответственно:


Ну и продолжив с этим примерами покажу процедуры, которые выводят диалоги добавления для сервера или кластера.

При сравнении кода этих процедур, разница видна не вооруженным глазом, внимание заострю на обработчике кнопки «Ок». В Tk свойства графических элементов можно переопределять вовремя выполнения программы при помощи опции configure. К примеру, первоначальная команда вывода кнопки:


Но а в наших формах команда зависит от требуемой функциональности:


В приведённом выше примере на кнопку «забит» запуск процедуры добавления кластера.

Тут стоит сделать отступление в сторону работы с графическими элементами в Tk — для различных элементов ввода данных (entry, combobox, checkbutton и т.д.) введён такой параметр как текстовая переменная (textvariable):


Переменная эта определена в глобальном пространстве имён и содержит текущее введённое значение. Т.е. дабы получить введённый текст из поля надо просто считать значение, соответствующей переменной (конечно при условии, что она определена при создании элемента).

Второй метод получения введённого текста (для элементов типа entry) это использование команды get:


Оба эти метода можно увидеть в вышеприведённом коде.

Нажатие этой кнопки, в данном случае, запускает процедуру RunCommand с сформированной строкой команды добавления кластера в терминах rac:


Вот и подошли к основной команде, которая и управляет запуском rac с нужными нам параметрами, также разбирает вывод команд на списки и возвращает, если это требуется:

После ввода данных основного сервера он будет добавлен в дерево, за это, в выше приведённой процедуре Add:server, отвечает следующий код:


Теперь щелкнув по имени сервера в дереве, мы получим список кластеров управляемых оным сервером, а щелкнув на кластере, получим список элементов кластера (серверов, информационных баз и т.д.). Реализовано это в процедуре TreePress (файл lib/function.tcl):


Соответственно, для основного сервера запустится Run::server (для кластера — Run::cluster, для рабочего сервера — Run::work_server и т.д.). Т.е. значение переменной $key это часть имени элемента дерева, задаваемого опцией -id.

Обратим внимание на процедуру

Данная процедура обрабатывает то, что было получено от сервера через команду RunCommand, и добавляет всякое-разное в дерево — кластеры, различные корневые элементы (базы, рабочие серверы, сеансы и так далее). Если приглядеться, то внутри можно заметить вызов процедуры InsertItemsWorkList. Она используется для добавления элементов в графический список, обрабатывая вывод консольной утилиты rac, который ранее был в виде списка возвращен в переменную $lst. Это список списков, содержащий пары элементов разделённые двоеточием.

Например, список соединений кластера:


В графическом виде это будет выглядеть примерно так:

image

Вышеозначенная процедура выделяет наименования элементов для заголовка и данные для заполнения таблицы:

Тут вместо простой команды [split $str ":"], которая разбивает строку на элементы разделенные ":" и возвращает список, применено регулярное выражение, так как некоторые элементы также содержат двоеточие.

Процедура InsertClusterItems (одна из нескольких подобных) просто добавляет в дерево к требуемому элементу cluster список дочерних элементов с соответствующими идентификаторами

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

В данной процедуре добавление и проверка решены в лоб:

А тут подход более правильный:

Разница между ними в применении цикла, в котором и выполняется повторяющаяся команда (команды). Какой подход применять — это уже на усмотрение разработчика.

Добавление элементов и получение данных мы рассмотрели, самое время остановиться на редактировании. Так как, в основном, для редактирования и добавления используются одни и те же параметры (исключение составляет информационная база) то и диалоговые формы используются одинаковые. Алгоритм вызова процедур для добавления выглядит так:

Add::$key->AddToplevel

А для редактирования так:

Edit::$key->Add::$key->AddTopLevel

Для примера возьмём редактирование кластера, т.е. щелкнув в дереве на названии кластера, нажимаем кнопку редактирования в панели инструментов (карандашик) и на экран будет выведена соответствующая форма:

image

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

В данной процедуре всплыл еще один плюс tcl — в качестве имён переменных подставляются значения других переменных. Т.е. для автоматизации заполнения форм и инициализации переменных наименования полей и переменных, соответствуют ключам командной строки утилиты rac и наименованиям параметров вывода команд с некоторым исключением — тире заменено на подчерк. К примеру scheduled-jobs-deny соответствует полю ent_scheduled_jobs_deny и переменной scheduled_jobs_deny.

Формы добавления и редактирования могут отличаться составом полей, к примеру, работа с информационной базой:

image

image

В процедуре редактирования Edit::infobase на форму добавляются требуемые поля, код объёмный посему тут не привожу.

По аналогии реализованы процедуры добавления, редактирования, удаления и для остальных элементов.

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

Кластер 1С позволяет работу как с авторизацией так и без. Существует два вида администраторов — администратор агента кластера и администратор кластера. Соответственно для корректной работы введены ещё 4 глобальных переменных, содержащих логин и пароль администратора. Т.е. если в кластере присутствует учётная запись администратора, то будет выведен диалог для ввода логина и пароля, данные будут сохранены в памяти и подставятся в каждую команду для соответствующего кластера.

За это отвечает процедура обработки ошибок

Т.е. в зависимости от того, что возвращает команда, будет соответственно и реакция.

На данный момент функциональность реализована процентов эдак на 95, осталось реализовать работу с профилями безопасности ну и оттестировать =). На этом всё. Прошу прощения за скомканное повествование.

Код, по традиции доступен тут.

Обновление: Доделал работу с профилями безопасности. Теперь функциональность реализована на 100%.

image

Обновление 2: добавлена локализация на английский и русский, проверена работа в win7

Концепция пользовательского интерфейса системы 1С:Предприятие 8 ориентирована на комфортную эффективную работу и соответствует современным тенденциям.

Основное окно

При запуске системы в режиме 1С:Предприятие открывается основное окно программы.

Концепция пользовательского интерфейса

Функции, необходимые для удобной навигации по прикладному решению, реализованы в главной панели и в нескольких вспомогательных панелях: в панели разделов и в панели функций текущего раздела. Разработчик прикладного решения может задать некоторый стандартный состав и расположение этих панелей в соответствии с назначением и особенностями приложения.

Концепция пользовательского интерфейса

Конструирование рабочего пространства

Пользователь может самостоятельно конструировать своё рабочее пространство, располагая панели в разных областях экрана.

Концепция пользовательского интерфейса

Можно создать минималистичное рабочее место, оставив на экране лишь главную панель. При этом все функции навигации по прикладному решению будут доступны с её помощью.

Концепция пользовательского интерфейса

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

Концепция пользовательского интерфейса

Начальная страница

Начальная страница — это стандартный раздел программы, содержащий часто используемые документы, отчеты, справочники и т. п. Это своеобразный «помощник» пользователя. Каждый рабочий день начинается с «общения» с ним. Начальная страница вводит пользователя в курс дел, отвечает на его вопросы — подробнее.

Концепция пользовательского интерфейса

Панель разделов

Панель разделов — это наиболее крупное разделение функциональности прикладного решения. Она расположена в верхней части основного окна и соответствует верхнему уровню подсистем, добавленных в конфигурацию. С ее помощью осуществляется переход к другим разделам программы. Подробнее…

Концепция пользовательского интерфейса

Раздел

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

Концепция пользовательского интерфейса

Команды

Команды — это действия, которые может выполнить пользователь. Программа может содержать разнообразные команды. Часть из них, стандартные команды, предоставляется самой платформой. Другая часть создается разработчиком прикладного решения. Подробнее…

Панель функций текущего раздела

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

Концепция пользовательского интерфейса

Главная панель

Главная панель предназначена для быстрого доступа к основным функциям прикладного решения: меню функций, глобальному поиску, центру оповещений, истории, избранному, к текущему пользователю и главному меню — подробнее.

Концепция пользовательского интерфейса

Меню функций

Меню функций предоставляет удобный доступ ко всем командам прикладного решения. Перемещаясь по разделам можно видеть на экране все команды раздела и выполнять поиск по ним. Подробнее…

Концепция пользовательского интерфейса

Глобальный поиск

Концепция пользовательского интерфейса

Избранное

Любой раздел, список, объект базы данных, отчет или обработку, а также команду можно добавить в избранное, чтобы потом быстро вернуться к ней, при необходимости — подробнее.

Концепция пользовательского интерфейса

История

История содержит все действия пользователя, связанные с добавлением, изменением данных, или просто с открытием форм элементов справочников, документов и т. д. Она позволяет быстро перейти к тем объектам, которые пользователь недавно изменял или открывал — подробнее.

Концепция пользовательского интерфейса

Центр оповещений

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

Концепция пользовательского интерфейса

Текущий пользователь

Гиперссылка с именем текущего пользователя открывает окно, в котором можно завершить работу, отменив при этом аутентификацию, если она выполнялась с помощью OpenID.

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

Концепция пользовательского интерфейса

Главное меню

Главное меню содержит набор команд, относящихся к прикладному решению в целом и не зависящих от прикладной специфики конфигурации.
Например, команды пользовательской настройки интерфейса и команды установки параметров системы в целом — подробнее.

Концепция пользовательского интерфейса

Вспомогательные окна

При вызове некоторых команд ввода новых и редактирования существующих объектов, а также при открытии некоторых отчетов и обработок открываются вспомогательные окна приложения.

Концепция пользовательского интерфейса

Меню формы

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

Концепция пользовательского интерфейса

Ссылки на данные

На любой раздел, список, объект базы данных, отчет или обработку можно получить ссылку в виде строки текста. Такую ссылку можно, например, передать коллеге, чтобы тот мог быстро перейти к этим же данным и внести изменения. Подробнее…

Концепция пользовательского интерфейса

Панель открытых

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

Концепция пользовательского интерфейса

Информационная панель

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

Концепция пользовательского интерфейса

Поддержка корпоративного стиля

Платформа 1С:Предприятия содержит ряд инструментов, позволяющих подстроить внешний вид прикладного решения под корпоративные требования заказчика, под тот стиль, который используется в большинстве его программных продуктов — подробнее.

Взялся за изучение CentOS. До этого с linux особо не сталкивался. Командная строка заставляет грустить.
Главное что понял на данный момент - gui не тру.
А кроме этого есть ещё минусы или плюсы в его пользу? (применительно к серверному варианту)

Где-то пишут что это понижает безопасность сервера - каким образом? Если это так, то это действительно мощный минус.
Есть ли смысл для настройки каких-то конкретных приложений устанавливать gui, а после настройки сносить его?
(опять же где-то прочёл что в акронисе например не все команды работают через командную строку, а под графонием всё норм)
Сильно ли графический интерфейс ускоряет настройку и мониторинг системы?
Просто хочется сразу взять верный старт.

  • Вопрос задан более трёх лет назад
  • 1273 просмотра

Оценить 1 комментарий

sim3x

shambler81

GUI не нужен
Основная проблемма линукса в этом вопросе в том, что профессионалу гуи не нужно и он его естественно себе не пишет.
А новичкам, кому он нужен как воздух, эти не в состояние его написать.
Из этого следует
1. гуи нормального не будет ( все на себя берет веб интерфейс)
2. никто его писать не будет ибо тот кто может, не хочет.

sergeygsd

shambler81

GavriKos

ГУИ не нужен только по одной причине - вся работа с сервером должна строиться удаленно через SSH.

mgis

что значит должна? кому как удобнее.
а не нужен он потому как жрет ресурсы. но эт раньше было проблемой, сейчас лишнии 200-300 мб на гуи для админа не страшно

JohnnyGat

Кому она должна? С сегодняшним уровнем железа использовать SSH или RDP (для GUI) банальная вкусовщина. А еще бывают (вы только со стула не падайте) серверы которые не выходят в сеть.

shambler81

гуи никто писать не будет, оно никому не нужно
А то что вы выучить пару манов не можете, разрабов особо не калишет.
Если вы хорошо знаете консоль, то вам и в голову не прийдет что к ней можно прикрутить гуи.
Мало того на все сервера вы все-равно не прикрутите гуи, в свое время я даже от zsh отказался в связи с тем что не везеде ее могу поставить, а следовательно невозможно стандартизировать работу. А вы говорите гуи.
ТАк же будет вам известно пробрасыватие X11 не так уж и комфортно работает.
И главное Linux не равно Windows, не пытайтесь использовать инструментарий одной ос в другой, ЭТО ГЛУПО.
чем быстрй вы будите себя чувствовать комфортно в линукс тем вам же будет удобней.

Иксы на центосе, да и вообще gui в любом unix-like кушают ресурсы. + на старых версиях всегда есть уязвимости, а gui - лишний вектор атак.

Для системного подхода стоит придерживаться принципа Бритвы Оккама и не плодить лишние сущности. Так и GUI необходим для десктопа, а для сервера только cli, только хардкор :)

P.S. тем более администрирование 99.9% удалённое, можно конечно пробросить gui через ssh, но опять же зачем?
P.P.S. Вы быстро привыкните и будете в скором времени удивляться своему вопросу, потому что консоль - мощное, удобное и главное быстрое средство

gbg

хочется сразу взять верный старт. - и в этом ваша главная проблема. Целесообразнее начать набираться опыта и сравнивать разные подходы.

Графика, она бывает разная. Есть kde, который может пару гиг откушать, есть icewm, который кушает пару сотен мег.

Вывод - графика кушает ресурсы.

Помогает ли GUI удобнее админить сервер - и да и нет. Командная строка помнит всю историю набранных команд, GUI - не помнит, какие кнопки и в каком порядке вы тыкали.
С другой стороны, в GUI можно быстро натыкать всякие вещи, которые из командной строки правятся долго и нудно.

Что касается безопасности - небезопасности - здесь можно дать ответ только из общих соображений - обеспечить безопасность графического UI для программиста сложнее, чем обеспечить безопасность консольного UI

Главный плюс работы с консолью - вы много узнаете о внутренней кухне ваших серверов, о расположении и синтаксисе конфигурационных файлов и прочем. И еще, все гайды в интернете обычно перечислены в виде списков команд, а не "пойди туда, ткни сюда".

Вывод - учите консоль.

jamakasi666

Сначала надо определиться что к вашему определению относит GUI.
Если просто голый рабочий стол то бессмысленная трата драгоценных ресурсов.
Если графические утилиты по настройке каких то демонов\сервисов то и это проблема т.к. чаще всего они сильно гадят в конфиги и не могут предоставить всю гибкость софта.

Учите консоль и ручную правку конфигов, это очень просто если понять подход. Для облегчения можете поставить "midnight commander" что очень сильно облегчит жизнь(mc файловый менеджер, mcedit простенький текстовый редактор). Сначала с ним покопаетесь в конфигах и устройстве системы а потом уже и сможете познавать высший цзен с вимом и еще кучей удобных утилит типа sed что даст конкретный буст в удобстве. После этого любые GUI на серверах будут вызывать рвотный рефлекс =)

̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ Не нужно, за исключением некоторых очень редких случаев, когда на сервере должно крутиться нечто, что без гуёв не работает.
Где-то пишут что это понижает безопасность сервера - каким образом?

Вряд ли, по крайней мере классические gnome, kde, openbox и прочие не должны.
Есть ли смысл для настройки каких-то конкретных приложений устанавливать gui, а после настройки сносить его?
опять же где-то прочёл что в акронисе например не все команды работают через командную строку, а под графонием всё норм

Зачем вам акронис на сервере? Диск разметить? Есть fdisk, cfdisk, parted и куча других.
Сильно ли графический интерфейс ускоряет настройку и мониторинг системы?

Нет, только замедляет, а для мониторинга есть специальные системы, обычно на них интерфейс доступен через браузер.
И главный аргумент против - он будет только потреблять лишние ресурсы.

GUI на сервере не нужен.
Вреден так как жрет немеряно ресурсов.
Как альтернатива GUI используется веб-интерфейс.

Если вы собираетесь становиться квалифицированным разработчиком или админом - командная строка вам крайне нужна.

Читайте также: