来自公众号:互联网架构师/来源:Jun Tao 地址:https://tanjuntao.github.io/
之前一直对 su 和 sudo 这两个命令犯迷糊,最近专门搜了这方面的资料,总算是把两者的关系以及用法搞清楚了,这篇文章来系统总结一下。
sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。
sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。另外一个区别是其默认行为。sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。
su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root所拥有。解决办法无法有两个,一是退出beinan用户,重新以root用户登录,但这种办法并不是最好的;二是我们没有必要退出beinan用户,可以用su来切换到root下进行添加用户的工作,等任务完成后再退出root。我们可以看到当然通过su 切换是一种比较好的办法;
作者 | Jun Tao 来源 | https://tanjuntao.github.io/ 之前一直对 su 和 sudo 这两个命令犯迷糊,最近专门搜了这方面的资料,总算是把两者的关系以及用法搞清楚了,这篇文章来系统总结一下。 1. 准备工作 因为本篇博客中涉及到用户切换,所以我需要提前准备好几个测试用户,方便后续切换。 Linux 中新建用户的命令是 useradd ,一般系统中这个命令对应的路径都在 PATH 环境变量里,如果直接输入 useradd 不管用的话,就用绝对路径名的方式:/usr/sb
Linux 中新建用户的命令是 useradd ,一般系统中这个命令对应的路径都在 PATH 环境变量里,如果直接输入 useradd 不管用的话,就用绝对路径名的方式:/usr/sbin/useradd 。
原文:https://tanjuntao.github.io/2020/05/23/Linux-%E5%AD%A6%E4%B9%A0%E8%AE%B0%E5%BD%95%EF%BC%9Asu-%E5%92%8C-sudo/
常见用法:rm -rf/home/ubuntu/.cache (删除 /home/ubuntu/.cache这个文件夹)
账号犹如一张通行证,有了账号你才能顺利的使用Linux。不过 Linux 怎么确认使用某账号的人,是这个账号的真正拥有者呢?此时Linux 会根据用户的密码,来确认用户的身份。Linux 的用户账号与群组账号都可设置密码。用户账号的密码用来验证用户的身份;而群组账号的密码则是用来确认用户是否为该群组的成员,以及确认是否为该群组的管理者。
本文将深入揭示提取Android ROOT权限的完整过程。这一过程与网上的方法有很大的差异。很多网上提取ROOT权限的方式都是使用别人做好的程序,有的甚至点击一下按钮就会自动完成所有的工作。这样做尽管可以成功提取ROOT权限,但读者并不能了解其中的原理,而且由于Android设备的千差万别,可能并不是每一种Android设备都可以很容易找到提取ROOT权限的工具。所以最通用的方法就是尽可能利用现成的工具来完成提取ROOT权限的工作。那么现成的工具有什么呢?其实主要就是Android源代码以及Linux内核源代码。也就是说,大多数工作都可以通过这些源代码来解决。当了解了这一过程的原理后,如果并没有找到合适的提取ROOT权限的工具,就可以通过本文介绍的方法很容易获取Android设备的ROOT权限。
在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限。
什么是Linux Unix Unix是一个强大的多用户、多任务操作系统。 于1969年在AT&T的贝尔实验室开发。 UNIX的商标权由国际开放标准组织(The Open Group)所拥有。 UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。 Linux的概述 Linux是基于Unix的一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机。诞生于1991 年10 月5 日。是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成。 Linux的历史 Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的MINIX操作系统, 所以在1990年底由于个人爱好设计出了LINUX系统核心。后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统。 Linux系统的应用 服务器系统 Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等; 嵌入式系统 路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等, 高性能运算、计算密集型应用。 Linux有强大的运算能力。 桌面应用系统 移动手持系统 Linux的版本 Linux的版本分为两种:*内核版本和发行版本;* 内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ; 发行版本是一些组织和公司根据自己发行版的不同而自定的 ; Linux的目录结构
ls -l 命令用于列出指定目录下的文件和文件夹,并显示详细信息。下面是 ls -l 命令输出的详细信息解释:
不管你是从事开发还是运维工作,都要懂Linux基本命令,Linux命令是Linux系统正常运行的核心。
在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁地输入某个很长命令或用法是不可取的。这时可以使用命令别名功能将这个过程简单化。
Linux文件或者目录名称最长可以有265个字符,“.”代表当前目录,“..”代表上一级目录,以“.”开头的文件为隐藏文件,需要用-a参数才能显示。
有了sudo,可以在不泄露(不设置) root密码的前提下让用户执行特权命令,并且sudo提供命令历史记录,能大大提高系统的安全性。
su su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。
Linux(linux的强大之处在于,linux中可以多用户多分组,而且相互隔离)在window中是有用户跟组这种分类的;
常用的基本指令已经讲解完毕啦:探索Linux世界:基本指令(文件查看、时间相关、grep、打包压缩及相关知识)
最简单的命令: sudo adduser test 会自动将该用户添加到同名组中,创建/home/test/,从etc/skel/复制文件,并设定密码和相关初始身份信息。
2) man(有问题找男人) man 是 Linux 提供的一个手册,包含了绝大部分的命令、函数使用说明。
变量是计算机系统用于保存可变值的数据类型,我们可以直接通过变量名称来提取到对应的变量值。在 Linux 系统中,环境变量是用来定义系统运行环境的一些参数,比如每个用户不同的家目录(HOME)、邮件存放位置(MAIL)等。
Linux操作系统诞生于1991 年10 月5 日。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中。
一、linux给用户添加sudo权限: 有时候,linux下面运行sudo命令,会提示类似: xxxis not in the sudoers file. This incident will be reported. 这里,xxx是用户名称,然后导致无法执行sudo命令,这时候,如下解决: 进入超级用户模式。也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。(当然,你也可以直接用root用) 添加文件的写权限。也就是输入命令"chmod u+w /etc/
介绍几条比较基础的Linux命令帮助大家入门。 1. man 解释命令用法
https://nmap.org/dist-old/nmap-5.35DC1-setup.exe
Shell是运维和系统管理员操作Linux系统的首选,简单的说,它是一个命令解释器。
nc就是netcat,官网:https://eternallybored.org/misc/netcat/
1、首先切换到root #su - (注意有- ,这和su不同,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,而使用带横线参数的"su -"命令则将环境变量也一起转换过去,就象用root登录一样) 2、然后 #visudo 这个和vi的用法一样,移动光标,到最后一行,按a,进入append模式,输入以下这行内容(同理,cd到/etc/sudoers目录下,由于sudoers文件为只读权限,所以需要添加写入权限,chmod u+w sudoers 。vim sudoers ) 找到root ALL = (ALL) ALL这一行,在下一行加入username ALL = (ALL) ALL。username指代你想加入sudo组的用户名。 把sudoers文件的权限修改回来。chmod u-w sudoers 这样普通用户可以执行sudo命令了。 ps:这里说下你可以sudoers添加下面四行中任意一条 youuser ALL=(ALL) ALL %youuser ALL=(ALL) ALL youuser ALL=(ALL) NOPASSWD: ALL %youuser ALL=(ALL) NOPASSWD: ALL
Linux系统是一种开源操作系统,常用于服务器和工作站。它使用命令行界面,因此对于新用户来说可能有些陌生。下面是一些常用的Linux命令和它们的用法。
"PS:有段时间没有更新了,而且公号还改名了,最近一直觉得自己原来的公号名字(learnAbit)像培训机构的,思来想去还是改了吧,现在的名字算是我的笔名,以后就用这个不会再改了。以后还是多更新吧,有时候想想多写写东西还是挺有意思的,虽然我的文笔不好,也没有什么粉丝,自己成长就行。"
Linux 用户和组 1、用户和组的概念 用户的作用: Authentication:认证 Authorization:授权 Accouting:审计 用户存在的最终目的: 为了实现资源的分派 组的作用: 将具有相同特征的用户放在一起组成一个整体 当用户过多时方便管理 1.1Linux安全上下文 Linux通过安全上下文的概念完成用户权限的指派。 先判断用户是否是某文件的属主 再判断用户是否是该文件属组中的一员 最后定其为其它用户 运行中的程序:进程(process) 以进程发起者的身份运行 root:c
虽然很早就开始接触和使用Linux系列的系统,但是一直都是停留在使用层面,只能作为一个User,而并不是一个Developer,而要真正掌握Linux系列的系统,并以其作为开发环境进行开发,有很多知识是必须要了解的,就比如用户及用户权限管理。 用户和用户组文件 在linux中,用户帐号,用户密码,用户组信息和用户组密码均是存放在不同的配置文件中的。 在linux系统中,所创建的用户帐号和其相关信息(密码除外)均是存放在/etc/passwd配置文件中。由于所有用户对passwd文件均有读取的权限,因此
#不创建主目录,不指定家目录,不生成家目录,之前是用 cd /home进入家目录后可以看到我们创建的XD用户,使用这个-M就是不会出现在家目录中的了。如在创建一个useradd -M 后面是默认的话会自动指定是/bin/bash是可登录的,而UID会在之前的基础上自动增加
演示如下:下图表示的是date的用法。date(1)和date(1p)括号里的数表示这个用法的显示信息出现在man page 的第几章
有小伙伴留言说之前看了我分享里有一篇Linux基础命令详细版,但是太长,问我有没有简洁版的。 于是我就整理了下,以下这些命令,被称为“Linux运维必须掌握的150个常用命令”,送给Linux运维新手。 ●线上查询及帮助命令(2 个) man help ●文件和目录操作命令(13 个) ls tree pwd mkdir rmdir cd touch cp mv rm ln find rename ●查看文件及内容处理命令(22 个) cat tac more less head tail cu
cp -r zrfdir zrfdir1;拷贝zrfdir目录,拷贝后目录名字为zrfdir1
============================================================================= Unix/Linux最主要的应用领域是基础服务器应用, 如DNS服务器(域名系统 )、DHCP服务器(动态主机配置协议)、Web服务器(网站服务器)、FTP服务器(文件传输协议)、防火墙等。
作为一种开放源代码的操作系统,Linux服务器以其安全,高效和稳定的显著优势得以广泛应用 可以从账号安全控制,系统引导和登录控制的角度控制Linux系统的安全优化
在安装 Ubuntu 18.04后创建了一个账户,用户名为linuxmi,密码比较长,因为本机测试,想把密码改成一个字母e,这样方便输入。 首先运行终端 [linuxmi@linux:~/linuxmi迷]$ passwd 更改 linuxmi 的密码。 (当前)UNIX 密码: linuxmi 输入新的 UNIX 密码: e 重新输入新的 UNIX 密码: e 必须选择更长的密码 红色部分为手动输入。出现
自己开始接触 Linux「Ubuntu」应该是在大学期间, 接触 Unix「Mac OSX」是在工作后的第一份工作,吭哧吭哧的用了好几年的 Linux,强行此文,自己总结了目前经常用到的几个命令,希望给 Linux 用户提供帮助。
本文关于学习Linux的目的并不是让读者如运维人员那样去精通Linux,而是掌握一些java开发工程师所具备的Linux操作技能。因为很多java程序员在公司负责一个项目的过程中总是避免不了将项目打包后部署到Linux服务器,这时如果你不懂一点与项目部署相关的Linux命令,那你大概只会被你的老板当成一名初级程序员。
领取专属 10元无门槛券
手把手带您无忧上云