runas使用中的常见错误及对策(转)

本文介绍了Windows 2000中的runas命令,该命令允许用户使用其他权限运行程序,而无需注销当前登录。文章详细解释了runas命令的用法,并列举了常见的使用错误及解决方法。
runas使用中的常见错误及对策(转)[@more@]

  一.runas介绍

  使用一个权限受限制的帐户执行日常、非管理性的任务,使用一个权限更大的账户执行特定的管理任务,对于管理员来说,这可以最大限度的提高操作的安全性,是一个非常好的习惯.在windows2000,runas命令就可以完成这个任务,它允许用户用其他权限运行指定的工具和程序,而不是用户当前登录提供的权限,且不需要经过注销当前用户并重新登录的繁复过程。

  RUNAS用法如下:

  RUNAS [/profile] [/env] [/netonly] /user: program

  /profile 如果需要加载用户的配置文件

  /env 要使用当前环境,而不是用户的环境。

  /netonly 只在指定的凭据限于远程访问的情况下才使用

  /user 应使用 USER@DOMAIN 或 DOMAINUSER 形式

  program EXE. 的命令行。参阅下面的例子

  例如:

  > runas /profile /user:mymachineadministrator cmd

  > runas /profile /env /user:mydomainadmin "mmc %windir%system32dsa.msc"

  > runas /env /user:user@domain.microsoft.com "notepad "my file.txt""

  注意: 只有在被提示时才输入用户的密码。

  注意: USER@DOMAIN 与 /netonly 不兼容。

  二.常见错误及对策

  1.在域控制器(DC)上不能工作.

  当我们在域控制器上通过使用文件的右键快捷菜单中"运行为..."命令,以其他身份用户运行应用程序时,可能会遇到下述错误:

  无法登录:

  登录失败:未知的用户名或错误密码.

  实际上我们的用户名和密码都是非常正确的,这个错误不会在独立服务器或域内的成员服务器上出现.导致这个错误的原因是微软的一个小小失误:当我们使用快捷菜单的"运行为..."命令调出"以其他用户身份运行"对话框时,"域"文本框内出现的是本地计算机的名字而不是本地计算机所属于的域的名字.解决办法只要输入正确的域名就可以了.

  2.SP1补丁导致runas工作不正常.

  当windows2000 Professional/server/advanced server打上sp1补丁后,会导致runas工作不正常(衣服越补越破...:)),具体表现为:

  (1)当我们使用一个UPN用户名如admin@mydom.com启动某个应用程序时,如:

  runas /user:admin@mydom.com "mmc C:WINNTsystem32compmgmt.msc"

  用户验证通过应用程序初始化时会发生如下错误:

  Microsoft Visual C++ Runtime Library

  Runtime Error!

  Program:C:WINNTsystem32mmc.exe

  abnormal program termination

  (2)当我们使用普通用户名,如admin时,同样运行上述程序:

  runas /user:admin "mmc C:WINNTsystem32compmgmt.msc"

  会出现下述错误:

  试图启动 "mmc C:WINNTsystem32compmgmt.msc" 作为用户 "admin"...

  RUNAS 错误: 无法运行 - mmc C:WINNTsystem32compmgmt.msc

  1326: 登录失败: 未知的用户名或错误密码。

  出现上述问题的根源在于runas命令使用TranslateName函数将UPN和普通用户名转换为domainuser格式,当转换不能完成时问题就发生了.

  解决的办法临时可以使用domainuser格式的用户名,如"mydomadmin",要彻底解决这个问题还需要等待微软的补丁(补丁还须补丁补啊...:)).

  3.使用runas运行的"共享文件夹"MMC管理单元不能在远程计算机上创建共享.

  表现为当使用runas以其他用户的身份运行"共享文件夹"MMC管理单元后,则不能在远程计算机创建一个共享文件夹.原因是系统不能识别你输入的服务器名是远程计算机的还是本地计算机的.

  解决的办法是等微软的补丁.:)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-945259/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752043/viewspace-945259/

### Python 运行时错误解决方案 #### ImportError: DLL 加载失败 当遇到 `ImportError: DLL load failed` 错误时,这通常意味着 TensorFlow 的某些依赖项未能成功加载。此问题可能由多种原因引起,包括但限于缺少必要的 Visual C++ 可再发行组件兼容的操作系统版本。 对于此类问题的一个常见解决办法是在命令提示符下执行以下操作来重新安装 TensorFlow: ```bash pip uninstall tensorflow pip install --upgrade pip pip install tensorflow ``` 如果上述方法无法解决问题,则建议尝试安装特定版本的 TensorFlow 者确保已正确安装 Microsoft Visual C++ Redistributable[^1]。 #### 数据类型差异引发的运行时错误 PyTorch 和 NumPy 默认的数据类型同也可能导致运行时错误。例如,在混合使用这两个库时,默认情况下 PyTorch 使用的是 `float32` 而 NumPy 则可能是其他精度更高的浮点数表示形式。这种数据类型的匹配可能会造成意外的行为甚至抛出异常。 为了避免这种情况的发生,可以显式指定所需的数据类型以保持一致性: ```python import numpy as np import torch # 创建一个NumPy数组并换成torch张量时指明dtype numpy_array = np.array([1., 2., 3.], dtype=np.float32) tensor_from_numpy = torch.from_numpy(numpy_array) print(tensor_from_numpy.dtype) # 输出应为 torch.float32 ``` 此外,还可以通过设置全局默认值的方式来简化跨库协作中的数据处理流程[^2]。 #### 关于装饰器引起的初始化未调用错误 当定义带有装饰器的类并且该类继承自另一个基类时,如果没有适当地调用父类构造函数 (`__init__`) 就可能导致类似于 `super-class __init__() of %S was never called` 的错误消息。这是因为子类覆盖了原本应该负责完成对象创建过程的方法却没有继续传递参数给上层实现。 要修正这个问题,可以在子类中加入对超类构造器的调用语句如下所示: ```python class ChildClass(ParentClass): @some_decorator def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # 子类特有的初始化逻辑... ``` 这样做能够保证即使存在复杂的修饰链也能维持正常的实例化行为[^3]。 #### CUDA 相关的运行时错误 CUDA 库内部发生的错误会表现为形如 `RuntimeError: cuda runtime error (11): invalid argument` 者更具体的设备端内核映像缺失等问题。这些问题往往涉及到硬件驱动程序的状态以及所使用的 GPU 计算能力等级等因素。 针对这些情况的有效对策之一就是确认当前环境下的 NVIDIA 驱动已经更新至最新稳定版,并且所选框架版本与之相适应;另外也可以考虑调整代码配置选项比如降低模型复杂度是减少批处理大小等措施来规避潜在的风险点[^4][^5]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值