Windows Server 2012自动挂载存储池

作者:tKC 发布时间:October 20, 2016 分类:IT技术,微软 No Comments

自从微软出了存储池功能就在Windows Server 2012系统开始启用了这个新特性,同时Win8和Win10上也对存储池功能进行了开放,只不过桌面版不支持去重。
另一个差别就是对于存储池的处理方式不同,桌面版系统会自动挂载存储池,而默认情况下服务器版系统的存储池则只有在本机原生配置的时候会自动挂载,如果是从其他机器挪过去的存储池则不会自动挂载,比如硬件故障,将硬盘都更换到另一台服务器上,则需要配置让Windows Server 2012自动挂载该存储池。
方法也很简单,通过PowerShell命令即可打开,输入以下命令查询未自动挂载的存储池

 Get-VirtualDisk | Where-Object {$_.IsManualAttach –eq $True}

会得到如下类似结果

PS C:\Windows\system32> Get-VirtualDisk | Where-Object {$_.IsManualAttach –eq $True
FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
----------   -----------------     ---------------   ----------   ------------   ----
vd1          Mirror                Detached          Unknown      True           5.1 TB

输入以下命令将全部存储池设置为自动挂载

Get-VirtualDisk | Where-Object {$_.IsManualAttach –eq $True} | Set-VirtualDisk –IsManualAttach $False

再次重新查询确认命令是否生效即可。

欺骗Windows让不能上网的机器也不显示网卡黄叹号

作者:tKC 发布时间:June 24, 2016 分类:IT技术,微软 No Comments

由于公司绝大部分计算机都不能连接互联网,经常有员工会问说自己网络有问题,网卡显示黄叹号,而实际上只有局域网情况下,确实就是显示黄叹号。
这是由于微软的一个网络状态指示器在工作导致的,而工作的原理如下:
首先一个DNS请求,www.msftncsi.com,然后请求此主机的/ncsi.txt文件。
内容是“Microsoft NCSI”
然后还会请求到dns.msftncsi.com的DNS名称解析。
当然针对这两个域名对应的IP地址还会做一些检测工作(恕我懒得抓包分析,谢谢)
如果都操作成功,那么恭喜你,网卡图标就没有黄色小叹号了。

如果不想看到黄色叹号,有两个解决办法
1、组策略(如果有域环境就更好了,一劳永逸)
依次展开“计算机配置”、“管理模板”、“系统”和“Internet 通信管理”,然后单击“Internet 通信设置”。在详细信息窗格中,双击“关闭 Windows 网络连接状态指示器活动测试”,然后单击“已启用”。
2、仅允许网络状态指示器检测的两个域名的网络地址访问
如果你没有域环境,且不想一台一台的设置,那么到防火墙或者行为管理服务器上允许这两个域名指向的IP访问即可,当然由于www.msftncsi.com是个地址池,我挑了里面ping值最低的一个IP(173.222.148.11),再顺便DNS劫持了一下,让内网请求www.msftncsi.com和dns.msftncsi.com都指向173.222.148.11这个IP地址就可以了。

注:实在太懒了,如果谁有时间有精力可以研究一下www.msftncsi.com上提供的服务,然后在内网做一个和它一样的机器就完美了。

PHP下使用ldap域账户认证密码

作者:tKC 发布时间:March 14, 2016 分类:IT技术,应用开发 No Comments

以前用过一个模块来调用认证域帐号的,后来发现引用代码太多,因为只是为了做帐号密码认证,不做其他任何查询什么的,所以干脆拔代码自己精简下,下面的代码只是利用了输入正确的帐号密码创建ldap连接来判断密码是否正确。

<?php
    if (isset($_POST['UserName']))
        {
        $_SESSION['txtNo']=$_POST['UserName'] ;
        $ldapConnect=ldap_connect('192.168.1.200' , '389' );  
        //建立到ldap服务器的连接192.168.1.200是ldap服务器ip,389是ldap服务器端口(默认389)  
            $bind= @ldap_bind($ldapConnect , $_POST['UserName'] . '@yourname.local',$_POST['PassWord'] );  
         //验证帐号密码,ldap_bind第一个为绑定的连接,第二个为用户名(注意是否有后缀),第三个为密码。  
            if($bind )  
            {//验证成功,跳转到ok.php
                $_SESSION['login']="ok";
        echo '<meta http-equiv="refresh" content="0;url=ok.php">';
            }  
            else  
            {//验证失败,弹出提示,并跳转回login.php
                echo "<script>alert('用户名或密码错误')</script>";
                echo '<meta http-equiv="refresh" content="0;url=login.php">';
         }  
            ldap_close($ldapConnect);   
        //关闭ldap连接  
        }
    else {
        echo "<script>alert('用户名或密码错误')</script>";
        echo '<meta http-equiv="refresh" content="0;url=login.php">';
    }
?>

Windows上配置PHP的LDAP扩展

作者:tKC 发布时间:March 14, 2016 分类:IT技术,服务软件 1 Comment

写个程序,需要用到ldap的功能,发现报错,虽然php.ini打开了ldap的模块,但phpinfo中没有发现ldap扩展
搜索一番,发现,win下面还需要apache强制加载两个依赖库libeay32.dll和ssleay32.dll,
修改apache的配置文件,强制加载着两个扩展:

LoadFile "C:/PHP/ext/ssleay32.dll"
LoadFile "C:/PHP/ext/libeay32.dll"

重启即可。

Solaris10上开启VNC服务

作者:tKC 发布时间:April 9, 2015 分类:服务软件 No Comments

默认情况下,Solaris10已经把VNC安装好了
只需要简单开启服务并配置就可以使用
检查VNC服务状态
root# svcs -a | grep -i vnc
online 18:02:34 svc:/application/x11/xvnc-inetd:default

现在我们要开启这个服务
root# svcadm enable svc:/application/x11/xvnc-inetd:default
接着配置服务选项
root# echo "vnc-server\t5900/tcp\t\t\t# Xvnc" >>/etc/services
接着编辑/etc/X11/gdm/custom.conf文件
root# vi /etc/X11/gdm/custom.conf
如果没有则会创建该空文件,添加以下内容
[xdmcp]
Enable=true
[security]
DisallowTCP=false
AllowRoot=true
AllowRemoteRoot=true

然后禁用启用服务,接着检查服务状态
root# svcadm disable svc:/application/x11/xvnc-inetd:default
root# svcadm enable svc:/application/x11/xvnc-inetd:default
root# svcs svc:/application/x11/xvnc-inetd:default
online 18:15:00 svc:/application/x11/xvnc-inetd:default

如果是online则说明配置正确,最后可以使用你习惯的vnc客户端直接连接这个Solaris服务器了