Linux 之用户管理、权限管理、程序安装卸载

一. 用户管理
1. 查看账户
(1). 查看当前账号:whoami

(2). 查看系统当前登录的账号:who

补充常用选项:

(3). 查看系统所有的账号: cat /etc/passwd

2. exit:退出登录账户
如果是图形界面,退出当前终端;
如果是使用 ssh 远程登录,退出登陆账户;
如果是切换后的登陆用户,退出则返回上一个登陆账号。
3. useradd:添加用户
常用指令:【sudo useradd -m 用户名】,创建用户名,并且创建与用户名相同的目录和用户组。

参数说明:

补充说明
(1). Linux 每个用户都要有一个主目录,主目录就是第一次登陆系统,用户的默认当前目录(/home/用户);
(2). 每一个用户必须有一个主目录,所以用 useradd 创建用户的时候,一定给用户指定一个主目录(或者自动默认创建);
(3). 用户的主目录一般要放到根目录的 home 目录下,用户的主目录和用户名是相同的;
(4). 如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。
C++入门到精通 Linux 学习链接:零基础入门 C++Linux

其它命令组合:
(1). 指定目录:【sudo useradd -d /home/lmr2 ypf2 -m】,创建 ypf2 用户,如果 /home/lmr2 目录不存在,就自动创建这个目录,同时用户属于 ypf2 组

(2). 指定目录和组名:【sudo useradd -d /home/a a -g mygroup1 -m】,创建一个用户名字叫 a,主目录在/home/a,如果主目录不存在,就自动创建主目录,同时用户属于 mygroup1 组

4. passwd:设置用户密码
命令组合:【sudo passwd 用户名】,然后两次输入密码

5. userdel:删除用户

命令组合:【sudo userdel -r xxx】

6. su:切换用户
命令组合:【su - 用户名】,如果不写中间的 -,只切换了账户,没有切换到对应的工作目录

7. 查看有哪些组
(1). 写法 1:cat /etc/group

(2). 写法 2:groupmod + 空格 + 两次 tab

8. groupadd:添加组
命令组合:【sudo groupadd 组名】

9. groupdel:删除组
命令组合:【sudo groupdel 组名】


10. groups:查看用户所在的组
命令组合:【groups 用户名】

11. usermod:修改用户所在的组
命令组合:【sudo usermod -g 用户组 用户名】

12. gpasswd :将用户添加到某个组中
C++高级开发学习地址:C/C++Linux服务器开发高级架构师/Linux后台架构师-学习视频
学习路线、学习资料有需要的可以自行添加:Q群:720209036 点击加入~群文件共享

命令组合【sudo gpasswd -a 用户名 目标组】


PS:与 usermod 是修改用户所在的当前组,gpasswd 是将用户额外添加到一个新组中。
二. 权限管理
1. 为创建的普通用户添加 sudo 权限
新创建的用户,默认不能 sudo,需要进行一下操作.
指令:【sudo usermod -a -g sudo 用户名】

PS: usermod -g 与 -G 的区别
-g:用来制定这个用户默认的用户组
-G:一般配合'-a'来完成向其它组添加
2. 修改文件权限: chmod
(1). 权限的所有者

如何查看呢?

(2). 修改权限可以使用的符号

(3). 字母法修改权限

举例:将文件拥有者的权限设置为只读。

举例:将文件拥有者设置为只读、同组者设置为读写、其他人的权限为只写。

(4). 数字法修改权限

举例:执行:chmod u=rwx,g=rx,o=r ypf.txt 就等同于:chmod 754 ypf.txt
(剖析 7=1+2+4,所以代表可读可写可执行,5=1+4,所以代表可读可执行 4 代表可读)

常用组合:
(1). 赋予文件或目录所有权限:【chmod 777 ypf.txt】
(2). 递归赋予文件或目录所有权限:【chmod -R 777 /ypf/test1】
3. 修改文件所有者:chown
命令:【sudo chown 用户名 文件名】
举例:将 ypf.txt 这个文件拥有者改为用户 ypf1

4. 修改文件所属组:chgrp
命令:【sudo chgrp 组名 文件名】
举例:将 ypf.txt 这个文件所属组改为组 ypf1

三. 程序安装卸载
Linux 安装软件主要有 4 种方式,以 Centos/Ubuntu 为例,进行说明:
(1). 二进制发布包
软件已经针对具体平台编译打包发布,只要解压,修改配置即可。
(2). RPM 包
软件已经按照 redhat 的包管理工具规范 RPM 进行打包发布,需要获取到相应的软件 RPM 发布包,然后用 RPM 命令进行安装。
(3).源码编译安装
软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。
(4). Yum 在线安装
软件已经以 RPM 规范打包,但发布在了网络上的一些服务器上,可用 yum 在线安装服务器上的 rpm 软件,并且会自动解决软件安装过程中的库依赖问题。
特别注意:下面指令 ubuntu 系统使用 apt-get,centos 系统使用的是 yum,其它都相同!!!
Ubuntu 推荐使用 apt 进行下载、安装。会从 ubuntu 官网下载(中国区镜像),如果下载速度慢的话,可以设置从其他镜像下载,具体搜索“Ubuntu apt-get 镜像”,执行某些程序的时候,如果程序没安装,还会提示你,比如执行 vim、tree 等。
常用的有:
(1). 搜索: 【sudo apt-get search 包名】
(2). 安装 “sudo apt-get install 程序名”,比如 “sudo apt-get install tree” ,可以简写【sudo apt install tree】
(3). 卸载 “sudo apt-get remove 程序名”, 比如 “sudo apt-get remove tree”,可以简写【sudo apt remove tree】
补充一下其他常用指令:
原文地址:第三节:Linux 入门之用户管理、权限管理、程序安装卸载 - Yaopengfei - 博客园
评论