linux系统使用sudo命令报xxx is not in the sudoers file.This incident will be reported.的解决方法
- 格式:doc
- 大小:63.50 KB
- 文档页数:2
普通用户不能su切换到其它用户提示killed,或者无法登录系统故障现象:1. 包括root用户在内有用户收到下面的错误信息,可能说组文件破坏或丢失:failed setting terminal owncrship and mode上面的信息说明在/etc/passwd文件中查看到的相应的主组不能够在/etc/group文件中找到如:cat /etc/passwd 文件中有如下内容:user_test:!:204:1::/home/user_test:/usr/bin/ksh上面显示组为“1”,因此需要查看/etc/group文件确认组号“1”存在2. 只有root用户可以登录,普通用户登录时会收到下面的错误信息:failed running login shell 或system unavailable3. 当使用命令su -<username> 时返回下面的错误信息:Cannot set process environment 或者killed[compat]: You entered an invalid login name or password.Cannot su to "root" : Authentication is deniedCannot find "/dev/null"4. 登录后,用户会得到下面的错误信息:permission denied 或者ksh:pwd: Cannot access parent directories5. root以外的用户不能登录,出现下面的错误信息:Please login again from the authentication center, thank you或者登录后一闪就弹出提示:connection closed6. 在其它正常机器上ssh user_test@xxx.xxx.xxx.xxx 出现下面错误Host key verification failed注:此错误可先检查/home/user_test/.ssh/known_hosts,清除对应的项目。
[Linux]-xxx不在sudoers⽂件中。
此事将被报告。
redhat系统:
linux中创建⽤户命令为:useradd ⽤户名, eg: useradd test
指定密码:passwd test
但是有时候我们需要使⽤test运⾏执⾏⼀些root⽤户才有权限执⾏的命令,此时有两种⽅式:第⼀种,⽅式使⽤test⽤户执⾏,采⽤root⽤户执⾏。
第⼆种,使⽤sudo命令临时给⽤户test赋予root权限。
第⼀种我们就不考虑了,第⼆种是我们主要的采⽤⽅式,但是默认情况下,⽤户是不具有sudo权限的,这个需要root⽤户赋予。
如果没有进⾏任何操作,执⾏sudo命令会出现异常:"test不在 sudoers ⽂件中。
此事将被报告。
"。
使⽤root⽤户登录系统,查看⽂件/etc/sudoers权限信息,显⽰如下:
我们可以看到此时该⽂件的权限为root⽤户和supper⽤户组拥有读权限,其他⽤户没有权限。
此时修改该⽂件权限为root⽤户可写,执⾏命令chmod u+w /etc/sudoers或者执⾏chmod 640 /etc/sudoers。
修改⽂件内容:vim /etc/sudoers,修改如下所⽰:
原来的
添加后的
将⽂件权限复原,命令chmod u-w /etc/sudoers或者执⾏chmod 440 /etc/sudoers。
⾄此,完成。
如果还不可以,那么重启⼀下。
Linux的常⽤基本命令⼀、基本命令1.1 关机和重启1.2 帮助命令⼆、⽬录操作命令2.1 ⽬录切换 cd2.2 ⽬录查看 ls [-al]2.3 ⽬录操作【增,删,改,查】2.3.1 创建⽬录【增】 mkdir2.3.2 删除⽬录或⽂件【删】rm2.3.3 ⽬录修改【改】mv 和 cp2.3.4 搜索⽬录【查】find三、⽂件操作命令3.1 ⽂件操作【增,删,改,查】3.1.1 新建⽂件【增】touch3.1.2 删除⽂件【删】 rm3.1.3 修改⽂件【改】 vi或vim3.1.4 ⽂件的查看【查】tail head3.2 权限修改四、压缩⽂件操作4.1 打包和压缩4.2 解压五、查找命令5.1 grep5.2 find5.3 locate5.4 whereis5.5 which六、su、sudo6.1 su6.2 sudo七、系统服务⼋、⽹络管理8.1 主机名配置8.2 IP 地址配置8.3 域名映射九、定时任务指令crontab 配置9.1 命令格式9.2 配置说明、实例⼗、其他命令10.1 查看当前⽬录:pwd10.2 查看进程:ps -ef10.3 结束进程:kill10.4 ⽹络通信命令:10.5 配置⽹络10.6 重启⽹络10.7 切换⽤户10.8 关闭防⽕墙10.9 修改⽂件权限10.10 清屏10.11 vi模式下快捷键⼀、基本命令1.1 关机和重启shutdown -h now ⽴刻关机shutdown -h 5 5分钟后关机poweroff ⽴刻关机shutdown -r now ⽴刻重启shutdown -r 5 5分钟后重启reboot ⽴刻重启1.2 帮助命令--help命令shutdown --help:ifconfig --help:查看⽹卡信息man命令(命令说明书)man shutdown注意:man shutdown打开命令说明书之后,使⽤按键q退出⼆、⽬录操作命令2.1 ⽬录切换 cdcd / 切换到根⽬录cd .. 切换到上⼀级⽬录cd ~ 切换到home⽬录cd - 切换到上次访问的⽬录2.2 ⽬录查看 ls [-al]ls 查看当前⽬录下的所有⽬录和⽂件ls -a 查看当前⽬录下的所有⽬录和⽂件(包括隐藏的⽂件)ls -l 或 ll 列表查看当前⽬录下的所有⽬录和⽂件(列表查看,显⽰更多信息)ls /dir 查看指定⽬录下的所有⽬录和⽂件如:ls /usr2.3 ⽬录操作(增,删,改,查)2.3.1 创建⽬录(增) mkdirmkdir logs 在当前⽬录下创建⼀个名为logs的⽬录mkdir /usr/logs 在指定⽬录下创建⼀个名为logs的⽬录2.3.2 删除⽬录或⽂件(删)rmrm ⽂件删除当前⽬录下的⽂件rm -f ⽂件删除当前⽬录的的⽂件(不询问)删除⽬录:rm -r aaa 递归删除当前⽬录下的aaa⽬录rm -rf aaa 递归删除当前⽬录下的aaa⽬录(不询问)注意:rm语法对⽬录和⽂件和压缩包等都可执⾏删除操作2.3.3 ⽬录修改 mv 和 cp重命名⽬录命令:mv 当前⽬录新⽬录例如:mv aaa bbb 将⽬录aaa改为bbb注意:mv语法对⽬录和⽂件和压缩包等都可执⾏重命名的操作剪切⽬录命令:mv ⽬录名称⽬录的新位置⽰例:将/usr/tmp⽬录下的aaa⽬录剪切到 /usr⽬录下⾯ mv /usr/tmp/aaa /usr注意:mv语法对⽬录和⽂件和压缩包等都可执⾏剪切操作拷贝⽬录命令:cp -r ⽬录名称⽬录拷贝的⽬标位置 -r代表递归⽰例:将/usr/tmp⽬录下的aaa⽬录复制到 /usr⽬录下⾯ cp /usr/tmp/aaa /usr注意:cp命令可以拷贝⽬录还可以拷贝⽂件,压缩包等,拷贝⽂件和压缩包时不⽤写-r递归2.3.4 搜索⽬录 find命令:find ⽬录参数⽂件名称⽰例:find /usr/tmp -name 'a*' 查找/usr/tmp⽬录下的所有以a开头的⽬录或⽂件三、⽂件操作命令3.1 ⽂件操作3.1.1 新建⽂件touch命令:touch ⽂件名⽰例:在当前⽬录创建⼀个名为aa.txt的⽂件 touch aa.txt3.1.2 删除⽂件 rm命令:rm -rf ⽂件名3.1.3 修改⽂件vi或vim基本上vi可以分为三种状态,分别是命令模式(command mode)、插⼊模式(Insert mode)和底⾏模式(last line mode)1) 命令⾏模式command mode)常⽤命令:(1)进⼊编辑模式:i o a (2)进⼊底⾏模式:: (3)查找:/字符(4)控制光标移动:↑,↓,j(5)删除当前⾏:dd2) 编辑模式(Insert mode)只有在Insert mode下,才可以做⽂字输⼊,按「ESC」键可回到命令⾏模式。
Linux下使用sudo命令时提示XXXisnotinthesudoersfile
的问题-电脑资料
环境:VirtualBox4.1 + RedHat Linux 6
问题:用sudo命令时提示 "xxx is not in the sudoers file. This incident will bereported.其中XXX是你的用户名,也就是你的用户名没有权限使用sudo命令,。
解决:只要修改一下/etc/sudoers文件就行了。
1.进入超级用户模式。
也就是输入"su-",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式,
电脑资料
《Linux下使用sudo命令时提示XXX is not in the sudoers file 的问题》(https://www.)。
(注:您也可以直接用root登录);
2.添加文件的写权限,因为sudoers这个文件只允许读,不允许写入。
输入命令"chmod u+w /etc/sudoers";
3.编辑/etc/sudoers文件。
输入命令"vi/etc/sudoers",输入"i"进入编辑模式,找到这一行:"root ALL=(ALL) ALL",在这行下面添加"xxxALL=(ALL) ALL"(这里的xxx是你的用户名),然后按Esc键,输入":wq",保存退出;
4.撤销文件的写权限,还原文件的读写状态。
输入命令"chmod u-w /etc/sudoers"。
Linux解压tar.gz⽂件时提⽰gzip:stdin:not错误
我们都知道Linux系统下的tar命令可⽤于⽂件的解压缩,在利⽤tar命令解压tar.gz⽂件的时候,提⽰gzip:stdin:not in gzip format错误,遇到这种情况该如何解决呢?随⼩编来了解下tar.gz⽂件解压报错的解决⽅法。
在解压tar.gz⽂件的时候报错
[Sun@localhost Downloads]$ tar -zxvf clion-141.351.4.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
原因是这个压缩包没有⽤gzip格式压缩,所以不⽤加z指令
[Sun@localhost Downloads]$ tar -xvf clion-141.351.4.tar.gz
这样就可以了
解决⽅法⼆:
1:把下载下来的⽂件重命名: mv apache-tomcat-6.0.26.tar.gz apache-tomcat-6.0.26.tar
2:再执⾏解压命令: tar -zxvf apache-tomcat-6.0.26.tar
上⾯就是Linux解压tar.gz⽂件出错的解决⽅法介绍了,只要知道tar.gz⽂件出错的原因,就能快速解决问题,本⽂提供了两种⽅法供你选择。
the repository no longer has a releasefile在使用Ubuntu等Linux操作系统的过程中,有时候会出现“The repository no longer has a release file”(软件仓库没有发布文件)的错误提示。
这个错误信息的意思是,你所使用的软件仓库中缺少与你的操作系统版本相匹配的发布文件,导致无法安装软件包。
如果遇到这个错误,可以尝试以下步骤解决。
步骤一:更新APT软件源首先,打开终端窗口(Terminal)并输入以下命令,更新APT软件源:sudo apt-get update这个命令会更新计算机上已添加的所有软件源列表,包括Ubuntu 官方软件源和第三方软件源。
如果软件源列表无问题,就应该成功更新。
步骤二:尝试更换软件源如果第一步命令运行后依旧出现错误提示,那么就需要尝试更换软件源。
在终端窗口中输入以下命令,更换软件源:sudo software-properties-gtk这个命令会打开软件源窗口,你可以选择一个新的软件源。
在窗口的菜单栏中,选择“Ubuntu软件”(或其他Linux发行版的名称),然后选择“下载自”(或“下载自”),并选择一个不同的位置。
接下来,在窗口中点击“重新载入”按钮,等待软件源更新完成。
完成后,可以尝试再次安装需要的软件包,看看是否成功。
步骤三:检查操作系统版本如果更换软件源后还是无法解决问题,那么就需要检查一下自己的操作系统版本是否正确。
在终端窗口中输入以下命令,查看系统版本:lsb_release -a这个命令会输出系统相关的信息,包括版本号、发行代号等。
确认自己的操作系统版本后,再次检查软件源是否对应。
如果还是没成功,那就只能等待软件源发布版本了。
总的来说,解决“The repository no longer has a release file”错误提示的步骤可以分为更新软件源、更换软件源、检查操作系统版本等。
LinuxMySQL常见⽆法启动或启动异常的解决⽅案Linux MySQL 常见⽆法启动或启动异常的解决⽅案 在 Linux 上⾃建 MySQL 服务器,经常遇到各种⽆法启动或启动后异常的问题,本⽂列举⼀些常见问题的解决办法。
注意:以下错误⽇志提⽰,都是查看 MySQL 错误⽇志得到,查看⽅法如下: 查看下 MySQL 配置⽂件 f 中有记录,⽇志记录在 /alidata/log/mysql/error.log 下 MySQL 配置⽂件 f 权限问题导致⽆法启动,错误提⽰:World-writable config file '/etc/f' is ignored Binlog 丢失导致⽆法启动,错误⽇志: File './mysql-bin.000001' not found Binlog ⽆法读取导致⽆法启动,错误⽇志:Failed to open log (file './mysql-bin.000001', errno 13) 不能创建 PID 导致⽆法启动,错误⽇志:Can't start server: can't create PID file: No such file or directory 不能创建临时⽂件导致⽆法启动,错误⽇志:mysqld: Can't create/write to file '/tmp/ibfguTtC' (Errcode: 13) MySQL 服务⽆法识别导致⽆法启动,错误提⽰:mysqld: unrecognized service MySQL 配置了过⼤的内存导致⽆法启动,错误⽇志:InnoDB: Cannot allocate memory for the buffer pool MySQL 启动参数过多导致⽆法启动,错误提⽰:Too many arguments (first extra is 'start') MySQL ⽬录权限问题导致⽆法启动,错误⽇志:File './mysql-bin.index' not found (Errcode:13 - Permission denied) MySQL 未初始化导致⽆法启动,错误提⽰:can't open the mysql.plugin table MySQL 启动成功但未监听端⼝ MySQL ibdata1权限问题导致⽆法启动,错误⽇志:InnoDB Operating system error number 13 in a file operation 磁盘空间满导致 MySQL ⽆法启动 进程残留导致 MySQL ⽆法启动 MySQL 服务⾃动停⽌ MySQL 配置⽂件 f 权限问题导致⽆法启动,错误提⽰:World-writable config file '/etc/f' is ignored 问题描述 主机 Linux MySQL ⽆法启动,报如下错误: 问题分析 查看 MySQL 错误⽇志发现如下错误(提⽰ MySQL 库的 host 表⽆法打开): 查看 /etc/f 配置⽂件: 到 MySQL 数据库所在⽬录查看表是否存在: 发现 MySQL 库的 host 表是存在的,那为什么会提⽰不存在呢? 问题应该出在 /etc/f ⽂件上,从第⼀个截图也可以看到警告信息(/etc/f 被忽视) 查看⽂件权限: 原来⽂件权限被设置成 777,因安全问题导致被 MySQL 忽视,所以去查询默认的数据库存放路径,没有 MySQL 库的 host 表导致启动失败: 解决办法 将 /etc/f 权限修改成 644,然后启动 MySQL 即可: Binlog 丢失导致⽆法启动,错误⽇志: File './mysql-bin.000001' not found 问题描述 清理磁盘空间时删除了全部 binglog ⽇志,导致 MySQL ⽆法启动: MySQL 的 errorlog ⾥⾯可以看到错误信息: 解决办法 1、注释 Binlog 配置恢复⽅法: 编辑 /etc/f,找到 log-bin=mysql-bin,在前⾯加#将其注释暂时关闭 binlog,保存修改后启动 MySQL 服务 注意:f 配置⽂件路径以实际调⽤路径为准 2、清理 Binlog 索引恢复⽅法: 查看 Binlog 索引⽂件 所以,需要清空 mysql-bin.index 索引⽂件后即可,清理⽅法可以通过 vi 或者 echo 命令清理,如下: echo “” > mysql-bin.index 去除 Binlog ⽇志索引⽂件中调⽤的内容后,测试启动成功。
Ubuntusudo报错commandnotfound的解决⽅法 Ubuntu系统操作中,在使⽤sudo的时候出现sudo:source:command not found错误提⽰,遇到这种问题要如何处理呢?下⾯⼩编就给⼤家介绍下Ubuntu系统中报错sudo:source:command not found的解决⽅法。
Ubuntu Server上执⾏以下命令,可以看到默认打开的⽂件数限制为1024个。
$ ulimit -n 1024 编辑/etc/profile配置⽂件,在最后添加⼀⾏: ulimit -SHn 65535 要让配置⽣效: $ sudo source /etc/profile sudo: source: command not found 我们直接执⾏ulimit -SHn 65535命令⼜会怎么样呢? $ ulimit -SHn 65535 -bash: ulimit: open files: cannot modify limit: Operation not permitted $ sudo ulimit -SHn 65535 sudo: ulimit: command not found 普通⽤户获得root权限后反⽽提⽰找不到命令了,该如何解决这个问题呢? $ sudo -s # source /etc/profile 再次执⾏ulimit,可以看到打开⽂件的限制数已改为65535了。
# ulimit -n 65535 上⾯就是Ubuntu解决sudo:source:command not found错误的⽅法介绍了,如果你碰到这个问题,可是尝试使⽤本⽂介绍的⽅法进⾏处理,希望对你有所帮助。
linuxsudo命令教程sudosudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。
这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性。
Sudo不是对shell的一个代替,它是面向每个命令的。
它的特性主要有这样几点:§ Sudo能够限制用户只在某台主机上运行某些命令。
§ Sudo提供了丰富的日志,详细地记录了每个用户干了什么。
它能够将日志传到中心主机或者日志服务器。
§ Sudo使用时间戳文件来执行类似的“检票”系统。
当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个值可以在编译的时候改变)。
§ Sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。
它所存放的位置默认是在/etc/sudoers,属性必须为0411。
安装检测是否安装了SUDO:[root@localhost ~]# rpm -q sudosudo-1.6.8p12-4.1如果没有安装,下载软件包进行安装:对于大多数系统来说,sudo的配置都是相对比较简单的:0) $> cd /;cp sudo-1.6.8p12.tar.gz /1) $> tar vxzf sudo-1.6.8p12.tar.gz2) 如果是从低版本升级的话,升级之前请仔细阅读UPGRADE文件。
3) 如果你在编译之前,已经为另外一台不同的主机运行了’configure’,你必须用make distclean清除’config.cache’文件。
否则,’configure’将不能再运行。
你也可以直接’rmconfig.cache’.4) 阅读’OS dependent notes’看是否支持你的系统。
5) $> cd sudo-8p126) 阅读configure文件,仔细看其中的’Available configure options’部分,看是否要加一些特殊的选项。
xxisnotinthesudoersfile问题解决【转载】我⽤的是redhat5.4,在⼀般⽤户下执⾏sudo命令提⽰llhtiger is not in the sudoers file. This incident will be reported.解决⽅法:⼀、$whereis sudoers -------找出⽂件所在的位置,默认都是/etc/sudoers⼆、 #chmod u+w /etc/sudoers 以超级⽤户登录su -root ,修改⽂件权限即添加⽂件拥有这的写权限限,ls -al /etc/sudoers 可以查看原⽂件的权限。
三、vim /etc/sudoers 编辑⽂件,在root ALL=(ALL)ALL⾏下添加XXX ALL=(ALL)ALL,XXX为你的⽤户名。
添加⽅法:找到root⾏,按下”i“键进⼊编辑模式添加即可!编辑好后esc键进⼊⼀般模式,“:wq"保存退出!最后, #chmod u-w /etc/sudoers 回到⽂件的原权限!下⾯这个稍微详细⼀点:在ubuntu中由于禁⽤了root⽤户,默认情况下会把安装系统时建⽴的⽤户添加到sudoers中。
但在redhat和centos中并没有把任何root⽤户之外的⽤户默认的添加到sudoers之中。
这样我们在执⾏sudo 命令时就会出现xxx is not in the sudoers file. This incident will be reported.这样的错误输出。
现在为了安全起见⽐较提倡使⽤普通⽤户做⽇常操作,⽽在需要超级⽤户的时候使⽤sudo 来做,这样,我们就有必要把⼀些⽤户添加到sudoers之中。
其实把⽤户添加到sudoers之中很简单。
⾸先利⽤whereis 命令查找sudoers配置⽂件的⽬录(默认会在/etc/sudoers)[root@localhost xiaofei]# whereis sudoerssudoers: /etc/sudoers /etc/sudoers.bak /usr/share/man/man5/sudoers.5.gz然后需要切换到root⽤户,更改/etc/sudoers的权限[root@localhost xiaofei]# chmod u+w /etc/sudoers然后就可以利⽤vi编辑器来把⽤户添加到sudoers之中[root@localhost xiaofei]# vi /etc/sudoers然后找到root ALL=(ALL) ALL所在的位置,把所要添加的⽤户添加到⽂件之中,顺便提⼀下vi编辑器的⽤法。
1.下载Linux版本,64位的JDK1.7 ,下载地址:/s/1bncVBmn2.若下载到windows系统中,需要把压缩包考到linux系统,可查看我写的文章实现windows和linux系统文件互传的最简便方法建议在/etc文件夹下创建一个userdata文件夹来存放用户文件,注意:若用户没有取得sudo权限,则无法在/etc文件夹下创建文件夹,关于用户如何获得sudo权限,请查看我写的文章linux系统使用sudo命令报xxx is not in the sudoers file.This incident will be reported.的解决方法,在用户获得sudo权限后,在/etc文件夹下创建一个userdata文件夹,命令如下图所示现假设已把压缩文件拷贝到userdata文件夹中3.解压上诉压缩文件jdk-7u67-linux-x64.tar.gz到指定文件夹,建议在/usr文件夹下创建一个java文件夹来存放jdk的解压文件创建文件夹命令:sudo mkdir ../../usr/java;解压文件命令:sudo tar -zxvf ../../etc/userdata/jdk-7u67-linux-x64.tar.gz-C ../../usr/java/如下图所示4..配置环境变量,在终端键入gedit ~/.bashrc,在打开的.bashrc 文件中添加如下内容export JAVA_HOME=/usr/java/jdk1.7.0_67(注意这里的jdk版本要写你安装的版本)export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH添加后文件内容如下图所示保存后关闭该窗口,在终端键入source ~/.bashrc来使该文件生效,最后再键入java -version查看jdk是否已成功安装,若显示java version "1.7.0_67"Java(TM) SE Runtime Environment (build 1.7.0_67-b01)Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode) 则表明jdk已成功安装。
linuxsudo命令“Sudo”是Unix/Linux平台上的⼀个⾮常有⽤的⼯具,它允许系统管理员分配给普通⽤户⼀些合理的“权利”,让他们执⾏⼀些只有超级⽤户或其他特许⽤户才能完成的任务,⽐如:运⾏⼀些像mount,halt,su之类的命令,或者编辑⼀些系统配置⽂件,像/etc/mtab,/etc/samba/smb.conf等。
这样以来,就不仅减少了root⽤户的登陆次数和管理时间,也提⾼了系统安全性。
⼀. sudo的特点 sudo扮演的⾓⾊注定了它要在安全⽅⾯格外谨慎,否则就会导致⾮法⽤户攫取root权限。
同时,它还要兼顾易⽤性,让系统管理员能够更有效,更⽅便地使⽤它。
sudo设计者的宗旨是:给⽤户尽可能少的权限但仍允许完成他们的⼯作。
所以,sudo有以下特点: # 1. sudo能够限制指定⽤户在指定主机上运⾏某些命令。
# 2. sudo可以提供⽇志,忠实地记录每个⽤户使⽤sudo做了些什么,并且能将⽇志传到中⼼主机或者⽇志服务器。
# 3. sudo为系统管理员提供配置⽂件,允许系统管理员集中地管理⽤户的使⽤权限和使⽤的主机。
它默认的存放位置是/etc/sudoers。
# 4.sudo使⽤时间戳⽂件来完成类似“检票”的系统。
当⽤户执⾏sudo并且输⼊密码后,⽤户获得了⼀张默认存活期为5分钟的“⼊场券”(默认值可以在编译的时候改变)。
超时以后,⽤户必须重新输⼊密码。
⼆. sudo命令 sudo程序本⾝就是⼀个设置了SUID位的⼆进制⽂件。
我们可以检查⼀下它的权限:$ls -l /usr/bin/sudo---s--x--x 2 root root 106832 02-12 17:41 /usr/bin/sudo 它的所有者是root,所以每个⽤户都可以像root那样执⾏该程序。
设置了SUID的程序在运⾏时可以给使⽤者以所有者的EUID。
这也是为什么设置了SUID的程序必须⼩⼼编写。
但是设置⼀个命令⽂件的SUID和⽤sudo来运⾏它是不同的概念,它们起着不同的作⽤。
将一般的用户加入sudo组is not in the sudoers file. This incident will be reported解决方法(学习记录2010年02月03日星期三下午 03:33在一般用户下执行sudo命令提示xxx is not in the sudoers file. This incident will be reported.解决方法:$whereis sudoers -------找出文件所在的位置,默认都是/etc/sudoers有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替。
默认新建的用户不在sudo组,需要编辑/etc/sudoers 文件将用户加入,该文件只能使用visudo命令,1) 首先需要切换到root, su - (注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用乎的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)2) 然后visudo 或者 vim /etc/sudoers, visudo 这个和vi的用法一样,由于可能会有人不太熟悉vi,所以简要说一下步骤移动光标,到一行root ALL=(ALL) ALL的下一行,按i,插入模式,输入your_user_name ALL=(ALL) ALL然后按Esc,输入“:”再输入:wq保存退出这样就把自己加入了sudo组,可以使用sudo命令了。
3) 默认5分钟后刚才输入的sodo密码过期,下次sudo需要重新输入密码,如果觉得在sudo的时候输入密码麻烦,把刚才的输入换成如下内容即可:your_user_name ALL=(ALL) NOPASSWD: ALL。
linux ln 软连接失效解决方法1.我们可以尝试重新创建软连接。
We can try recreating the symbolic link.2.检查原始文件是否已被移动或删除。
Check if the original file has been moved or deleted.3.使用绝对路径而不是相对路径创建软连接。
Create symbolic link using absolute path instead of relative path.4.确保软连接的权限设置正确。
Ensure that the permissions for the symbolic link are set correctly.5.在创建软连接时指定符号链接的类型。
Specify the type of symbolic link when creating it.6.检查文件系统是否支持软链接。
Check if the file system supports symbolic links.7.使用readlink命令来查看软连接的目标。
Use the readlink command to view the target of the symbolic link.8.确保软连接的目标文件存在。
Make sure that the target file of the symbolic link exists.9.重新启动系统以确保软连接生效。
Restart the system to ensure that the symbolic link takes effect.10.可能需要检查文件的SELinux上下文以确保软连接被正确解析。
Check the SELinux context of the file to ensure that the symbolic link is resolved correctly.11.如果原始文件位于网络位置,可能需要在创建软连接时指定网络路径。
linux 不识别sudo命令尊敬的读者,你是否遇到过在Linux系统中,sudo命令无法正常识别的情况?这种情况可能会导致系统权限不足,无法完成某些特定操作。
在这里,我们将分析可能的原因,并提供相应的解决方案。
一、问题概述当在Linux终端中输入sudo命令时,系统会要求输入管理员密码。
然而,有时会出现密码输入后,命令仍无法正常执行的情况。
这种情况可能会影响到系统正常运行,需要及时解决。
二、可能原因1.密码错误:可能是输入的密码有误,请检查确认。
2.权限不足:尽管使用了sudo命令,但目标文件的权限仍不允许执行。
3.命令拼写错误:输入的命令可能存在拼写错误,导致系统无法识别。
4.sudo配置问题:可能是/etc/sudoers配置文件中设置不正确。
5.系统版本问题:部分Linux发行版可能对sudo命令支持不完善。
三、解决方案1.检查密码:确认输入的密码是否正确。
2.更改文件权限:使用chmod命令,增加目标文件的执行权限。
3.检查命令拼写:重新输入sudo命令,确保无误。
4.检查sudo配置:编辑/etc/sudoers文件,检查是否有错误设置。
5.升级或更换系统:考虑升级至较新的Linux发行版,或更换其他支持sudo的发行版。
四、预防措施1.定期更新系统:保持系统软件包的最新状态,以确保sudo命令的正常运行。
2.熟悉sudo命令的使用:了解sudo命令的语法和基本操作,避免误用。
3.检查文件权限:在执行可能需要管理员权限的命令前,先检查文件权限是否足够。
五、总结在Linux系统中遇到sudo命令无法识别的情况,可以通过以上分析找到问题原因并解决。
在日常使用中,熟悉sudo命令的用法、保持系统更新、检查文件权限等,可以有效预防此类问题。
linux⽤户不在sudoers⽂件中*** is not in the sudoers file. This incident will be reported.”(⽤户不在sudoers⽂件中……)处理这个问题很简单,但应该先理解其原理再操作⾸先要明⽩root的密码⼀般⽤户是不应改知道的,但⼀般⽤户有时可能要⽤到root的⼀些权限。
这⾥就有了⼀个 /etc/sudoers ⽂件,⽤来保存⼀些⽤户,使这些⽤户可以通过sudo命令来暂时获取root的权限。
这些⽤户使⽤sudo时输⼊的密码是当前⽤户密码,⽽不是root密码。
还可⼀在sudoers⽂件⾥限制⼀般⽤户的权限,这样就有了安全保证。
现在要让jack⽤户获得sudo使⽤权1.切换到超级⽤户root$su root2.查看/etc/sudoers权限,可以看到当前权限为440$ ls -all /etc/sudoers-r--r----- 1 root root 744 6⽉ 8 10:29 /etc/sudoers3.更改权限为777$chmod 777 /etc/sudoers4.编辑/etc/sudoers$vi /etc/sudoers5.在root ALL=(ALL:ALL) ALL 下⾯添加⼀⾏jack ALL=(ALL)ALL然后保存退出。
第⼀个ALL是指⽹络中的主机,我们后⾯把它改成了主机名,它指明jack可以在此主机上执⾏后⾯的命令。
第⼆个括号⾥的ALL是指⽬标⽤户,也就是以谁的⾝份去执⾏命令。
最后⼀个ALL当然就是指命令名了。
具体这⾥不作说明esc wq!6.把/etc/sudoers权限改回440$chmod 440 /etc/sudoers7.操作完成,切换到jack⽤户⼀下。
linuxroot⽤户与普通⽤户的切换免密⾸次rootlogin认证失败在linux系统⼯作时,我们经常需要来回切换不同⽤户,有时root有时普通⽤户,下⾯讲讲切换⽤户及设置切换root⽤户免密的设置。
切换⽤户root切换到普通⽤户假设现在系统的⽤户有超级⽤户:root,普通⽤户:ubuntu从root切换到普通⽤户很简单:su ubuntu即可。
普通切换到root⽅法很多,这⾥介绍三种常⽤的。
假设刚开始⽤户为ubuntu1.su root2.sudo -s3.sudo -i普通⽤户切换到root免密设置切换root⽼是提⽰你输密码,是不是很繁琐,我们能偷懒就应该偷懒,这就是效率。
建议切换到root⽤户操作# 编辑sudoers⽂件vim /etc/sudoers# 编辑内容如下,我的普通⽤户是ubuntu,所以我设置ubuntuubuntu ALL=(ALL) NOPASSWD: ALL# 强制保存退出:wq!# 当然最好还是建议使⽤visudo编辑⽂件,另外也可以通过给sudoers先加w权限写⼊,保存后减w权限# 可以切换普通⽤户后试试work?Ubuntu输⼊su命令提⽰认证失败的解决办法Ubuntu安装后,root⽤户默认是被锁定了的,不允许登录,也不允许执⾏“su命令到root”。
对于桌⾯⽤户⽽⾔,这样可以提⾼安全性。
但对于服务器可以设置成允许“su命令到root,但不允许root⽤户直接登录”。
因⽽对于Ubuntu输⼊su命令提⽰认证失败这个问题,可以通过重新设置root密码来解决。
$sudo passwd[sudo] password for xxx: <--- 输⼊安装时那个⽤户的密码Enter new UNIX password: <--- 新的root⽤户密码Retype new UNIX password: <--- 重复新的root⽤户密码passwd:已成功更新密码。
麒麟系统添加打印机报错问题总结开始菜单-控制面板-打印机,当出现如下报错时,参考如下几种解决办法解决。
1.首先排查电脑是否安装了或者安装过万里红软件,万里红软件会修改/usr/sbin/cupsd文件权限,正确权限为755(也就是-rwxr-xr-x),可以使用ll /usr/sbin/cupsd查看该文件权限(如图1为正确权限),权限不对执行sudo chmod 755 /usr/sbin/cupsd 即可解决该问题。
图12.如果该文件权限无问题使用sudo systemctl status cups查看cups服务状态,如图1绿色active(running)为正常启动状态图2或红色faild状态为失败状态。
如果是未启动状态则执行sudo systemctl start cups 启动cups服务,启动后再执行sudo systemctl status cups 查看cups服务状态,状态正常解决该问题。
图2图33.如果步骤2启动cups服务成功但是控制面板-打印机依然提示cups服务异常(图3),则使用命令sudo systemctl status cups.socket和sudo systemctl status cups.path查看cups.socket和cups.path两个服务是否正常启动,如果没启动则使用sudo systemctl start cups.socket 和sudo systemctl start cups.path启动这两个服务即可解决。
图44.如果步骤2中cups服务一致无法启动,在计算机可连接互联网的情况下执行sudo apt --purge remove cups-daemon卸载cups-daemon包,然后执行sudo apt-get install cups-daemon重装这个包即可解决。
问题总结:该问题可能是cups服务不正确,或cups进程权限被其他安全软件修改,也可能是cups的软件包故障,上述为详细解释包括操作,如果不需要理解问题原因可按照顺序直接执行下面的命令即可解决该问题。
在使用sudo命令前时,用户确保在sudoers文件中已添加xxx
ALL=(ALL) ALL (这里的xxx是你的用户名),否则会报xxx is not in the sudoers file.This incident will be reported的错误,下面说说如何解决这个错误。
1.切换root用户,在终端输入su,回车后输入root的密码即可切换到root用户
2.添加sudoers文件的写权限,命令是:chmod u+w ../etc/sudoers (若当前目录不是用户目录,则需要切换到用户目录下:cd ~)
3.编辑sudoers文件,命令是:vi ../etc/sudoers,键入i,使其处于编辑阶段,找到root ALL=(ALL) ALL,在他下面添加
xxx ALL=(ALL) ALL (这里的xxx是你的用户名),添加后如下图,按esc键后再键入:wq退出并保存即可
4.撤销sudoers文件写权限,命令:chmod u-w ../etc/sudoers,在终端完整输入的命令如下图,这样普通用户就可以使用sudo命令了。