前言:

本文内容:Linux磁盘管理,Linux进程管理,rpm安装JDK发布项目

推荐Linux阿里云环境学习视频:【狂神说Java】Linux最通俗易懂的教程阿里云真实环境学习_哔哩哔哩_bilibili

Linux磁盘管理

Linux 磁盘管理常用三个命令为 dfdufdisk

  • df(英文全称:disk free):列出文件系统的整体磁盘使用量
  • du(英文全称:disk used):检查磁盘空间使用量
  • fdisk:用于磁盘分区

df命令

df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

1
df 选项 目录或文件名

选项参数:

  • -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
  • -k :以 KBytes 的容量显示各文件系统;
  • -m :以 MBytes 的容量显示各文件系统;
  • -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
  • -H :以 M=1000K 取代 M=1024K 的进位方式;
  • -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
  • -i :不用硬盘容量,而以 inode 的数量来显示

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@jokerdig ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 936976 0 936976 0% /dev
tmpfs 955264 0 955264 0% /dev/shm
tmpfs 955264 436 954828 1% /run
tmpfs 955264 0 955264 0% /sys/fs/cgroup
/dev/vda1 41152812 3216492 36032612 9% /
tmpfs 191052 0 191052 0% /run/user/0

[root@jokerdig ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 916M 0 916M 0% /dev
tmpfs 933M 0 933M 0% /dev/shm
tmpfs 933M 436K 933M 1% /run
tmpfs 933M 0 933M 0% /sys/fs/cgroup
/dev/vda1 40G 3.1G 35G 9% /
tmpfs 187M 0 187M 0% /run/user/0

du命令

du 命令也是查看使用空间的,但是与 df 命令不同的是du命令是对文件和目录磁盘使用的空间的查看。

1
du 选项 文件或目录名

选项参数:

  • -a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
  • -h :以人们较易读的容量格式 (G/M) 显示;
  • -s :列出总量而已,而不列出每个各别的目录占用容量;
  • -S :不包括子目录下的总计,与 -s 有点差别。
  • -k :以 KBytes 列出容量显示;
  • -m :以 MBytes 列出容量显示;

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@jokerdig home]# du
20 ./joker
124000 .
[root@jokerdig home]# du -a # 查看所有的文件与目录容量
113612 ./jdk-8u341-linux-x64.rpm
4 ./joker/.bash_history
4 ./joker/.bashrc
4 ./joker/.bash_profile
4 ./joker/.bash_logout
20 ./joker
10364 ./apache-tomcat-8.5.82.tar.gz
124000 .
[root@jokerdig home]#

fdisk命令

disk 是 Linux 的磁盘分区表操作工具。

1
fdisk 选项 装置名称

选项参数:

  • -l:输出后面接的装置所有的分区内容。

Linux进程管理

进程的概述

狭义定义:进程就是一段程序的执行过程。
广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。

每个进程都有自己对应的一个ID号。

命令

  1. 查看系统正在执行的进程信息

    1
    ps 选项

    选项参数:

    • -A:显示运行的所有进程信息;
    • -a:显示现行终端机下的所有进程,包括其他用户的进程
    • -u:显示当前用户下的进程信息;
    • -x:显示后台运行进程的参数;

    例子:

    1
    2
    3
    4
    5
    # | 在Linux中称为管道符,例如A|B,可以把A的结果输出,来操作B
    # grep 查找文件中符合条件的字符串
    # 例如: 查看mysql的所有进程信息
    [root@jokerdig home]# ps aux|grep mysql
    root 32042 0.0 0.0 221460 792 pts/0 S+ 11:04 0:00 grep --color=auto mysql
  2. 查看父进程信息

    1
    ps -ef|grep mysql # 可以查看父进程的信息,不过查看父进程更多使用目录树结构来查看
  3. 目录树

    1
    pstree 选项

    选项参数:

    • -p:显示父ID
    • -u:显示用户组

    例子:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    [root@jokerdig home]# pstree
    systemd─┬─AliSecGuard───6*[{AliSecGuard}]
    ├─AliYunDun───23*[{AliYunDun}]
    ├─AliYunDunUpdate───5*[{AliYunDunUpdate}]
    ├─NetworkManager───2*[{NetworkManager}]
    ├─2*[agetty]
    ├─aliyun-service───7*[{aliyun-service}]
    ├─assist_daemon───7*[{assist_daemon}]
    ├─atd
    ├─chronyd
    ├─crond
    ├─dbus-daemon
    ├─gssproxy───5*[{gssproxy}]
    ├─iprdump
    ├─iprinit
    ├─iprupdate
    ├─nfsdcld
    ├─nscd───10*[{nscd}]
    ├─oddjobd
    ├─polkitd───5*[{polkitd}]
    ├─rngd───2*[{rngd}]
    ├─rpc.idmapd
    ├─rpc.mountd
    ├─rpc.statd
    ├─rpcbind
    ├─rsyslogd───2*[{rsyslogd}]
    ├─sshd───sshd───sshd───bash───pstree
    ├─systemd───(sd-pam)
    ├─systemd-journal
    ├─systemd-logind
    ├─systemd-resolve
    ├─systemd-udevd
    └─tuned───3*[{tuned}]
  4. 强制结束进程

    1
    kill -9 进程ID # 强制结束该进程

rpm安装JDK发布项目

文件上传戳:Xftp文件上传

安装软件的三种方式:rpm安装,解压安装,yum在线安装;

JDK安装

  1. 下载JDK rpm,地址JDK8 Linux 下载 (需登录 Oracle)

  2. 上传到服务器,安装Java环境

    检测环境

    1
    2
    3
    4
    5
    # 检测当前是否有Java环境
    java -version
    # 如果有环境,可以选择卸载
    rpm -qa|grep jdk # 检测JDK版本信息
    rpm -e --nodeps 检测JDK版本信息

    安装JDK

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    # 安装JDK
    rpm -ivh jdk-8u341-linux-x64.rpm
    warning: jdk-8u341-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
    Verifying... ################################# [100%]
    Preparing... ################################# [100%]
    Updating / installing...
    1:jdk1.8-2000:1.8.0_341-fcs ################################# [100%]
    Unpacking JAR files...
    tools.jar...
    plugin.jar...
    javaws.jar...
    deploy.jar...
    rt.jar...
    jsse.jar...
    charsets.jar...
    localedata.jar...
    [root@jokerdig home]# java -version
    java version "1.8.0_341"
    Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
    Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)

    拓展:配置环境变量

    rpm安装JDK不需要配置环境变量,另外两种方式安装的时候需要配置环境变量。

    找到Java安装路径

    1
    2
    3
    4
    5
    6
    7
    8
    [root@jokerdig /]# cd /usr/java
    [root@jokerdig java]# ls
    default jdk1.8.0_341-amd64 latest
    [root@jokerdig java]# cd jdk1.8.0_341-amd64/
    [root@jokerdig jdk1.8.0_341-amd64]# ls
    bin include jmc.txt legal LICENSE README.html src.zip THIRDPARTYLICENSEREADME.txt
    COPYRIGHT javafx-src.zip jre lib man release THIRDPARTYLICENSEREADME-JAVAFX.txt
    [root@jokerdig jdk1.8.0_341-amd64]#

    进入配置文件

    1
    vim /etc/profile # vim编辑配置文件

    i进入编辑模式,在末尾添加Java环境配置,:wq保存退出

    1
    2
    3
    4
    # Java 环境配置
    export JAVA_HOME=/usr/java/jdk1.8.0_341-amd64
    export PATH=.:$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    刷新配置文件

    1
    source /etc/profile

发布项目

Springboot简单Web项目jar:下载地址 密码:joker

  1. 下载jar包后,使用Xftp上传到服务器

  2. 防火墙命令(前提是开启了防火墙,否则不用执行该步骤)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    # 查看firewall服务状态
    systemctl status firewalld

    # firewalld.service服务命令
    # 开启
    service firewalld start
    # 重启
    service firewalld restart
    # 关闭
    servcie firewalld stop

    # 查看防火墙规则
    firewall-cmd --list-all # 查看全部信息
    firewall-cmd --list-ports # 只看端口信息

    # 开启端口命令
    firewall-cmd --zone=public --add-port=端口号/tcp --permanent
    # 开启后需要重启防火墙
    systemctl restart firewalld.service
    # 参数解释
    --zone # 作用域
    --add-port=端口号/tcp # 添加乱口号,格式:端口号/通讯协议
    --permanent # 永久生效,没有该参数重启后失效
  3. 进入上传的目录,输入以下命令启动项目

    先保证阿里云的安全组开启8081端口

    如果开启了防火墙,还需要设置防火墙放行8081端口

    1
    java -jar springboot-03-web-0.0.1-SNAPSHOT.jar
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
      .   ____          _            __ _ _
    /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
    ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
    \\/ ___)| |_)| | | | | || (_| | ) ) ) )
    ' |____| .__|_| |_|_| |_\__, | / / / /
    =========|_|==============|___/=/_/_/_/
    :: Spring Boot :: (v2.3.0.RELEASE)

    2022-09-06 13:53:35.188 INFO 33625 --- [ main] com.jokerdig.Springboot03WebApplication : Starting Springboot03WebApplication v0.0.1-SNAPSHOT on jokerdig with PID 33625 (/home/springboot-03-web-0.0.1-SNAPSHOT.jar started by root in /home)
    2022-09-06 13:53:35.191 INFO 33625 --- [ main] com.jokerdig.Springboot03WebApplication : No active profile set, falling back to default profiles: default
    2022-09-06 13:53:36.385 INFO 33625 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8081 (http)
    2022-09-06 13:53:36.398 INFO 33625 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
    2022-09-06 13:53:36.399 INFO 33625 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.35]
    2022-09-06 13:53:36.467 INFO 33625 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
    2022-09-06 13:53:36.467 INFO 33625 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1221 ms
    2022-09-06 13:53:36.685 INFO 33625 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
    2022-09-06 13:53:36.770 INFO 33625 --- [ main] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page template: index
    2022-09-06 13:53:36.906 INFO 33625 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http) with context path ''
    2022-09-06 13:53:36.923 INFO 33625 --- [ main] com.jokerdig.Springboot03WebApplication : Started Springboot03WebApplication in 2.374 seconds (JVM running for 2.809)
  4. 访问网页

    这里使用http不是https

    http://你的公网IP:8081