New-Service 帮助信息

本文介绍如何使用 PowerShell 的 New-Service 命令创建 Windows 服务,包括设置服务名称、可执行文件路径、显示名称等参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如下说明是翻译PowerShell中: help New-Service 产生的帮助信息.
译者: Edengundam(马涛)
 
New-Service
 
大纲
在注册表和服务数据库(Service Database)中为 Windows 服务创建新项.
 
语法
New-Service [-name] <string> [-binaryPathName] <string> [-displayName <string>] [-description <string>] [-startupType {<Automatic> | <Manual> | <Disabled>}] [-credential <PSCredential>] [-dependsOn <string[]>] [-whatIf] [-confirm] [<CommonParameters>]
 
详细描述
在注册表和服务数据库(Service Database)中为 Windows 服务创建新项. cmdlet允许你设置服务的显示名称, 名称, 启动类型和依赖关系.
 
参数
 
-name <string>
指定服务的名称.
 
强制参数?
true
参数位置?
1
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-binaryPathName <string>
指定服务的可执行文件路径.
 
强制参数?
true
参数位置?
2
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-displayName <string>
为服务指定新的显示名.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-description <string>
为服务指定新的描述.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-startupType <ServiceStartMode>
设置服务的启动类型.
 
此参数接受的输入值:
 
·         Automatic
·         Manual
·         Disabled
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-credential <PSCredential>
指定服务启动使用的凭证.
 
强制参数?
false
参数位置?
named
默认值
LocalSystem
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-dependsOn <string[]>
新服务依赖的服务名称. 使用逗号分隔多个服务名称
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-whatIf
描述执行此命令将会发生的现象, 不会真正执行此命令.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-confirm
执行命令前提示你进行确认.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
<公共参数>
此命令支持公共参数: -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息, 输入, "get-help about_commonparameters".
 
输入类型
None
 
RETURN TYPE
ServiceControllerObject
 
注意
 
更多信息, 输入"Get-Help New-Service  -detailed".需要技术信息, 输入"Get-Help New-Service -full".
 
如果需要为该命令提供多个参数, 请使用逗号进行分隔. 例如, "<parameter-name> <value1>, <value2>".
 
1
 
C:/PS>new-service testservice "C:/WINDOWS/System32/svchost.exe -k netsvcs"
 
此命令将在注册表和服务数据库中为名为"testservice"的服务创建新项.
 
相关链接
Get-Service
Start-Service
Stop-Service
Restart-Service
Resume-Service
Set-Service
Suspend-Service
 
<think>好的,我现在需要帮助用户解决在PowerShell中使用New-Service命令时遇到的PermissionDenied错误,同时还有ssh-agent和ServiceCommandException的问题。首先,我得理解用户的具体情况。用户可能在尝试创建一个新的Windows服务时遇到了权限不足的问题,导致命令执行被拒绝。可能还涉及到了ssh-agent的相关配置,因为用户引用了多个关于SSH权限问题的资料。 首先,我应该回忆一下PowerShellNew-Service命令的权限要求。创建Windows服务通常需要管理员权限,所以用户可能没有以管理员身份运行PowerShell。这是常见的Permission Denied的原因之一。需要提醒用户检查是否使用管理员权限启动PowerShell。 接下来,查看错误信息中的ServiceCommandException,这可能意味着服务创建过程中有其他问题,比如服务名称已存在、路径无效或者二进制文件权限不足。用户需要确认服务名称是否唯一,可执行文件的路径是否正确,以及该文件是否可以被系统访问和执行。 关于ssh-agent的部分,用户可能在配置SSH密钥时遇到了问题,导致git操作权限被拒绝。引用中的资料提到ssh-agent没有启动,或者密钥没有正确添加。虽然用户当前的问题是关于创建服务的,但可能他们同时在进行SSH相关的配置,导致混淆。需要确认用户是否在同一个PowerShell会话中同时处理这两件事,或者是否有其他冲突。 可能的解决步骤包括: 1. 以管理员身份运行PowerShell,确保有足够的权限创建服务。 2. 检查服务名称是否唯一,避免与现有服务冲突。 3. 验证可执行文件路径是否正确,并且该文件具有执行权限。 4. 如果涉及SSH-agent,确保其服务已启动,并且密钥正确添加。 5. 查看系统日志获取更详细的错误信息帮助诊断问题。 此外,用户提到的ssh-agent问题可能需要单独处理,比如通过eval启动ssh-agent进程,并使用ssh-add添加密钥。但当前主要问题是服务创建,所以可能需要分步骤解决,先处理权限问题,再处理SSH相关配置。 还需要考虑系统策略或防病毒软件阻止服务创建的情况,建议暂时禁用防病毒软件测试,或者检查组策略设置。 最后,根据用户提供的引用资料,尤其是引用[2]中提到ssh-agent未启动的情况,可能需要确保相关服务正在运行,比如OpenSSH Authentication Agent服务是否启动,并且在服务创建时不影响其他服务配置。 总结下来,解决步骤应分权限检查、服务参数验证、系统服务状态确认,以及可能的SSH配置调整几个方面。需要逐步引导用户排查每个可能性,确保每一步都正确执行。</think>在PowerShell中创建服务时遇到`PermissionDenied`错误通常涉及权限或配置问题,以下是分步解决方案: --- ### **1. 管理员权限检查** Windows服务创建需要**管理员权限**: ```powershell # 以管理员身份启动PowerShell Start-Process powershell -Verb RunAs ``` 如果未使用管理员权限,会直接触发`PermissionDenied`错误[^1]。 --- ### **2. 服务参数验证** 使用`New-Service`命令时需确保: - **服务名称唯一性**:不与现有服务重名 - **二进制路径有效性**:可执行文件路径需正确且具有访问权限 ```powershell New-Service -Name "MyService" -BinaryPathName "C:\Path\to\your\executable.exe" ``` 若路径包含空格,需用引号包裹路径[^4]。 --- ### **3. 系统服务依赖状态** 检查相关服务是否运行: ```powershell Get-Service ssh-agent | Select-Object Status, StartType ``` 若`ssh-agent`未启动,需手动启动: ```powershell Start-Service ssh-agent Set-Service ssh-agent -StartupType Automatic ``` --- ### **4. 安全软件/策略限制** - 临时禁用防病毒软件 - 检查组策略是否限制服务创建(`gpedit.msc` -> 计算机配置/Windows设置/安全设置/系统服务) --- ### **5. 事件日志排查** 通过事件查看器获取详细错误信息: ```powershell Get-EventLog -LogName System -EntryType Error -Newest 10 ``` --- ### **SSH-Agent关联问题补充** 若同时涉及SSH密钥权限问题: ```powershell # 确保ssh-agent已运行 eval $(ssh-agent -s) ssh-add ~/.ssh/id_rsa # 添加私钥 ``` 密钥文件权限需设置为`600`(仅当前用户可读写)[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值