zoukankan      html  css  js  c++  java
  • Windows PowerShell:管理服务器

    一、概述

      Cmdlets 用于服务器的管理方面主要体现在4个方面:服务、日志、进程、服务器管理器。

    1、服务

    •  Get-Service。查看某个服务的属性。

    •  New-Service。创建一个新的服务。

    •  Restart-Service。重启一个已有的服务。

    •  Resume-Service。使一个暂停的服务继续运行。

    •  Set-Service。配置某个服务的属性。

    •  Start-Service。启动一个已停止的服务。

    •  Stop-Service。停止一个正在运行的服务。

    •  Suspend-Service。挂起一个服务。

    2、日志

    •  Get-EventLog。显示某个事件日志里的事件。

    •  Clear-EventLog。删除某个事件日志里的所有记录。

    •  Limit-EventLog。设置事件日志的区间和文件大小限制。

    •  New-EventLog。在运行Windows Server的计算机上创建一个新的事件日志和事件源。

    •  Remove-EventLog。删除一个自定义的事件日志,并将此事件日志的所有的事件源删除注册。

    •  Show-EventLog。显示某台计算机的事件日志。

    •  Write-EventLog。允许你写事件到某个事件日志。

    3、进程

    •  Get-Process。获得某个进程的信息。

    •  Start-Process。启动某个进程。

    •  Stop-Process。停止某个进程。

    •  Wait-Process。在接受输入之前等待某个进程停止。

    •  Debug-Process。附加一个debugger 到某个或某些正在运行的进程上。

    4、服务器管理器

    •  Get-WindowsFeature

    •  Install-WindowsFeature

    •  Remove-WindowsFeatre 

      更多操作,参考官网 http://technet.microsoft.com/zh-cn/library/dd315367.aspx

    二、示例1:为服务器“添加功能”

    1、加载ServerManager模块

      Windows Server 2008 R2 的 ServerManager 模块位于PowerShell安装路径下的Modules文件夹。

    Windows PowerShell
    版权所有 (C) 2009 Microsoft Corporation。保留所有权利。

    PS C:UsersAdministrator> Import-Module ServerManager
    PS C:UsersAdministrator>
     

      注:仅对此进程有效。下次进入PowerShell 时,需要重新加载。 

    2、浏览现有的角色、角色服务和功能

    PS C:UsersAdministrator> Get-WindowsFeature

    Display Name                                            Name
    ------------                                            ----
    [ ] Active Directory Rights Management Services         ADRMS
        [ ] Active Directory 权限管理服务器                 ADRMS-Server
        [ ] 联合身份验证支持                                ADRMS-Identity
    [ ] Active Directory 联合身份验证服务                   AD-Federation-Services
        [ ] 联合身份验证服务                                ADFS-Federation
        [ ] 联合身份验证服务代理                            ADFS-Proxy
        [ ] AD FS Web 代理                                  ADFS-Web-Agents
            [ ] 声明感知代理                                ADFS-Claims
            [ ] 基于 Windows 令牌的代理                     ADFS-Windows-Token

    。。。

    3、添加功能

      本例中,添加“Windows Server Backup 功能”。如果在图形界面中,很容易操作。

      在PowerShell中,运行以下命令:

    PS C:UsersAdministrator> Add-WindowsFeature Backup

    Success Restart Needed Exit Code Feature Result
    ------- -------------- --------- --------------
    True    No             Success   {Windows Server Backup}

    4、确认 Windows Server Backup 功能已经安装

    PS C:UsersAdministrator> Get-WindowsFeature Backup
    Display Name                                            Name
    ------------                                            ----
        [X] Windows Server Backup                           Backup 

    5、删除 Windows Server Backup 功能

    PS C:UsersAdministrator> Remove-WindowsFeature Backup

    Success Restart Needed Exit Code Feature Result
    ------- -------------- --------- --------------
    True    No             Success   {Windows Server Backup}

    三、示例2:管理IIS

    1、检查可用的模块

      在 Windows Server 2008 R2 通过“服务器管理器”中“添加角色”安装了 IIS7.5 之后。运行以下命令,检查WebAdministration模块是否已经安装。

    PS C:UsersAdministrator> Get-Module -ListAvailable

    ModuleType Name                      ExportedCommands
    ---------- ----                      ----------------
    Manifest   ADRMS                     {}
    Manifest   AppLocker                 {}
    Manifest   BestPractices             {}
    Manifest   BitsTransfer              {}
    Manifest   PSDiagnostics             {}
    Manifest   ServerManager             {}
    Manifest   TroubleshootingPack       {}
    Manifest   WebAdministration         {}

      注:Windows Server 2008 安装了 IIS7.0 之后,需要下载安装 PowerShell Snap-In For IIS7.0  。http://www.iis.net/downloads/microsoft/powershell 

    2、加载Web管理模块

    PS C:UsersAdministrator> Import-Module WebAdministration 

    3、查看可用的命令

    PS C:UsersAdministrator> Get-Command -pssnapin WebAdministration

    CommandType  Name                            Definition
    -----------  ----                            ----------
    Cmdlet       Add-WebConfiguration            Add-WebConfiguration [-Filter] <String[]> [[-PSP...
    Cmdlet       Add-WebConfigurationLock        Add-WebConfigurationLock [-Filter] <String[]> [[...
    Cmdlet       Add-WebConfigurationProperty    Add-WebConfigurationProperty [-Filter] <String[]...
    Cmdlet       Backup-WebConfiguration         Backup-WebConfiguration [-Name] <String> [-Verbo...
    Alias        Begin-WebCommitDelay            Start-WebCommitDelay
    Cmdlet       Clear-WebConfiguration          Clear-WebConfiguration [-Filter] <String[]> [[-P...
    Cmdlet       Clear-WebRequestTracingSettings Clear-WebRequestTracingSettings [[-Name] <String...
    Cmdlet       ConvertTo-WebApplication        ConvertTo-WebApplication [[-PSPath] <String[]>] ... 

    。。。

    4、操作 IIS

      加载了WebAdministration 模块之后,PowerShell 环境建立了一个“IIS:”命名空间。进入这个命名空间,并查看IIS的信息。可以用New-Item 创建文件夹、网站、应用池、虚拟目录,或者用 Remove-Item 进行删除。

    PS C:UsersAdministrator> IIS:
    PS IIS:> 
    dir

    Name
    ----
    AppPools
    Sites
    SslBindings

    四、故障排除

    1、“在此系统中禁止执行脚本”

    PS C:UsersAdministrator> Get-Module -ListAvailable | Import-Module
    Import-Module : 无法加载文件 C:Windowssystem32WindowsPowerShellv1.0ModulesPSDiagnosticsPSDiagnostics.psm1,因为在此系统中禁止执行脚本。有关详细信息,请参阅 "get-help about_signing"。
    所在位置 行:1 字符: 42
    + Get-Module -ListAvailable | Import-Module <<<<
        + CategoryInfo          : NotSpecified: (:) [Import-Module], PSSecurityException
        + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.ImportModuleCommand

     

    【原因】权限不足

    【对策】当前的权限一共有4种:受限的(Restricted)、仅本地运行(RemoteSigned)、不受限的(Unrestricted)、所有(AllSigned)。建议改为RemoteSigned 。

    PS C:UsersAdministrator> Get-ExecutionPolicy
    Restricted
    PS C:UsersAdministrator> Set-ExecutionPolicy RemoteSigned
    执行策略更改
    执行策略可以防止您执行不信任的脚本。更改执行策略可能会使您面临 about_Execution_Policies
    帮助主题中所述的安全风险。是否要更改执行策略?
    [Y] 是(Y)  [N] 否(N)  [S] 挂起(S)  [?] 帮助 (默认值为“Y”): y
    PS C:UsersAdministrator> Import-Module WebAdministration

      如果在ps1脚本中不允许交互,则需要强制修改权限。例如

    PS C:UsersAdministrator> Set-ExecutionPolicy Remotesigned -Force

    四、ServerManageCmd

    1、概述

    PS C:UsersAdministrator> servermanagercmd

    Servermanagercmd.exe 已被弃用,不保证在将来版本的 Windows 中支持它。建议使用可用于服务器管理器的 Windows PowerShell cmdlet。

    用法:

    ServerManagerCmd.exe
    安装和删除角色、角色服务和功能。也显示所有可用的角色、角色服务和功能列表,并显示在此计算机上安装了其中哪些内容。有关可以使用此工具指定的角色、角色服务和功能的详细信息,请参阅服务器管理器的“帮助”。

          -query [<query.xml>] [-logPath <log.txt>]

          -install <名称>
              [-resultPath <result.xml> [-restart] | -whatIf] [-logPath <log.txt>]
              [-allSubFeatures]

          -remove <名称>
              [-resultPath <result.xml> [-restart] | -whatIf] [-logPath <log.txt>]

    。。。

      实际上,ServerManageCmd 是一个命令提示符下面即可运行的命令。在 Windows Server 2008 操作系统有很多的“粉丝”。而在 Windows Server 2008 R2 操作系统,官方推荐为:弃用 ServerManageCmd ,改用 PowerShell cmdlet 。

    2、示例

      以安装SNMP服务为例。

    C:UsersAdministrator>ServerManagerCmd.exe -install SNMP-service
    ........

    开始安装...
    [Installation] 成功: [SNMP 服务] SNMP 服务。
    <100/100>

    成功: 安装成功。

      效果等同于图形界面中“添加功能”。

  • 相关阅读:
    null in ABAP and nullpointer in Java
    SAP ABAP SM50事务码和Hybris Commerce的线程管理器
    Hybris service layer和SAP CRM WebClient UI架构的横向比较
    SAP ABAP和Linux系统里如何检查网络传输的数据量
    SAP CRM WebClient UI和Hybris的controller是如何被调用的
    SAP CRM和Cloud for Customer订单中的业务伙伴的自动决定机制
    SAP CRM WebClient UI和Hybris CommerceUI tag的渲染逻辑
    SAP BSP和JSP页面里UI元素的ID生成逻辑
    微信jsapi支付
    微信jsapi退款操作
  • 原文地址:https://www.cnblogs.com/edward2013/p/3534443.html
Copyright © 2011-2022 走看看