Linux(Ubuntu)总结(三)

继上一篇文章Ubuntu总结(二)


十七.用户管理

增加用户

useradd 用户名

useradd -u (UID号)

useradd -p (口令)

useradd -g (分组)

useradd -s (SHELL)

useradd -d (用户目录)

如:useradd lee

增加用户名为 lee的账户

修改用户

usermod -u (新UID)

usermod -d (用户目录)

usermod -g (组名)

usermod -s (SHELL)

usermod -p (新口令)

usermod -l (新登录名)

usermod -L (锁定用户账号密码)

usermod -U (解锁用户账号)

如:usermod -u 1024 -g group2 -G root lee

将 lee用户 uid 修改为 1024,默认组改为系统中已经存在的 group2,并且加入到系统管理员组

删除用户

userdel 用户名 (删除用户账号)

userdel -r 删除账号时同时删除目录

如:userdel -r lee

删除用户名为 lee的账户并同时删除 lee的用户目录

组账户维护

groupadd 组账户名 (创建新组)

groupadd -g 指定组GID

groupmod -g 更改组的GID

groupmod -n 更改组账户名

groupdel 组账户名 (删除指定组账户)

十八.用户组状态:

su 用户名(切换用户账户)
id 用户名(显示用户的UIDGID)
whoami (显示当前用户名称)
groups (显示用户所属组)

十九.Linux 文件权限管理

1.查看文件和目录的权限

ls –al 使用 ls 不带参数只显示文件名称,通过 ls –al 可以显示文件或者目录的权限信息。

ls -l 文件名 显示信息包括:文件类型 (d 目录,- 普通文件,l 链接文件),文件权限,文件的用户,文件的所属组,文件的大小,文件的创建时间,文件的名称

drwxr-xr-x 5 suchuanqi suchuanqi 4096 Jan 31 17:28 ./

drwxr-xr-x 3 root        root        4096 Jan 31 10:51 ../

-rw------- 1 suchuanqi suchuanqi 1633 Feb  1 00:01 .bash_history

-rw-r--r-- 1 suchuanqi suchuanqi  220 Jan 31 10:51 .bash_logout

-rw-r--r-- 1 suchuanqi suchuanqi 3771 Jan 31 10:51 .bashrc

drwx------ 2 suchuanqi suchuanqi 4096 Jan 31 10:55 .cache/

drwxrwxr-x 4 suchuanqi suchuanqi 4096 Jan 31 12:28 download/

-rw-rw-r-- 1 suchuanqi suchuanqi  260 Jan 31 14:19 download.tar.gz

drwxrwxr-x 2 suchuanqi suchuanqi 4096 Jan 31 17:17 .nano/

-rw-r--r-- 1 suchuanqi suchuanqi  655 Jan 31 10:51 .profile

-rw-r--r-- 1 suchuanqi suchuanqi    0 Jan 31 11:07 .sudo_as_admin_successful

-rw-rw-r-- 2 suchuanqi suchuanqi   24 Jan 31 17:28 test.txt

-rw------- 1 suchuanqi suchuanqi 2110 Jan 31 17:28 .viminfo

-rw-r--r-- 1 lusifer lusifer 675 Oct 26 17:20 .profile

  • -:普通文件
  • rw-:说明用户 suchuanqi有读、写权限,没有运行权限
  • r--:表示用户组 suchuanqi只有读权限,没有写和运行的权限
  • r--:其他用户只有读权限,没有写权限和运行的权限

-rw-r--r--

1

suchuanqi

suchuanqi

675

Oct 26 17:20

.profile

文档类型及权限

连接数

文档所属用户

文档所属组

文档大小

文档最后被修改日期

文档名称

-

rw-

r--

r--

文档类型

文档所有者权限(user)

文档所属用户组权限(group)

其他用户权限(other)

文档类型

  • d 表示目录
  • l 表示软连接
  • – 表示文件
  • c 表示串行端口字符设备文件
  • b 表示可供存储的块设备文件
  • 余下的字符 3 个字符为一组。r 只读,w 可写,x 可执行,- 表示无此权限

连接数

指有多./.;.;.索引节点。

文档所属用户和所属组

就是文档属于哪个用户和用户组。文件所属用户和组是可以更改的

文档大小

默认是 bytes

2.更改操作权限

给文件增加可执行的权限

首先创建文件vi  test.sh

   -rw-rw-r-- 1 suchuanqi suchuanqi    4 Feb  1 02:08 test.sh   你会发现他并没有可执行的权限

然后添加可执行的权限 suchuanqi@localhost:~$ chmod +x test.sh

   -rwxrwxr-x 1 suchuanqi suchuanqi    4 Feb  1 02:08 test.sh*   你会发现他的权限增加了可执行的权限会变为绿色

根据数字来修改权限: (使用数字进行加法操作来完成权限的设置)

suchuanqi@localhost:~$ chmod 760 test.sh

   -rwxrw---- 1 suchuanqi suchuanqi    4 Feb  1 02:08 test.sh*

   表示root具有可读可写可执行权限,suchuanqi用户具有可读可写不可执行权限,其他用户具有不可读不可写不可执行权限

suchuanqi@localhost:~$ chmod 660 test.sh

   -rw-rw---- 1 suchuanqi suchuanqi    4 Feb  1 02:08 test.sh

   表示root具有可读可写不可执行权限,suchuanqi用户具有可读可写不可执行权限,其他用户具有不可读不可写不可执行权限

(下面的内容具看看就可以上面已经表示完成)

chown

是 change owner 的意思,主要作用就是改变文件或者目录所有者,所有者包含用户和用户组

chown [-R] 用户名称 文件或者目录

chown [-R] 用户名称 用户组名称 文件或目录

-R:进行递归式的权限更改,将目录下的所有文件、子目录更新为指定用户组权限

chmod

改变访问权限

chmod [who] [+ | - | =] [mode] 文件名

who

表示操作对象可以是以下字母的一个或者组合

  • u:用户 user
  • g:用户组 group
  • o:表示其他用户
  • a:表示所有用户是系统默认的

操作符号

  • +:表示添加某个权限
  • -:表示取消某个权限
  • =:赋予给定的权限,取消文档以前的所有权限

mode

表示可执行的权限,可以是 r、w、x

文件名

文件名可以使空格分开的文件列表

示例

suchuanqi@UbuntuBase:~$ ls -al test.txt

-rw-rw-r-- 1 suchuanqi suchuanqi 6 Nov  2 21:47 test.txt

suchuanqi @UbuntuBase:~$ chmod u=rwx,g+r,o+r test.txt

suchuanqi @UbuntuBase:~$ ls -al test.txt

-rwxrw-r-- 1 suchuanqi suchuanqi 6 Nov  2 21:47 test.txt

suchuanqi @UbuntuBase:~$

数字设定法

数字设定法中数字表示的含义

  • 0 表示没有任何权限
  • 1 表示有可执行权限 = x
  • 2 表示有可写权限 = w
  • 4 表示有可读权限 = r

也可以用数字来表示权限如 chmod 755 file_name

r w x

r – x

r - x

4 2 1

4 - 1

4 - 1

user

group

others

若要 rwx 属性则 4+2+1=7

若要 rw- 属性则 4+2=6

若要 r-x 属性则 4+1=5

lusifer@UbuntuBase:~$ chmod 777 test.txt

lusifer@UbuntuBase:~$ ls -al test.txt

-rwxrwxrwx 1 lusifer lusifer 6 Nov  2 21:47 test.txt

lusifer@UbuntuBase:~$ chmod 770 test.txt

lusifer@UbuntuBase:~$ ls -al test.txt

-rwxrwx--- 1 lusifer lusifer 6 Nov  2 21:47 test.txt

二十. Linux 安装基本服务环境

1.安装 Java

此处以 JDK 1.8.0_152 为例

下载地址

http://www.oracle.com/technetwork/java/javase/downloads/index.html

解压缩并移动到指定目录

 

解压缩

tar  -zxvf  jdk-8u181-linux-x64.gz

创建目录

mkdir  -p /usr/local/java

移动安装包

mv  jdk1.8.0_181/  /usr/local/java/

drwxr-xr-x  7 suchuanqi suchuanqi 4096 Jul  7  2018 jdk1.8.0_181/ 我们看到该文件的所有者是suchuanqi这个用户组所以要进行切换,具体的操作如下所示:

设置所有者

root@localhost:/usr/local/java#  chown  -R  root:root  jdk1.8.0_181/  更改该文件的权限

配置环境变量

 

配置系统环境变量

vi  /etc/environment

添加如下语句

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

export JAVA_HOME=/usr/local/java/jdk1.8.0_181

export JRE_HOME=/usr/local/java/jdk1.8.0_181/jre

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

export JAVA_HOME=/usr/local/java/jdk1.8.0_201

export JRE_HOME=/usr/local/java/jdk1.8.0_201/jre

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

配置用户环境变量

vi /etc/profile

添加如下语句

if [ "$PS1" ]; then

  if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then

    # The file bash.bashrc already sets the default PS1.

    # PS1='h:w$ '

    if [ -f /etc/bash.bashrc ]; then

      . /etc/bash.bashrc

    fi

  else

    if [ "`id -u`" -eq 0 ]; then

      PS1='# '

    else

      PS1='$ '

    fi

  fi

fi

(配置用户环境变量主要复制下面几句话即可)

export JAVA_HOME=/usr/local/java/jdk1.8.0_181

export JRE_HOME=/usr/local/java/jdk1.8.0_181/jre

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

export JAVA_HOME=/usr/local/java/jdk1.8.0_201

export JRE_HOME=/usr/local/java/jdk1.8.0_201/jre

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

if [ -d /etc/profile.d ]; then

  for i in /etc/profile.d/*.sh; do

    if [ -r $i ]; then

      . $i

    fi

  done

  unset i

fi

必须让刚刚配置的户环境变量生效

使用命令:source  /etc/profile

配置软连接(注意要进行配置软连接否则相互切换用户后java就会失效,直接复制下面的就好在root用户下操作)

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_181/jre/bin/java" 1

sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_181/bin/javac" 1

sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_181/jre/bin/javaws" 1

sudo update-alternatives --set java /usr/local/java/jdk1.8.0_181/jre/bin/java

sudo update-alternatives --set javac /usr/local/java/jdk1.8.0_181/bin/javac

sudo update-alternatives --set javaws /usr/local/java/jdk1.8.0_181/jre/bin/javaws

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_201/jre/bin/java" 1

sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_201/bin/javac" 1

sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_201/jre/bin/javaws" 1

sudo update-alternatives --set java /usr/local/java/jdk1.8.0_201/jre/bin/java

sudo update-alternatives --set javac /usr/local/java/jdk1.8.0_201/bin/javac

sudo update-alternatives --set javaws /usr/local/java/jdk1.8.0_201/jre/bin/javaws

jdk1.8.0_201

测试是否安装成功

root@UbuntuBase:/usr/local/java# java -version

java version "jdk1.8.0_181"

Java(TM) SE Runtime Environment (build jdk1.8.0_181-b16)

Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

为其他用户更新用户环境变量

Su  suchuanqi  切换到suchuanqi这个用户进行查看jdk是否生效

使用java  -version 命令你会发现并没有生效,所以我们也要使用  source  /etc/profile进行执行该文件的处理

source  /etc/profile

2.安装 Tomcat

此处以 Tomcat 8.5.34 为例apache-tomcat-8.5.34.tar.gz

下载地址

https://tomcat.apache.org/

解压缩并移动到指定目录

解压缩

tar -zxvf apache-tomcat-8.5.34.tar.gz

变更目录名

mv apache-tomcat-8.5.34 tomcat    变更名称

移动目录

mv tomcat/ /usr/local/

切换为root用户

chown -R root:root tomcat/

常用命令

启动

/usr/local/tomcat/bin/startup.sh      ./startup.sh

停止

/usr/local/tomcat/bin/shutdown.sh     ./shutdown.sh

目录内执行脚本

./startup.sh

验证安装是否成功通过地址进行访问即可

http://192.168.1.33:8080

3.安装 MySQL

安装

更新数据源

apt-get update       ----这里的目的是获得最新的mysql数据源

安装 MySQL

apt-get install mysql-server

系统将提示您在安装过程中创建 root 密码。选择一个安全的密码,并确保你记住它,因为你以后需要它。接下来,我们将完成 MySQL 的配置。

配置

因为是全新安装,您需要运行附带的安全脚本。这会更改一些不太安全的默认选项,例如远程 root 登录和示例用户。在旧版本的 MySQL 上,您需要手动初始化数据目录,但 Mysql 5.7 已经自动完成了。

运行安全脚本:

mysql_secure_installation   -------这里如果是安装5.7版本的话不用管它,如果是5.7以下要进行修改

这将提示您输入您在之前步骤中创建的 root 密码。您可以按 Y,然后 ENTER 接受所有后续问题的默认值,但是要询问您是否要更改 root 密码。您只需在之前步骤中进行设置即可,因此无需现在更改。

测试

按上边方式安装完成后,MySQL 应该已经开始自动运行了。要测试它,请检查其状态。

suchuanqi@ubuntu:~$ systemctl status mysql.service     ----这里是查看mysql的服务是否正在运行
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2017-11-21 13:04:34 CST; 3min 24s ago
 Main PID: 2169 (mysqld)
   CGroup: /system.slice/mysql.service
           └─2169 /usr/sbin/mysqld
 
Nov 21 13:04:33 ubuntu systemd[1]: Starting MySQL Community Server...
Nov 21 13:04:34 ubuntu systemd[1]: Started MySQL Community Server.

查看 MySQL 版本:

mysqladmin -p -u root version                        *****

配置远程访问

如果不做任何的配置的话直接访问系统中的mysql是访问不到的,因为默认情况下只支持本地访问不支持远程访问mysql,所以要做以下配置的修改                                   *****

修改配置文件

vi /etc/mysql/mysql.conf.d/mysqld.cnf                                   *****

注释掉(语句前面加上 # 即可):bind-address = 127.0.0.1                    *****

重启 MySQL

service mysql restart                                          *****

登录 MySQL

mysql -u root –p     然后进入mysql然后设置下面的授权操作即可,安全级别操作可以不用去管                                               *****

查看和设置密码安全级别

select @@validate_password_policy;
set global validate_password_policy=0;

查看和设置密码长度限制

select @@validate_password_length;
set global validate_password_length=1;

授权 root 用户允许所有人连接

grant all privileges on *.* to 'root'@'%' identified by '123456';    *****进入mysql给予外部权限

命令

启动

service mysql start

停止

service mysql stop

重启

service mysql restart

其它配置

修改配置 mysqld.cnf 配置文件

vi /etc/mysql/mysql.conf.d/mysqld.cnf

配置默认字符集

在 [mysqld] 节点上增加如下配置

[client]
default-character-set=utf8

在 [mysqld] 节点底部增加如下配置

default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci

配置忽略数据库大小写敏感

在 [mysqld] 节点底部增加如下配置

lower-case-table-names = 1

最后根据虚拟机进行项目的部署及测试工作即可……….

原文地址:https://www.cnblogs.com/chuanqi1995/p/11271734.html