linux 操作命令

1.删除文件和文件夹:rm -f / rm -rf 

 linux删除目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm -rf命令即可。
直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思

2.重命名例:将文件A重命名为B:mv A B,将文件夹A重命名为B:rename A B

3.切换用户:su (switch user)+用户名(不加用户名默认切换到root)

 

 

 

 

一、su

如果以普通用户user1登陆系统后,要增加一个用户,但是普通有用又没有useradd的权限,那么可以有2个办法:

1、先用exit退出系统,然后在以root用户登陆,之后useradd增加用户。

2、使用su命令,su就是switch user切换用户。

(1)su命令在不加参数时,默认切换到root用户,只要输入root的密码,就可以切换到root身份,直到使用exit退出。

注意这里虽然切换到root,但实际上并没有自动切换家目录。

 

 
  1. [mysql@ggg2 ~]$ su  
  2. 密码:  
  3. [root@ggg2 mysql]# pwd  
  4. /home/mysql  
  5. [root@ggg2 mysql]# exit  
  6. exit  

(2)su命令加上一个 - 参数,不但可以切换成root,还可以应用root的环境。

 

可以看到提示符从$变长了#。

 
  1. [mysql@ggg2 ~]$ su -  
  2. 密码:  
  3. [root@ggg2 ~]# pwd  
  4. /root  
  5. [root@ggg2 ~]# exit  
  6. logout  

(3)su命令还可以加上具体的用户名作为参数。

 

 
  1. [root@ggg2 ~]# su - mysql  
  2. [mysql@ggg2 ~]$ pwd  
  3. /home/mysql  
  4. [mysql@ggg2 ~]$ exit  
  5. logout  

 

 

二、sudo

用其他用户身份和权限执行命令,而并不是切换用户。

上面的su命令虽然方便,但是需要预先知道切换用户的密码,如果泄漏出去,系统安全会受到严峻的挑战。

语法:用户MySQL要修改用user1的密码:sudo passwd user1 。

原理是:运行命令时,系统检查/etc/sudoers 配置文件,看这个用户是否有执行sudo的权限,如果有权限,系统要求输入用户自己的密码,如果密码输入正确,系统会以root身份运行 passwd xx命令。

 

/etc/sudoers文件可以用vi修改(不建议),但是考虑到配置文件很重要,linux提供了visudo命令来修改文件,并且在保存时会自动检测语法,防止配置错误导致没办法使用sudo命令。

 

 
  1. [root@wc1 Desktop]# visudo  
  2. .............省略..................  
  3. ## Allow root to run any commands anywhere  
  4. root    ALL=(ALL)       ALL  
  5. mysql   ALL=(ALL)       ALL #把上面root的行复制粘贴,把root改成mysql  

 

含义是:

(1)用户mysql(第1列),可以从任何地方登录后(第2列),执行任何人的(第3列),任何命令(第4列)。

(2)还可以这么写:%mysql   ALL=(ALL)     ALL,就是让属于mysql用户组的用户,从任何地方登录,执行任何人的任何命令。

(3)如果不想输入密码,可以这么配置:%mysql   ALL=(ALL)    NOPASSWD: ALL,不过这样不太安全。

(4)最好不要把最后一列设置为ALL,因为这样相当于有了root的所有权限,可以按照需求来设置,比如mysql用户需要关闭、重启服务器的权限:

%mysql   ALL=(ALL)     NOPASSWD:/sbin/shutdown,  /usr/bin/reboot


首先,新建用户 user1:

 

 
  1. [root@wc1 Desktop]# useradd user1  

 

然后,mysql用户用sudo来修改用户user1的密码,如果连续3次输入mysql用户的密码都不对,那么sudo命令就不会执行:

[plain] view plain copy
 
 
 
 print?在CODE上查看代码片派生到我的代码片
    1. [mysql@wc1 ~]$ sudo passwd user1  
    2.   
    3. We trust you have received the usual lecture from the local System  
    4. Administrator. It usually boils down to these three things:  
    5.   
    6.     #1) Respect the privacy of others.  
    7.     #2) Think before you type.  
    8.     #3) With great power comes great responsibility.  
    9.   
    10. [sudo] password for mysql:   
    11. Sorry, try again.  
    12. [sudo] password for mysql:   
    13. Sorry, try again.  
    14. [sudo] password for mysql:   
    15. Sorry, try again.  
    16. sudo:3 次错误密码尝试  
    17.   
    18. [mysql@wc1 ~]$ sudo passwd user1  
    19. [sudo] password for mysql:   
    20. 更改用户 user1 的密码 。  
    21. 新的 密码:  
    22. 无效的密码: 它基于字典单词  
    23. 无效的密码: 过于简单  
    24. 重新输入新的 密码:  
    25. passwd: 所有的身份验证令牌已经成功更新。  
posted @ 2018-01-21 20:35  do+better  阅读(169)  评论(0编辑  收藏  举报