Linux:用户相关

1. 用户添加、删除、更新

  • 添加用户
$ useradd [选项] <用户名>

常用选项

选项 功能
-d <目录> 指定主目录位置
-M 不创建主目录
-s 指定默认 SHELL
-u 指定用户 ID
-g |<组名> 指定用户主要组 ID 或名称(若不指定,默认创建一个与用户名相同的组作为主要组)
-G <组名 1> [<组名 2> ...] 指定加入的附加组列表
-c <描述> 为用户添加描述

例如可以

$ useradd -d /home/test -u test

或者其实直接使用

$ useradd test

可以更精简的添加一个test用户,其主目录为/home/test

  • 设置密码
$ passwd <用户名>
$ passwd test
  • 删除用户
$ userdel [选项] <用户名>

常用选项

选项 功能
-r 删除用户的主目录和邮件目录
-f 强制删除用户(可以删除已登录的用户,不建议使用)
  • 修改用户参数
$ usermod [选项] <用户名>

常用选项可参照添加用户

2. 普通用户相关操作(不在任意含有root权限组)

  • 安装应用
    亲测使用相关命令直接安装依赖或软件会因为权限而失败。


    Linux:用户相关_第1张图片
    命令安装失败.png

    图中可能软件包不存在,但不影响说明问题
    不过通过源码文件然后通过设置环境变量还是可以有效安装的。

2.1 安装Java并配置环境变量

  • 将下载的jdk压缩包上传到主目录
$ scp %源文件路径% %username%@%ip%:%目的服务器存储路径%
$ scp jdk-8u161-linux-x64.tar.gz [email protected]:/home/test

爱折腾的笔友可能会发现,如果我设置的路径不是当前用户主目录会上传失败,提示权限错误。这是因为文件所属用户组限制,在没有root权限的用户上传文件到root权限所属文件夹时会因权限而失败。


文件夹用户组.png

Linux:用户相关_第2张图片
文件夹用户组.png

同理,你对于所有文件的操作上,没有权限访问的文件只有读取权,没有写入或修改权。

  • 解压jdk压缩包
$ tar xvf jdk-8u161-linux-x64.tar.gz     #解压Java软件包

如果当前用户拥有root权限,一般还会在解压之后,利用mv命令,将文件夹移动到自己喜好的其他路径,如/usr/local,这里因为权限问题,只能操作主目录,就不做此操作。

Linux 环境变量说明
全局环境变量
  • etc/profile: 此文件为系统的每个用户设置环境信息。当用户登录时,该文件被执行一次,并从 /etc/profile.d 目录的配置文件中搜集shell 的设置。一般用于设置所有用户使用的全局变量。
  • /etc/bashrc: 当 bash shell 被打开时,该文件被读取。也就是说,每次新打开一个终端 shell,该文件就会被读取。
单个用户
  • ~/.bash_profile 或 ~/.profile: 只对单个用户生效,当用户登录时该文件仅执行一次。用户可使用该文件添加自己使用的 shell 变量信息。另外在不同的LINUX操作系统下,这个文件可能是不同的,可能是 ~/.bash_profile, ~/.bash_login 或 ~/.profile 其中的一种或几种,如果存在几种的话,那么执行的顺序便是:~/.bash_profile、 ~/.bash_login、 ~/.profile。比如 Ubuntu 系统一般是 ~/.profile 文件。
  • ~/.bashrc: 只对单个用户生效,当登录以及每次打开新的 shell 时,该文件被读取。
  • 设置java环境变量
$ vim ~/.bash_profile 

写入如下内容

# java env
export JAVA_HOME=/home/test/jdk1.8.0_161
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
$ soucre ~/.bash_profile

立即应用本次修改

  • 测试Java是否配置成功
$ java -version
测试.png

你可能感兴趣的:(Linux:用户相关)