系统管理员常用的Powershell命令

上周豆子参加了微软Teched 2014 Sydney的2天会议。这个会议包括了50多个讲座,包括了开发,架构,移动3个大的方向。其中一个300级别的讲座介绍了一些系统管理常用的命令。这些命令,豆子绝大部分都很熟悉,这里再温故知新一下。作为一个系统管理员,一般都对长篇大论的脚本,各种参数,循环,判断语句,输入输出等等是敬而远之的~但是短小精悍的命令行语句还是可以试试的。

开始之前,先说两个最最基本的命令。Get-Command 和 help。

Get-command 可以搜索相关命令,help可以搜索具体的例子。

比如我想创建新的虚拟机,但是我不知道有哪些命令,那么搜索一下好了

搜索了一堆命令出来,那么怎么用呢,查看一下帮助文档,如果不想看具体的语法,直接输入-examples看看例子好了。然后就可以直接复制粘贴来使用了。

同时呢,工欲善其事,必先利其器。帮助文档需要更新到最新版本。

更新帮助文档很简单,输入help-update,就会更新了。

知道了这两个最基本的命令,我们再来看看正题,系统管理常见的30多个操作都可以用powershell实现。

网络基本配置和查看:

  1. 系统管理员用来查询IP地址一般都习惯用ipconfig /all, 现在可以用Get-NetIPConfiguration -detailed 来替代了。

2.  查看网卡信息

Get-NetAdapter

Get-NetAdapterStatistics

Get-NetIPAddress

3. 配置IP地址 New-NetIPAddress

这个命令一般是Windows 2012 core server下初始化配置的时候可以使用,当然也可以用sconfig或者传统的netsh interface命令

这个命令看起来比较啰嗦,参数比较多,就像上面说的,如果记不清,那么看看帮助的例子就行了。

4. 配置DNS

Set-DNSClientServerAddress

类似的,这个在server core下面也是常见的命令,当然省事也可以通过sconfig配置,或者 DOS命令 netsh interface实现。

网络查错

传统的排错第一步都是通过PING,Tracert或者Telnet 判断路由和端口是否打开。比如

ping 10.1.1.1

tracert www.baidu.com

telnet 8.8.8.8 53

Powershell下面一个命令都实现了。

5. PING 远程服务器

Test-NetConnection www.google.com

6. Telnet  端口

7. 跟踪路径

Windows服务的操作

这几个操作很简单直接

8. 重启服务

restart-service

9.获取当前的服务

get-service| out-gridview

注意那个out-gridview的输出格式,所有的PS命令都是通用的,可以把结果用表格的性格输出来,这样用户还可以手动的排序或者添加标准(criteria),是不是很简单

10.停止,开始,配置服务

stop-service

start-service

set-service

AD和域的操作,这个可能是windows 2012 系统管理员最应该记住的部分吧


11. 计算机的重命名,如果通过图形界面操作,需要右击电脑,然后属性,然后 高级属性设置,然后计算机名里面从能修改,通过命令行直接就修改了,这个在server core下面也是初始化设置必须的,更改名字,重启,然后加入域

Rename-Computer XXX

12. 重启电脑  restart-computer, 当然传统的 shutdown /r /f /t 我也觉得蛮好的

13. 关机 shutdown-computer

14. 加入域  Add-computer -domainname test.com

15. 修复AD的信任关系。这个命令对豆子来说都是很新的命令。传统的如果某台计算机无法验证AD,最简单的解决方法是退出域,重启,然后重新加入域,重启。现在可以在计算机上直接执行以下命令进行修复。

如果直接执行,他会进行判断,True表示OK; False表示无法连接AD,那么需要提供管理员密码进行修复

例如

test-computersecurechannel -credential domain\admin -repair

16. 配置防火墙profile

set-netfirewallprofile

比如最简单的例子,打开domain,public和private的防火墙

17,配置防火墙策略,很长很长的命令,记不着的话就看看帮助 help -examples

New-netfirewallrule,可以设置出去和进来的请求服务

比如第一个禁止所有出去的80端口,换句话说,上不了网了

第二个禁止所有来自Wins 服务器的请求

18. 添加Roles和Features

Install-windowsfeature

比如说,windows 2012下面默认安装.Net 3.5是安装不了的,必须指定对应的路径, 当然也可以通过GPO指定默认安装路径,然后把对应的文件事先放在那里也是不错的解决方案。

Install-windowFeature net-framework-core -source d:\sources\sxs

19.重置AD 用户的密码

这几个命令很方便,保存下来,就不用进AD Users and Groups里面去修改密码了。

首先可以利用Converto-securestring 设置一个加密的密码

然后通过set-ADAccountPassword 重置 密码。 最后那个passthru的目的是显示账号信息

还可以更进一步,要求用户下次登录的时候必须修改密码

关于AD的操作,肯定绕不过FSMO的配置。几乎所有的Windows系统管理面试都会涉及这个问题。传统的配置可以通过GUI,也可以通过ntsutil命令来配置。Powershell提供了更简单的方式。

豆子曾经写过一篇博客具体比较这几种方式 http://beanxyz.blog.51cto.com/5570417/1313693

这里就不赘述了

20. 定位 FSMO

基本格式如下

Get-ADForest test.com | FT SchemaMaster

Get-ADForest test.com | FT RidMaster

21. 迁移FSMO

Move-ADDirectoryserverOperationMasterRole

配置服务器,还需要打开远程桌面。

22. 打开 RDP桌面,这个其实有好几个地方可以配置。 最直观的是通过sconfig,也可以修改注册表,或者打开防火墙策略(3389端口)

set-itemProperty -path ‘hklm:\system\currentcontrolset\control\terminal server‘ =name "fdenytsconnections" -value 0

enable-netfirewallrule -displaygroup "remote desktop"

23. 查看hotfix

一般企业里面都是通过WSUS来推送Hotfix,不过有的时候计算机并不是100%可以成功获取的。可以通过 get-hotfix 来进行判断

24. 查看密码永不过期的账号

管理员常常把自个的账号设置为不过期,尽管我们要求用户每隔60天就必须reset一次。很多服务的运行账号也是这样。怎么搜索这些账号呢? ADUC是可以直接搜索的,Powershell也可以。

25. 类似上面的方法,我们可以搜索最近没有登录的账号,disable的账号,过期的账号,即将过期账号等等

比如,这个会搜未来6天内会过期的账号

Hyper-V虚拟机

Hyper-V 是2012最重要的新功能,毕竟微软的虚拟化平台和私有云都是以这个为基础的。TechED里面专门有一个讲座来讨论如何更好的在Hper-V下面使用Powershell。

豆子使用的windows 8.1 Powershell下面有167个命令。 meaure 可以返回一共多少行记录

这么多指令就不一一阐述了,大概看看几个最基本的命令

创建虚拟机

26. New-VM

打开Hyper-V Manager, 可以看见已经创建了虚拟机

27. 配置虚拟网络

创建虚拟机之后,还需要分配网络。首先看看目前有哪些虚拟机

Get-VM

在这个基础上还可以继续获取虚拟网卡的信息  Get-VMNetworkAdapter

可以看见新创建的虚拟机目前没有分配网络

在这个基础上使用 Connect-VMNetworkAdapter 就可以绑定交换机网络了

再验证一下,已经分配好了

28. 创建还原点

get-VM | checkpoint-VM 就可以对指定的VM创建还原点了

时间: 2024-11-05 13:12:51

系统管理员常用的Powershell命令的相关文章

Hyper V server 2012 r2 常用的powershell命令

Hyper V server 2012 r2 常用的powershell命令 ? 获取网卡信息 Get-netadapterGet-netipinterface ? 设置DNS地址Set-DnsClientServerAddress -InterfaceAlias NIC NAME -ServerAddresses "1.1.1.1","2.2.2.2"注释:NIC Name: 网卡名称, 1.1.1.1,2.2.2.2 ? 网卡聚合NIC Teaming: New

常用的Powershell命令

打开Powershell (run as administrator) get-command: 搜索相关命令   eg:get-command "*VM" 搜索包含 VM的命令 update -help :将帮助文档更新到最新版本      (同:help -update) help  new-VM: 获取new-VM 帮助文档     help new-VM -examples  查看示例 ipconfig /all  查看IP地址   Get-NetIPconfiguration

系统管理员常用的Linux命令

整理Linux的一些基本系统管理命令作为备忘 ========================================================================= 查看文件或编辑文件: ========================================================================= 查看当前目录下文件.文件夹及读写执行权限 $ ll 输出说明:(以mnt/这条记录为例) 第一列(drwxrwxr-x)标识文件类型和文

Setspn.exe对应的PowerShell命令

自从公司的域控升级到2008 R2以后,平时AD的工作就基本以PowerShell为主.这样可以迫使自己尽早掌握相关的cmdlets,自我感觉常见的工作都可以由PowerShell完成. Setspn命令这几年一直没用,就没考虑对应的PowerShell命令.前一段时间刚好一个客户安装了一个SAP应用,需要设置一个机器帐户的SPN,没多想,用setspn -A就干完了.后来一直在想,PowerShell应该有相应的命令,简单地搜了一下:Get-Command *-ad*spn*也没有结果. 后来

25. PowerShell -- 命令发现和脚本块

PowerShell之发现命令 从用户的角度来看,在Powershell控制台上输入一条命令,然后直接回车执行,是一件简单的事情,事实上Powershell在后台做了很多事情,其中第一步,就是查看用户输入的命令是否可用,这个步骤也被称作自动化发现命令.使用Get-Command 命令可以查看当前作用域支持的所有命令.如果你想查看关于 LS 命令的信息,请把它传递给Get-Command. PS C:> Get-command LS CommandType Name Definition ----

10个常用的ps命令总结,参数

Linux系统中10个常用的ps命令总结 PS 命令是什么 查看它的man手册可以看到,ps命令能够给出当前系统中进程的快照.它能捕获系统在某一事件的进程状态.如果你想不断更新查看的这个状态,可以使用top命令. ps命令支持三种使用的语法格式 UNIX 风格,选项可以组合在一起,并且选项前必须有"-"连字符    BSD 风格,选项可以组合在一起,但是选项前不能有"-"连字符    GNU 风格的长选项,选项前有两个"-"连字符 我们能够混用这

Windows PowerShell命令重置win10管理员密码方法教程

重置win10系统管理员的方法有不少,这里给大家介绍的一种用Windows PowerShell命令重置win10管理员密码方法教程,感兴趣的用户,可以学习一下. 操作过程: 1.点击左下角的开始菜单,在打开的菜单项中找到并打开Windows PowerShell(管理员),或直接点击左下角搜索也可以,在打开的Windows PowerShell窗口中,输入:net user 命令,回车执行命令即可: 这时候你可以看到电脑账所有账户的信息,并且包括管理员帐户. 2.执行完上面的命令后,继续输入:

【Windows10 IoT开发系列】Powershell命令行实用程序

原文:[Windows10 IoT开发系列]Powershell命令行实用程序 更新帐户密码: 强烈建议你更新默认的管理员帐户密码.若要更新帐户密码,你可以发出以下命令: net user Administrator [new password]​ (其中 [new password] 表示你选择的强密码). 创建本地用户帐户: 如果你想要授予其他人访问你的 Windows IoT Core 设备的权限,你可以通过在 net user [username] [password] /add​ 中键

ElasticSearch之常用插件安装命令

#head监控安装,推荐 bin/plugin -install mobz/elasticsearch-head #bigdesk集群状态,推荐 bin/plugin -install lukas-vlcek/bigdesk #marvel监控安装 bin/plugin -i elasticsearch/marvel/latest #es-sql安装,网页内有详细说明 https://github.com/NLPchina/elasticsearch-sql #jdbc-river安装(rive