前段时间做了个项目,是关于父子域合并的,其实无非就是使用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@A ,user@B 已经不存在了,所以,只有服务器上进行强制解锁了。

    问题处理:

遇到这个问题,我们就需要使用到了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:后面就接服务器

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

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

二: TFS库映射丢失

    问题描述:

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

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

    问题处理:

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

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

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

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

Select * from xxxxxx where

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

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

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

三:个人查询丢失

    问题描述:

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

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

    问题处理:

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

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

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

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

转载于:https://blog.51cto.com/ignore/1836959

活动目录父子域用户迁移之:TFSSharePoint问题汇总(一)相关推荐

  1. 【转】SharePoint 2013中修改windows 活动目录(AD)域用户密码的WebPart(免费下载)

    前段时间工作很忙,好久没更新博客了,趁国庆休假期间,整理了两个之前积累很实用的企业集成组件,并在真正的大型项目中经受住了考验:.Net版SAP RFC适配器组件和SharePoint 2013修改AD ...

  2. SharePoint 2013中修改windows 活动目录(AD)域用户密码的WebPart(免费下载)

    转:http://www.cnblogs.com/nbpowerboy/p/3355943.html 前段时间工作很忙,好久没更新博客了,趁国庆休假期间,整理了两个之前积累很实用的企业集成组件,并在真 ...

  3. 活动目录数据库重定向或迁移

    活动目录数据库重定向或迁移到其他目录 进入安全模式的 目录服务还原模式,以本机管理员账号登录 主要采用以下命令: Ntdsutil Ntdsutil:files ----进入活动目录NTDS数据库模式 ...

  4. linux控制命令使用限制,【L-shell】Linux 系统下 限制用户的活动目录,控制用户使用命令的权限。...

    1.前提: 安装yum 扩展源: 注:本人用的是CentOS 6.5,64位系统,所以下的是这个地址.(如果是其它版本或其他情况,参考下面的地址:) centos5 : 32位epel源下载地址: w ...

  5. 如何将Windows Server域(AD活动目录)中的用户导出并导入至Outlook2010通讯簿

    在企业中如何同步所有的用户至邮件联系人,尤其是在增加了新员工的情况下是一个很常见的问题,解决办法之一就是将域用户中所有用户的Email加入至邮件客户端的通讯簿中.Windows 域用户管理在企业中有着 ...

  6. server 2008 中活动目录的迁移

    还记得我们在描述windows server 2008的备份还原中说的在server 2003下的一个缺陷么?如果我们将ntbackup备份的文件转移,很难还原出来,在server 2008中给予了改 ...

  7. 举例介绍活动目录的优势

    转自:[url]http://blogs.itecn.net/blogs/haohan/default.aspx[/url] Active Directory服务提供了单一登入的能力和一个所有基础设施 ...

  8. Windows 2000活动目录详解之基础篇

    我们知道WIN2K系统最大的突破性和成功之一就在于它全新引入"活动目录(Active Directory)服务",使得WIN2K系统Internet上的各项服务和协议更加联系紧密, ...

  9. 安装微软活动目录的八个重要理由

    安装微软活动目录的八个重要理由 关于微软的活动目录有很多人了解的还不够深.不了解安装微软活动目录的重要性.在这里就为大家深化安装活动目录的重要性. 在此之前我们进行了微软活动目录逻辑结构分析与微软活动 ...

  10. 基于Windows Server 2003的活动目录集成方案

    目录 基于Windows Server 2003的活动目录集成方案 前言 一.企业IT环境的管理需求 二.方案设计 1.用户管理 2.资源管理 3.应用授权管理 三.企业活动目录实施的步骤: 1.服务 ...

最新文章

  1. 手机通讯录分组名称_基于Aandroid的手机操作系统(7)
  2. Redis中持久化的两种方法详解
  3. 【Java面试题】docker启动失败原因
  4. 怎么在js中取java变量的值
  5. 事件溯源|日志记录-一个基础的微服务模式
  6. python做出来的东西_【python小白】 做了一个爬虫,但是爬出来的东西无法存储...
  7. promolike原型开发前后台打通
  8. Android Studio Gradle两种更新方式
  9. 服务化改造实践(三) | Dubbo + Zipkin
  10. java遍历json的key和value_json对象遍历输出key和value
  11. 首批6款5G旗舰手机开卖 最低售价过万!全家桶套餐更酸爽...
  12. 微软开源 Scalar,提升操作巨型 Git 仓库的速度
  13. 基于MOSS2007的全局导航用户控件的实现 [Ver2.0]
  14. linux ubuntu系统安装dotnet / Azcopy
  15. ATTILAX项目进展表VC425
  16. 用c语言在Clion平台编写system(“cls“)清屏函数无效甚至异常解决方法。
  17. php做个电影推荐系统,基于web个性化电影推荐系统
  18. Springboot使用POI读写excel(详细)
  19. cassandra cql解析
  20. 2021软科计算机科学与技术,2021软科排名,NTU 十学科跻身世界前十!

热门文章

  1. shell之脚本片断
  2. Activity初级:startActivityForResult、重写onActivityResult、setResult回传数据、requestCode请求码...
  3. 孙鑫VC++讲座笔记(一)
  4. 网络收包流程-报文从网卡驱动到网络层(或者网桥)的流程(非NAPI、NAPI)(一)
  5. ubuntu怎么将Dash切换位bash
  6. signal、kill、fork
  7. apache-xmlrpc-3.1.3-bin.tar.bz2
  8. Linux内核多线程——补充(各种平台下的多线程)
  9. 调度域(Scheduling Domain)
  10. 51Nod 1637 幸运数字转换(思维)