热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

linux使用sudo开放普通用户权限

整理一下以前写的东东,刚才又忘了~-----------------------------------------------------------

整理一下以前写的东东,刚才又忘了~

----------------------------------------------------------------------------------------------------------------

我发现学过的东西如果不自己再总结或者复习很快就忘记了。写技术博客不仅是帮助别人,也是在帮助自己。不管涉及到的问题有多简单,记录总结是一种习惯。


1.一般linux内置安装的都有sudo,如果是redhat系列,可使用:rpm -qi sudo ,命令查看具体信息


2.切换到root,修改配置文件/etc/sudoers

     2.1配置文件有两种方式:

          第一种:使用vi或者vim

                        vi /etc/sudoers或者 vim /etc/sudoers

 以下是文件内容:

 

使用sudo开放普通用户权限 - kehr - 记录
 

第二种:使用visudo命令

       说明:两种方式修改的都是/etc/sudoers文件,其中visudovi /etc/sudoers等价,vim /etc/sudoers会有语法高亮。这只是使用编辑器的差别罢了。

(我实验了一下ubuntu,使用visudo修改的是/etc/sudoers.tmp )

3.找到任意一行(以#开头的都是注释 ,推荐写在root行下面,root前没有注释),添加一下代码:

                          kehr  ALL=(ALL)  ALL

解释一下:

kehr是你的用户名

ALL=(ALL):第一个ALL是限制用户的登录方式(远程,或者本地),ALL表示接受所有登录方式;第二个(ALL)是限制用户使用的命令,ALL表示该用户可使用所有命令,可以通过此项来限制用户使用的命令有那些,例如:ALL=/usr/sbin,那么用户只能使用/usr/sbin目录下的命令,ALL=/sbin/fdisk,那么用户在只能使用fdisk命令;

ALL:这第三个ALL目前还不清楚作用是什么,以后在添加说明

使用sudo开放普通用户权限 - kehr - 记录

修改完成后执行命令如下所示:

 

使用sudo开放普通用户权限 - kehr - 记录
 

4.除了能够设置用户之外,还可以对用户组进行设置,设置之后该用户组下的所有用户拥有执行指定命令的权限。

假设我们拥有用户组manager

%manager ALL=(ALL) ALL

解释:在 manager前加%用以表明这是一个用户组而不是用户,其它选项设置和用户的设置是一样的。

5.完成以上的设置基本就可以达到想要的效果了,但是每当你使用,sudo+命令,的时候后都会提示你输入当前的用户密码,如果你觉的很麻烦的话,在配置文件中可以这样设置:

kehr ALL=(ALL) NOPASSWD: ALL

在最后一个ALL前加入NOPASSWD: 就可以在使用sudo的时候忽略密码了(第二张图实际上已经这么做了)

(建议:所有的文件配置不建议直接粘贴复制本文,自己敲一遍可以避免文本格式的问题)


同时向大家推荐一个不错的linux学习网站:LinuxCast.net


如果发现本文方法不足,可一直接留言,我会及时回复。

                                                                                                                                                                        (如需转载,请申明出处)

 



推荐阅读
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 在创建新的Android项目时,您可能会遇到aapt错误,提示无法打开libstdc++.so.6共享对象文件。本文将探讨该问题的原因及解决方案。 ... [详细]
  • 本文介绍如何在Linux系统中卸载预装的OpenJDK,安装指定版本的JDK 1.8,并配置防火墙以确保系统安全性和软件兼容性。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文介绍如何通过更改软件源来提前体验Ubuntu 8.10,包括详细的配置步骤和相关注意事项。 ... [详细]
  • 本文详细记录了在银河麒麟操作系统和龙芯架构上使用 Qt 5.15.2 进行项目打包时遇到的问题及解决方案,特别关注于 linuxdeployqt 工具的应用。 ... [详细]
  • 在Python开发过程中,随着项目数量的增加,不同项目依赖于不同版本的库,容易引发依赖冲突。为了避免这些问题,并保持开发环境的整洁,可以使用Virtualenv和Virtualenvwrapper来创建和管理多个隔离的Python虚拟环境。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 本文介绍如何在Linux Mint系统上搭建Rust开发环境,包括安装IntelliJ IDEA、Rust工具链及必要的插件。通过详细步骤,帮助开发者快速上手。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • CentOS 6.5 上安装 MySQL 5.7.23 的详细步骤
    本文详细介绍如何在 CentOS 6.5 系统上成功安装 MySQL 5.7.23,包括卸载旧版本、下载安装包、配置文件修改及启动服务等关键步骤。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 搭建Jenkins、Ant与TestNG集成环境
    本文详细介绍了如何在Ubuntu 16.04系统上配置Jenkins、Ant和TestNG的集成开发环境,涵盖从安装到配置的具体步骤,并提供了创建Windows Slave节点及项目构建的指南。 ... [详细]
author-avatar
太阳之神sqh
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有