活动目录父子域用户迁移之:TFS&SharePoint问题汇总(一)

    前段时间做了个项目,是关于父子域合并的,其实无非就是使用ADMT把域用户,计算机等从子域迁移到父域上,看似迁移用户很简单。But……生产环境啊,Exchange,TFS,Sharepoint,还有其余乱七八糟的东西,都使用了域账号,牵一发动全身的节奏,迁移账号出点儿问题相关用户就可以坐在那打酱油了,迁移前在他们生产环境中新建测试账号迁移,但是这种测试账号相对理想的环境,测试过程中很多问题不容易发现,很多问题是迁移了客户生产用户账号时出现了问题,但是于对于TFS一窍不通,sharepoint大多不懂的我来说,对迁移遇到的问题排错,那叫一个惨绝人寰啊!下面慢慢的把迁移账号及计算机后会遇到的问题及问题解决方法做个简单汇总吧。

    先说说客户环境,由于不便透露客户名称,域控就以ABC来代替吧。客户生产环境为一个父域两个子域,这里父域为A,两个子域B和C(都是N年前的历史问题搞了三个域控出来,现在又要合并只保留A)。TFS在三个域控中都有存在。

    对于TFS来说,这东西貌似主要就做代码管理的,客户生产环境中,TFS从2008到2010还有2013,各种版本层出不穷的,这里把TFS和SharePoint一起说,是因为SharePoint是TFS部署的先决条件,TFS2008和2010安装前可以安装Windows SharePoint Services 3.0作为先决条件,但是TFS2013的就只有安装SharePoint2013了(SharePoint2010没注意支持不),所以迁移后,以前版本还稍微好些,因为管理用户权限什么的在VS里面可以直接管理了,但是TFS2013只有在SharePoint里面管理,稍微权限出点儿问题,很多界面都会提示未共享!之所以出现很多问题,是由于TFS和Sharepoint都是有自己的权限管理,很多时候迁移用户后,虽然用户的SID是一起迁移了,但是TFS和Sharepoint中的权限不一定能自动过去,有时候权限过去了,用户自己哪里的VS的使用过程中,也不一定是正常的。接下来就挨着罗列下我遇到的问题吧。


一. 迁移用户后,以前已经签出的代码不能正常迁入

    问题描述:

    很多时候,用户会对TFS中的代码签出进行编辑,然后再迁入到服务器中。但是很多时候用户签出后,过个一两天都不签入,当这个时候我们在迁移用户后,用户再对这个文件进行签入的时候,会报被提示被之前迁移前的用户锁定。由于用户user@B 已经迁移到A域中成了user@Auser@B 已经不存在了,所以,只有服务器上进行强制解锁了。     

image

    问题处理:

    遇到这个问题,我们就需要使用到了tf undo命令了。打开Visual Studio 命令提示

具体命令:  tf undo /workspace: workspacename;tfsuser $/PB/Prd-test/3.txt /server:http://TFSServer:8080/tfs

    其中workspacename 就写用户的workspace的名字

    tfsuser就是被锁定的用户名

    $/PB/Prd-test/3.txt 是锁定文件路径

    /Server:后面就接服务器

image

    运行完成后,我们可以看到,锁定已经没有了,然后用户又可以任性的继续签入签出了。

image

PS:为了避免不必要的麻烦,如果被迁移的用户有试用TFS的,最好让客户通知下去让用户都把所有签出的代码签入,不然多了操作起来还是很麻烦的。(虽然通知下去了还是有被锁定的)

 

二: TFS库映射丢失

    问题描述:

    用户在正常的使用过程中,每个用户都会有自己的工作区域,并且把服务器上需要的内容映射到本地。

image

    用户在迁移后,有些用户出现了工作区的映射丢失,当用户再去重新映射的时候,又会提示被之前用户占用。

image

    问题处理:

    遇到这样的问题,网上依旧是查了很多资料,全部说是走命令使用tf workfold啊之类的,来看看tf workfold下的命令,创建映射修改映射,看样子方向是对的,当时就按着提示去摸索了。

image

    一天过去了,两天过去了,我也忘了到底弄了多久了。不是这里提示不对就是那里提示有问题,简直这个方向就是个坑啊。NND,不弄了!想想这东西应该在数据库上有记录,找找数据库吧。

    终于在数据库中找到了存放workspace和workfold的对应表格,来打开看看,上千条数据

image

image

    看来只有在这上千条数据里面捞了,这又得温习下SQL语句,查询语句走起

    Select * from xxxxxx where

    一般通过workspacename和computer来找到出现问题的用户,我们会找到多条记录,记录的ownerid和workspaceid会不一样。我们通过对workspace和workfold两个数据库表的联合查找,确定该用户的老的ownerid和新ownerid,修改老的ownerid为新的ownerid就可以了。

    修改成后,用户需要重新连接TFS,就可以在自己的工作区里面看到原有的映射都已经回来了。


PS:出现这个问题的原有是由于在迁移用户后,系统自动为用户在数据库中创建了新的ownerid,致使虽然用户环境没有变,但是TFS仍然认为是2个用户了。同一套TFS环境中,有的用户迁移后正常有的出了问题,至于为啥会自动创建ownerid,这个我就不知道了。

 

三:个人查询丢失

    问题描述:

    还是在迁移用户后,有用户反映自己的个人查询丢失了,团队查询还在,就是下面这个东西

image

    这个问题有的用户就自己重新新建了,毕竟有的人查询不多,就几条,但是也有用户好几十条查询,遂只有解决了

    问题处理:

    有了之前处理映射的经验,走命令什么的感觉都是又慢又坑爹的,而且能不能行的通还是个问题。照例直接搞数据库。

    找到数据库QueryItems,里面包含了团队查询和个人查询。

image

    一样的,通过Select语句找到出现问题的个人查询,直接找到关键的键值,改ID……具体的详细步奏这里就不过多描述了

 


今天就先写到这里了,休息休息,下次继续接着写后续的问题汇总




本文出自 “李飞_Ignore” 博客,请务必保留此出处http://ignore.blog.51cto.com/2247529/1836959

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
上一篇博客讲解了nginx相关的数据结构。 这一篇主要交接如何将自己的模块编译进nginx; 一种常用的简单方法: 1)首先把源代码文件全部放大一个目录下,然后在改目录中编写一个config用于通知Nginx如何编译本模块,这个文件名必须为config。 在configure脚本执行时加入参数--add-module=PATH(上面源码,config的保存目录) 执行正常安装流程是完成Nginx的编译工作。 ps:还有一种复杂方式,就是修改configure脚本执行后生成的obj/Makefile和obj

OpenLDAP 客户端部署 - 2016-08-29 17:08:32

有关服务端的安装请点击 一、账号登录系统流程讲解 当在客户端输入账号登录系统时,系统根据/etc/nsswitch.conf配置文件获取账号查找顺序,然后再根据PAM配置文件调用相关模块,对账号(/etc/passwd)及密码(/etc/shadow)进行查找并进行匹配。当本地匹配不成功时,会通过后端认证服务器(OpenLDAP服务器)进行验证。 二、配置文件功能介绍 下面介绍几个配置文件再后面我们会进行修改,我这里简单介绍一下。 /etc/nsswitch.conf 该文件主要用于名称转换服务,用于系统
1. root下进入其他用户主目录 cd ~USERNAME 2. touch的另外的一种作用 常用的是touch创建一个不存在的文件 而touch一个存在的文件时候,touch会修改文件的三个时间(使用stat可以查看),其中access表示最后一个访问时间,modify表示最后一次修改文件的时间,change表示最后修改文件属性的时间 3. file查看文件类型 镜像文件(iso)的文件类型为iso9660 4./etc/passwd中各字段对应解释 1 用户名:2密码:3uid:4gid:5备注:6
谁说Lync Server 前端不可以使用Windows网络负载平衡实现高可用的?(仅限测试环境) 本章内容有: 1.两台Lync Server安装Windows功能---网络负载平衡 2.配置网络负载平衡 3.DNS记录修改 4.测试故障切换(模拟两种故障,网络故障和服务故障) 5.开始的时候别忘了上一章中的提示,将两台前端Server都进行重启 = = 安装网络负载平衡 两台服务器都需要进行安装 = = 配置网络负载平衡 1)新建群集 2)将LyncFE01先添加到群集中 3)群集IP自己随便填写 4

深入剖析linux磁盘管理 - 2016-08-29 17:08:26

一、linux中常见的磁盘: 无论什么操作系统,归根还是要落实与磁盘上的,对于磁盘的管理也是linux管理必备的一项技能。在linux中“一切皆文件”的思想贯彻整个linux的学习中,包括像是磁盘等的硬件也是在linux的/dev/目录下类似于文件形式的存放,常见的SATA口USB优盘或是SCSI口的硬盘在linux中是以/dev/sd[a-p]开头的文件,早期的IDE硬盘现在已经很少见了,这种硬盘在linux中是以/dev/hd[a-d],CDROM是以/dev/cdrom开头的文件,磁带机/dev/s

linux实战题 - 2016-08-29 17:08:10

在配置Apache时,执行了./configure --prefix=/application/apache2.2.17来编译Apache,在make install完成后,需要用户的访问路径更加简单 ,需要给/application/apache2.2.17目录做一个软链接/application/apache,是得内部人员可以通过/application/apache就可以访问到Apache的安装目录/application/apache2.2.17下的内容 ,请给出实现命令。(安装时有版本号,后面使
一 VNC简介 VNC 是在基于Linux 操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows 和 MAC 中的任何远程控制软件媲美。 在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多数情况下用户只需要其中的两个命令:vncserver 和 vncviewer VNC基本上是由两部分组成:一部分是 客户端的应用程序(vncviewer) ;另外一部分是 服务器端的应用程序(vncserv
目标: 在xuegod63.cn服务器上,使用网站模版UCenter_1.5.0_SC_UTF8.zip和UCenter_Home_2.0_SC_UTF8.zip为公司搭建一个类似人人网的网站。在windows上,使用访问uc.duwers63.cn可以访问UCenter;使用www.duwers63.cn可以访问UCenter_Home。 安装 yum-yinstallhttpdmysql-servermysqlphpphp-mysql 软件包解释: httpd#web网站服务器 mysql-serve
在某些情况下为了实现Windows多台服务器负载均衡,需要使用共享来做图片及附件的上传空间。 这个时候就需要使用到Samba、IIS虚拟目录等相关技术 Web服务器使用upload作为上传的目录,现在需要使用2台服务器做负载均衡,后台使用一台Samba服务器作为文件共享存储 1.建立Samba文件服务器 卸载旧的samba组件,CentOS 6默认安装的是3.6的版本 forain`rpm-qa|grepsamba`;dorpm-e--nodeps$a;done 2.安装Samba 4 yum-yinst
Linux iptables简介 基于包过滤的防火墙工具,功能强大,使用灵活,可以对流入和流出服务器的数据包进行精细的控制 iptable 工作流程 iptables是采用数据包过滤机制工作的,所以它会对请求的数据包的包头数据进行分析,然后根据我们预先设定好的规则进行过滤 1)iptables对数据包的过滤是一层层过滤的,顺序从上到下,从左到右 2)如果在某一层匹配上规则(也就是明确表明对该数据包是拒绝还是通过),不再向下匹配,直接应用 3)如果所有规则中都没有匹配上,匹配默认规则,默认规则允许则允许,拒