Linux学习之sudo命令
在学习Linux用户管理时,我们不得不需要了解一个命令,那就是sudo。sudo的作用是切换身份,以其他身份来执行命令。
那么为什么在Linux系统中我们需要来切换身份呢?原因有以下几个方面
1、养成一个对系统操作的好习惯。不管是在一些博文还是书籍中,作者经常会建议Linux使用者尽量用一般身份来操作Linux的日常作业。
等需要设定系统环境时,再切换成root身份进行系统管理,这样对系统是相对安全的,避免因为一些错误的指令而造成严重的事故
2、用较低的权限来启动系统服务。比如,系统上安装了apache服务,我们可以建立一个apache用户,专门用做对apache服务的操作。这样
即使apache出了什么问题,也不会影响到系统其他方面
鉴于以上,我们都被建议过使用普通账号登录系统,当系统需要维护或者软件更新时,再切换成root身份来操作。那么,如何来切换呢?
"su"命令可以用来切换成root身份,但是需要输入root密码。对与普通用户来说,是不应该被告知root密码的。
"sudo"命令也可以切换到root,但不需要root的密码,只需要自己的密码,这样root的密码就不会流传出去。
在/etc/sudoers里设置了可执行sudo指令的用户,若没有经过授权的用户使用sudo,则系统会向root发送警告邮件。用户在使用sudo时,必须先要输入密码,密码输入成功后有5分钟的有效期,过了期限,则需要再次输入密码
新建一个用户sudoer,在使用sudo命令时系统会给出提示,用户soduer不能在本机运行sudo命令

那么如何才能让sudoer可以使用sudo命令呢?我们需要管理员在/etc/sudoers文件中给予权限
找到/etc/sudoers中"root ALL=(ALL) ALL"行,添加一行"sudoer ALL=(ALL) ALL",这样sudoer便具有了使用sudo的权限

现在,我们再用sudoer身份来使用sudo的相关命令来验证是否具有权限

此时,用户sudoer可以执行所有的命令
sudo的使用方法就是 sudo [选项] [参数],我们先用man sudo来了解sudo的一些选项及用法

我们来了解一下其中的一些选项
-b : 在后台运行指令
- h : 显示帮助信息
- H : 将HOME环境变量设置为切换后的新用户的HOME路径
- k : 使时间戳失效,结束密码的有效期,再次使用sudo时需重新输入密码
- l : 列出目前用户可执行和不可执行的命令
- v : 延长密码有效期5分钟
Linux学习之sudo命令的更多相关文章
- linux学习: sudo命令(ubuntu)
使用 sudo 命令可以提高命令的执行权限,以root权限执行 如 : sudo vi xxx 但是有些内置命令 如 cd 无法通过 sudo来执行 ,如 sudo cd xxx 这是会报错的. ...
- Linux学习新篇——常用命令和快捷键总结
最近刚接触Linux,整理了一些常用的命令和快捷键 Tab补全命令 当命令记不清了,输入记得的前几个用Tab就可以将该命令自动补全. 启动tomcat服务用$startup.sh 停止tomcat服务 ...
- Linux 学习 (七) 挂载命令 & 用户登陆查看
Linux达人养成计划 I 学习笔记 挂载命令 mount:查询系统中已经挂载的设备 mount -a:根据配置文件 /etc/fstab 的内容,自动挂载 mount [-t 文件系统] [-o 特 ...
- Linux 学习 (四) 帮助命令
Linux达人养成计划 I 学习笔记 man 命令 获取指定命令的帮助 man的级别 1:查看命令的帮助 2:查看可被内核调用的函数的帮助 3:查看函数和函数库的帮助 4:查看特殊文件的帮助(主要是/ ...
- linux 学习2 常用命令
1.显示日期的指令: date 2. [Tab]按键---具有『命令补全』不『档案补齐』的功能 3: su和 sudo su用于用户之间的切换. su在不加任何参数,默认为切换到root用户 ...
- Linux 系统中 sudo 命令的 10 个技巧
概览 sudo 表示 "superuser do". 它允许已验证的用户以其他用户的身份来运行命令.其他用户可以是普通用户或者超级用户.然而,大部分时候我们用它来以提升的权限来运行 ...
- linux学习笔记——基础命令
最近看了一些老男孩linux运维视频,挺不错的,特此记录一下 linux组成 gun组件 shell等 linux内核 其他软件 linux主要内核: linux kernel2.2 linux ke ...
- Linux su和sudo命令的区别,并获得root权限
su(superuser) su表示切换用户,如: 输入:su命令后回车表示切换当前的用户到root用户,或者: 输入:su - root(或者其他用户名)这里加了"-"后表示也切 ...
- Linux学习 - 系统命令sudo权限
1 功能 root把超级用执行的命令赋予普通用户执行 2 使用 visudo 或 vim /etc/sudoers 说明: root 用户名 ALL=(ALL) 被管理主机的地址=(可使用的身份) A ...
随机推荐
- JavaScript 事件总结
本文总结自<JavaScript高级程序设计>以及自己平时的经验,针对较新浏览器以及 DOM3 级事件标准(2016年8月),对少部分内容作了更正,增加了各种例子及解析. 如无特殊说明,本 ...
- 简洁、轻量的前端UI框架 - Hbook
Simple, lightweight front-end UI framework Get Start : http://www.bookcss.com Introduce Hbook focus ...
- phpcms基础知识和配置
一.设置界面 1.站点设置:相当于服务器上的站点 (1)站点修改:“关键词”和“描述”的修改,便于网络优化和搜索引擎对本网站的搜索. (2)模板的修改,可以自己加模板,引用自己模板 2.基本设置:所有 ...
- 【Zookeeper】源码分析之请求处理链(一)
一.前言 前面已经分析了Watcher机制的主要代码,现在接着分析Zookeeper中的请求处理链,其是Zookeeper的主要特点之一. 二.总体框图 对于请求处理链而言,所有请求处理器的父接口为R ...
- protocol error, got 'n' as reply type byte
centos6.5上安装redis3.2版本,本地访问redis报错protocol error, got 'n' as reply type byte 解决办法 在redis配置文件redis.co ...
- 详解JavaScript闭包
要想完全明白JavaScript的闭包,要先明白js中的一些基础原理,然后我再给出一些例子来讲解闭包. 在执行JavaScript时会创建一个执行环境(excution context),执行环境定义 ...
- 解决项目中找不到Maven Dependencies
项目中找不到Maven Dependencies 正常的Maven项目应该是这样的 自己的项目中却没有Maven Dependencies,自己百度了, 发现解决不了,最后发现在.classpath和 ...
- 【openstack N版】——创建云主机
一.启动实例 1.1 已准备服务介绍 MySql:为各个服务提供数据存储. RabbitMQ:为各个服务之间通信提供交通枢纽. keystone:为各个服务之间通信提供认证和服务注册. Glance: ...
- 向php提交数据及json
php中提交表单有两种方法,即: (1)利用表单提交 例: <form action="php文件名" method='提交方式'> username:<inpu ...
- Uri API
四中LaunchMode:http://blog.csdn.net/liuhe688/article/details/6754323 onNewIntent:http://www.cnblogs.co ...