為什麼在這個特定的命令中需要"sudo"?

分享于 

4分钟阅读

电脑

  简体 双语

问题:


 sudo yum install automake libtool flex bison pkgconfig gcc-c++ 


 boost-devel libevent-devel zlib-devel python-devel ruby-devel



用于在 CentOS 5上安装 Thrift 所需的软件包。

有可能在没有sudo的情况下运行它的版本?

编辑:我没有 root 访问权限,而且我不在sudoers文件中。 我想知道我是否能做一些 yum install automake.. ..... 不等待/请求添加到sudoers文件中


回答 1:

是的,但没有 root 访问是可能的。 如果你有足够的权限访问完整的命令需要,则不需要sudo命令。

例如如果你以 root 身份登录。 或者,通过发出以下命令来成为'超级用户':

 
su 



 

这实际上需要 root 密码。 不推荐使用。最好使用具有最少特权的系统并在需要时使用 sudo,如你的完整命令所示。

安装任何主要的( 开发工具开发工具) 几乎总是要求访问主文件夹 ~/外的文件夹

*This 适用于所有发行版,而不仅仅是你使用的CentOS。


回答 2:

我从来没有尝试过这样做,但我的rpm软件包( 至少合适的软件包) 支持重定位。 但是,为了安装没有 root 访问的包,需要一些步骤。

以下是从 linuxquestions.org: 提升

设置 private RPM数据库


mkdir -p/home/username/local/lib/rpm


rpm --initdb --root/home/username/local --dbpath/home/username/local/lib/rpm



如果你不喜欢 ~/local/lib/rpm,,你可以选择一个不同的子目录结构。

检查软件包 dependancies


rpm -ivh package.rpm



如果找到了 dependancies,在安装包RPM之前安装依赖 RPM。

最后安装软件包


rpm --root/home/username/local --dbpath/home/username/local/lib/rpm 


--relocate/usr=/home/username/local --nodeps -ivh package.rpm



要使用包,你必须与LD_LIBRARY_PATH一起播放,让加载程序知道所需的共享labraries并修改路径。


回答 3:

如果允许当前用户使用 sudosudo 授予命令 root 权限。

如果你已经存在 root 访问,除了日志记录之外,还没有理由将它放在命令前面。 如果你没有安装 sudo 并且已经作为 root 运行,就删除 sudo:


yum install automake libtool flex bison pkgconfig gcc-c++ 


 boost-devel libevent-devel zlib-devel python-devel ruby-devel



如果你还不是 root 并且 root 帐户有密码设置,请运行 su 并使用 root 密码登录。


回答 4:

Sudo命令用于在超级用户身份验证中授予单个操作。 如果想跳过sudo命令,你必须使用命令"su"以超级用户身份登录。


回答 5:

假设你已经从某些网站中取出了这个安装线,通常在用户没有完成的情况下包括sudo线。 然而,它通常是个好主意,因为给程序评分你信任 root 访问允许它在全局级别上做必要的修改。



COM  COMM  Comma  
相关文章