zoukankan      html  css  js  c++  java
  • 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

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

  • 相关阅读:
    HD2058The sum problem
    采用循环链表结构求解约瑟夫问题
    java线性表学习笔记(二)
    java线性表学习笔记(一)
    HD1004Let the Balloon Rise
    HD1005Number Sequence
    用c++库函数轻松解决回文问题
    accelerated C++ 中查找url(学习笔记)
    C++ 之关联容器 map
    pytorch 迁移学习[摘自官网]
  • 原文地址:https://www.cnblogs.com/chuanqi1995/p/11271734.html
Copyright © 2011-2022 走看看