将obsutil设为系统内置命令
操作场景
作为外部软件,obsutil命令需要进入obsutil工具所在目录后方可运行,易用性较差。
操作系统提供内置命令,在系统启动时就将依赖的目录调入内存,这样在任意目录下都可以运行命令,提高工具易用性。
本章根据不同操作系统,分别介绍如何将obsutil设置为系统内置命令。
将obsutil设为Windows操作系统内置命令
方式一:使用脚本自动配置(推荐)
- 进入obsutil工具所在目录。
- 确保setup.bat和obsutil.exe位于同目录下,双击运行setup.bat文件。
- 检验是否配置成功:在cmd窗口中执行命令obsutil help,出现工具帮助信息则表示配置成功。
如果使用脚本自动配置完成后,执行命令obsutil help出现“'obsutil' 不是内部或外部命令,也不是可运行的程序或批处理文件”,则表明配置失败,请尝试手动配置方式。
方式二:手动配置
- 在cmd窗口中执行echo %PATH%命令查看当前系统已配置的所有PATH,选择任意一个PATH作为操作路径。
- 执行命令:mklink PATH/obsutil.exe OBSUTIL_PATH,将obsutil配置为系统内置命令。
PATH为步骤1选择的操作路径;OBSUTIL_PATH为obsutil.exe工具的绝对路径。
- 检验是否配置成功:在cmd窗口中执行命令obsutil help,出现工具帮助信息则表示配置成功。
将obsutil设为macOS/Linux操作系统内置命令
方式一:使用脚本自动配置(推荐)
- 运行脚本,参数为obsutil的路径。假设obsutil位于/home/user1目录下,执行命令为:
source setup.sh /home/user1/obsutil
- 必须以root用户运行脚本;
- 脚本参数是obsutil的相对路径或绝对路径。
- 必须以“source setup.sh”或“. setup.sh”命令运行脚本。
- 检验是否配置成功:在任意目录下执行命令obsutil help,出现工具帮助信息则表示配置成功。
如果使用脚本自动配置完成后,执行命令obsutil help出现“-bash: obsutil: command not found”,请尝试重新登录macOS/Linux命令行,如果问题仍未解决,则表明配置失败,请尝试手动配置方式。
方式二:手动配置。
- 创建obsutil工具目录,执行命令:
mkdir /obsutil
- 如果已有此目录,可忽略该步骤。
- 必须保证执行用户是root。
- 设置工具目录为755权限,执行命令:
chmod 755 /obsutil
- 如果此目录权限为drwxr-xr-x,可忽略该步骤。
- 必须保证执行用户是root。
- 拷贝obsutil工具到步骤1创建的目录下,并修改其权限为711。假设工具原路径为/home/test/obsutil,执行命令为:
cp /home/test/obsutil /obsutil chmod 711 /obsutil/obsutil
- 执行命令:vi /etc/profile,按i键进入Insert模式编辑文件,在文件末尾新增一行,内容为:export PATH=$PATH:/obsutil,然后按ESC键退出编辑,然后输入:wq!保存退出。
如果/etc/profile文件已有该新增行,可忽略此步骤。
- 执行命令:echo $PATH,查看当前环境变量,如果查询结果中包含:/obsutil则说明已有/obsutil环境变量,请直接执行下一步骤,否则执行source /etc/profile命令。
- 检验是否配置成功:在任意目录下执行命令obsutil help,出现工具帮助信息则表示配置成功。
常见问题
- 作为内置命令后如何找到obsutil配置文件路径?
obsutil命令同级目录下的.obsutilconfig文件即为工具obsutil的配置文件。您也可以运行obsutil config来获取配置文件路径,示例如下:
obsutil config Config file url: D:\tools\.obsutilconfig
- obsutil作为内置命令后如何卸载?
- Windows操作系统卸载步骤:
- 运行where obsutil找到obsutil命令的路径:
where obsutil E:\tools\bin\obsutil.exe
- 运行del PATH删除obsutil命令:
del E:\tools\bin\obsutil.exe
PATH为obsutil命令的路径,上例中为:E:\tools\bin\obsutil.exe。
- 运行where obsutil找到obsutil命令的路径:
- macOS/Linux操作系统卸载步骤:
- 运行which obsutil找到obsutil命令的路径:
which obsutil /obsutil/obsutil
- 运行rm -rf PATH删除obsutil命令:
rm -rf /obsutil/obsutil
PATH为obsutil命令的路径,上例中为:/obsutil/obsutil。
- 恢复系统环境变量:删除/etc/profile文件中设置的obsutil工具的PATH。
假设/etc/profile文件中有此行内容export PATH=$PATH:/obsutil,则删除此行,或者有此行内容export PATH=$PATH:/test/bin:/obsutil:/test1,则删除:/obsutil,即修改为export PATH=$PATH:/test/bin:/test1。
- 运行which obsutil找到obsutil命令的路径:
- Windows操作系统卸载步骤:
- 解决macOS/Linux操作系统运行obsutil内置命令失败的问题。
- 运行obsutil help命令,如果提示“Permission denied”错误时,请执行命令chmod 755 OBSUTIL_PATH(OBSUTIL_PATH为/obsutil目录下的obsutil路径),为该工具增加可执行权限;
- 如果提示“command not found”错误时,请重新登录;
- 如果提示“Cannot create parent folder for xx/.obsutilconfig, xx Permission denied ”错误时,请确定该用户的家目录是否存在。
ubuntu系统用useradd命令添加用户,不会默认创建用户家目录,需要手动创建,建议用adduser命令添加用户。
- 解决macOS/Linux操作系统运行obsutil内置命令无法生成日志文件的问题。
如果在配置文件中已正常配置了sdkLogPath和utilLogPath,但运行命令后无法生成日志文件,请确认运行命令的用户对sdkLogPath和utilLogPath是否有读写权限。