Как изменить имя службы Windows после ее создания
Я создал службу Windows для сервера Tomcat, и он работает нормально, но теперь я хочу изменить имя службы без ее удаления.
так есть ли какие-либо шаги cmd \ GUI для изменения имени службы?
Ответ @ bfhd сработает, если вы просто захотите изменить отображаемое имя (это то, что показано в списке Services.msc , но не «реальное» имя службы) (это имя раздела реестра, содержащего информацию о службе, которое используется в API, например OpenService ). В разделе «Примечания» этой статьи MSDN немного больше говорится об именах служб и отображаемых именах.
К сожалению, нет официального способа изменить название сервиса. Тем не менее, это возможно, если вам по какой-то причине необходимо переименовать службу, а не просто переустанавливать ее под новым именем. Сделайте следующее:
- Остановите службу. Вы, вероятно, перепутаете диспетчер управления службами, если делаете это на работающей службе. (Вы можете все равно перепутать, это очень смешно.)
- Открыть regedit.exe (редактор реестра).
- Найдите HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services и найдите подраздел с названием вашей службы.
- Щелкните правой кнопкой мыши ключ, который вы нашли на шаге 3, и выберите «Переименовать». Введите новое имя для сервиса.
- Перезагрузите компьютер. Services.exe процесс, в котором находится диспетчер управления службами, не увидит изменения, если вы этого не сделаете; Попытки запустить переименованный процесс (или вообще вообще не взаимодействовать с ним) потерпят неудачу.
Я не обещаю этой работы. Однако, возможно, стоит попробовать, если по какой-то причине просто переустановить службу под новым именем так недопустимо.
Если вы должны сделать это программно, может существовать функция, RegRenameKey которая может выполнить для вас четвертый шаг выше. Я подчеркиваю, может существовать, потому что, насколько я могу судить, эта функция является полностью неофициальной; это не в MSDN, и есть очень мало информации об этом. Единственное, что я нашел, кроме заголовков Windows (которые имеют прототип и указывают, что это только на Vista — NT6.0 — и новее), это сообщение на форуме Sysinternals , которое указывает, что он вызывает системный вызов NT (также недокументированный ). Прототип функции, от WinReg.h , является
Как изменить имя службы в Windows?
Как изменить имя службы в Windows?
В статье приводится описание способов переименования имени службы (Windows и создаваемой пользователем), а также описываются некоторые нюансы присвоения имён службам. Сразу оговорюсь: описанными в статье методами получится изменить имя службы в части её описания, но никак не то имя, которое видится в первой колонке Диспетчера задач:
Итак, причины на то, чтобы изменить имя службы, есть. Каждая из служб работает на конкретную программу. Некоторые из администраторов сменяют имена на удалённых компьютерах, маскируя те от пронырливых пользователей. И чаще всего это делается под эгидой безопасности вновь устанавливаемого программного обеспечения на удалённых машинах какой-то конкретной конторы. Хотя более простым способом кажется иногда возможность просто эту службу спрятать.
Название службы: что есть что?
Перед тем, как приступить к манипуляциям с именами, вы должны обратить внимание на следующее. Для любой службы существуют два официальных наименования. Российские пользователи видят их (например, в том же Диспетчере задач) как Имя службы и её Описание. Так вот Имя есть ни что иное как название соответствующего в реестре ключа . Который и на который ссылаются перекрёстные сервисы и другие разделы реестра. Описание носит более неформальный характер, отображается в контрольной панели служб Windows и используется командой net start. Оба имени обусловлены функцией CreateService, а изменяются через ChangeServiceConfig. Информация по каждой службе располагается в ключе с её именем по адресу:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\служба
Для “приклеивания” Имени к Описанию используется функция GetServiceDisplayName, Описания к Имени – функция GetServiceKeyName. К чему это всё: работа со службами (в части смены названия) штатными средствами Windows, тем самым, ограничена лишь работой с конкретным разделом и некоторыми параметрами. Чтобы сразу стало понятно: изменения, описываемые далее, затронут лишь информацию в части описания службы; имя службы останется тем же. Попытка сменить имя в части раздела/куста реестра после перезагрузки приведёт к невозможности запустить службу
Это связано с тем, что будут утеряны любые внутрисистемные зависимости, и обычным переименованием раздела вопрос, конечно, не решить. Windows проверит свою службу сразу же после запуска и отметит её повреждённой, присвоив код ошибки. Это происходит в том числе и благодаря другим дополнительным параметрам в реестре в том же разделе. Точно могу утверждать, что официальных возможностей для смены самого Имени службы не существует в природе. Что уж говорить об оформленных в GUI программах для этого. Что качается неофициальных возможностей, то
Как изменить имя службы в части Описания?
Все дальнейшие действия идут от имени администратора.
Для того, чтобы переименовать службу Windows, необходимо сначала ознакомиться с её официальными наименованиями. Для этого отправимся к списку служб быстрой командой
Останавливаем службу. Это можно сделать прямо здесь или из консоли cmd от имени администратора:
sc stop Имя
Переходим в реестр к
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Имя-нужной-службы
Щёлкнем правой мышкой по разделу, обнаружив справа параметр под именем Display Name и выберем Изменить... Задайте нужное описание по усмотрению и перезагрузите окно со списком служб. После запускаем Диспетчер задач во вкладке Служба проверяем изменения.
Тот же эффект вы получите, воспользовавшись утилитой sc.exe, запущенной в консоли команд от имени администратора в виде (следите за пробелами)
sc config “Имя-службы” displayname= “Описание службы”
Более того, этот инструмент может гораздо больше, чем просто изменить описание службы. Например, пользователь может изменить имя исполнительного файла, который будет запускаться вместе с требуемым сервисом:
sc config “Имя-службы” binpath= “C:\путь\к\исполнительному-файлу”
Что добавить. Штатные средства Windows по переименованию служб исчерпаны. Однако особо страждущим я могу дать наводку на программеров по С++, которые, по их утверждению, проторили дорожку к возможности поменять имя службы на нужное. Что-то упоминается в процессе описания этапов разработки очередного редактора реестра Registry Explorer, кто-то наткнулся на такую возможность, углубляясь в подробности настройки Windows API. В общем, кому интересно – взгляните.
Редактирование параметров запуска служб в Windows
В данной статье будет рассказано о том, как отредактировать параметры запуска служб в Windows на примере службы «Агент сервера 1С:Предприятия 8.3». Будет показано как настроить тип запуска служб, изменить учетные данные для запуска службы, а также изменить параметры запуска исполняемого файла службы.
0. Оглавление
1. Изменение настроек запуска службы
Предположим у нас имеется работающая служба, пусть это будет «Агент сервера 1С:Предприятия 8». Для того что бы отредактировать свойства запуска данной службы перейдем в оснастку «Службы» (Services).
В Microsoft Windows Server 2012 эту оснастку можно найти в Диспетчере серверов (Server Manager), пункт меню «Средства» (Tools) — «Службы» (Services).
В Microsoft Windows Server 2008 R2 в меню «Пуск» (Start) — «Администрирование» (Administrative Tools) — «Службы» (Services)
Ну или в любой версии Windows можно выполнить команду services.msc. Для этого необходимо нажать комбинацию клавиш Win + R, в открывшемся окне «Выполнить» (Run) ввести имя команды в поле «Открыть» (Open) и нажать «ОК».
Далее в открывшейся оснастке, в списке служб находим службу, параметры запуска которой необходимо отредактировать.
Кликаем два раза по имени службы, чтобы открыть ее свойства. В окне свойств службы можно отредактировать нижеперечисленные параметры запуска службы.
На закладке «Общие» (General) можно настроить тип запуска службы (Startup type) — Автоматически (Automatic), Вручную (Manual), Отключена (Disabled) или Автоматически (отложенный запуск) (Automatic (Delayed Start)), выбрав соответствующий вариант из списка. А также возможно Остановить (Stop), Приостановить (Pause) или Запустить (Start) данную службу.
На закладке «Вход в систему» (Log on) можно настроить параметры учетной записи (account), от которой будет запускаться выбранная служба. Возможно настроить запуск от системной учетной записи (Local System account), или выбрать конкретного пользователя Windows, указав его имя и пароль.
На закладке «Восстановление» (Recovery) можно задать действия, которые будет выполнять система при сбое службы.
На закладке «Зависимости» (Dependencies) можно настроить зависимость запуска службы от различных компонент системы.
2. Изменение параметров запуска исполняемого файла службы
В окне свойств службы, на закладке «Общие» (General) возможно просмотреть путь к исполняемому файлу службы, а также увидеть передаваемые для его запуска параметры.
Однако эта информация доступна только для чтения. Изменить строку запуска исполняемого файла службы можно с помощью системного реестра Windows.
Для запуска системного реестра, следует выполнить команду regedit.exe. Для этого необходимо нажать комбинацию клавиш Win + R, в открывшемся окне «Выполнить» (Run) ввести имя команды в поле «Открыть» (Open) и нажать «ОК».
В первую очередь при работе с реестром Windows необходимо сделать бэкап, выполнив экспорт всего реестра.
После этого в дереве папок слева переходим по пути:
Затем в списке выделим группу с именем службы, свойства которой необходимо отредактировать. При этом, в окне справа увидим все параметры данной службы.
Кликаем 2 раза по имени параметра, который необходимо изменить и вводим новое значение.
Например, пусть нам необходимо запустить сервер «1С:Предприятие» в режиме отладки, т. е. добавить в строку запуска параметр -debug. Для этого меняем значение параметра ImagePath.
Нажимаем «ОК», для сохранения изменений и закрываем редактор реестра.
Перезапускаем службу для того, чтобы изменения вступили в силу. Сделать это моно также из оснастки «Службы» (Services), кликнув правой кнопкой мыши по имени службы в списке и выбрав в контекстном меню «Перезапустить» (Restart).
На этом все. Изменения вступили в силу, соответственно агент сервера запущен в режиме отладки.
Смотрите также:
Здесь будет рассказано как изменить политику паролей в Windows Server 2008. По умолчанию все пароли в Windows должны отвечать политике безопасности, а именно: Не содержать имени учетной записи пользователя…
Ниже будет рассказано о том, как добавить новое правило в Брандмауэр Windows Server 2008 R2. А конкретнее, будем добавлять разрешающее правило для порта 1433, который использует Microsoft SQL Server 2008 R2 или, как…
Ниже приведена небольшая инструкция об изменении политики паролей в Microsoft Windows Server 2012 R2. По умолчанию политика паролей определена таким образом, что все пароли учетных записей пользователей должны удовлетворять следующим…