树莓派命令中的sudo是什么意思

sudo命令的作用

树莓派官方系统的默认用户并不是root用户,官方系统默认用户名是pi,而默认的密码是raspberry,据说曾经很多用户因疏于防范,没有第一时间去修改树莓派默认的密码,导致出现过大范围被黑的情况。

Linux操作系统是一个多用户操作系统,允许多个用户登录和使用同一台设备,并且可以对每个用户设置不同的权限。非root用户在运行某些需要超级用户权限才可以执行的命令时,会需要用到sudo指令,说白了,sudo就类似于windows系统上的右键-以管理员身份运行。习惯于root用户的人往往会觉得多加一个sudo各种不习惯,但事实上,树莓派上的sudo指令也不是想用就用的,只有指定的用户才能够使用sudo命令获取计算机管理员的权限。这些用户会被包含在“/etc”文件夹内的sudoer文件中,当然,你同样需要sudo指令才能够访问它,就像这样:

sudo nano /etc/sudoers

所以在很多树莓派的教程中,我们都能看到sudo指令的身影,就比如我们想为树莓派搭建一个lamp环境,本来一个apt-get指令就可以了,但因为权限的问题,所以还是得在前面增加一个sudo:

sudo apt-get -y install apache2sudo apt-get -y install php-mysqlsudo apt-get -y install mariadb-server

忘记添加sudo会导致一个“Permission denied”错误花式的从我们的全世界路过,当然这对于英文薄弱的亲也不是什么坏事,顺便还能复习一下单词拼写。当遇到这类错误,又不想再重新输入一遍长长的命令时,也可以接着在下面输入如下语句,系统会以管理员权限重新执行上一次出错的命令:

sudo !!

简单来说,sudo 是一种权限管理机制,管理员可以授权于一些普通用户去执行一些root执行的操作,而不需要知道root的密码。

sudo的参数说明

  • -V 显示版本编号;
  • -h 会显示版本编号及指令的使用方式说明;
  • -l 显示出自己(执行 sudo 的使用者)的权限;
  • -v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会询问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会询问密码;
  • -k 将会强迫使用者在下一次执行 sudo 时询问密码(不论有没有超过 N 分钟);
  • -b 将要执行的指令放在后台执行;
  • -p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称,%h 会显示主机名称;
  • -u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码);
  • -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell;
  • -H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root );
  • command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令。

给TA赞助
共{{data.count}}人
人已赞助
综合资讯

Scratch求连续自然数1+2+3+...的和

2023-7-29 8:21:57

综合资讯

为树莓派安装一个CentOS系统

2023-7-29 8:22:02

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索