97.【Linux】(六)

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云防火墙,500元 1000GB
简介: 97.【Linux】

3. du(查看内存)

Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的,这里介绍Linux du命令。

du [-ahskm] 文件或目录名称

选项与参数:

  • -a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
  • -h :以人们较易读的容量格式 (G/M) 显示;
  • -s :列出总量而已,而不列出每个各别的目录占用容量;
  • -S :不包括子目录下的总计,与 -s 有点差别。
  • -k :以 KBytes 列出容量显示;
  • -m :以 MBytes 列出容量显示;
# 只列出当前目录下的所有文件夹容量(包括隐藏文件夹):
# 直接输入 du 没有加任何选项时,则 du 会分析当前所在目录的文件与目录所占用的硬盘空间。
[root@jsxs home]# du
16./redis
8./www/.oracle_jre_usage  # 包括隐藏文件的目录
24./www
48.                        # 这个目录(.)所占用的总量
# 将文件的容量也列出来
[root@jsxs home]# du -a
4./redis/.bash_profile
4./redis/.bash_logout    
....中间省略....
4./jsxs.txt # 有文件的列表了
48.
# 检查根目录底下每个目录所占用的容量
   .
[root@Jsxs ~]# du -sm /*
0       /bin
132     /boot
1       /dev
26      /etc
236     /home
0       /lib
0       /lib64
1       /lost+found
1       /media
1       /mnt
32      /opt
1       /patch
du: cannot access '/proc/229476/task/229476/fd/4': No such file or directory
du: cannot access '/proc/229476/task/229476/fdinfo/4': No such file or directory
du: cannot access '/proc/229476/fd/3': No such file or directory
du: cannot access '/proc/229476/fdinfo/3': No such file or directory
0       /proc
65      /root
1       /run
0       /sbin
1       /sBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAclear
1       /srv
0       /sys
1       /tmp
3364    /usr
368     /var
5157    /www

通配符 * 来代表每个目录。

与 df 不一样的是,du 这个命令其实会直接到文件系统内去搜寻所有的文件数据。

4.磁盘挂载与卸除

根文件系统之外的其他文件要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”,此目录即为“挂载点”,解除此关联关系的过程称之为“卸载”

Linux 的磁盘挂载使用mount命令,卸载使用umount命令。

磁盘挂载语法:

mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点

测试:

# 将 /dev/hdc6 挂载到 /mnt/hdc6 上面!
[root@www ~]# mkdir /mnt/hdc6
[root@www ~]# mount /dev/hdc6 /mnt/hdc6
[root@www ~]# df
Filesystem           1K-blocks     Used Available Use% Mounted on
/dev/hdc6              1976312     42072   1833836   3% /mnt/hdc6

磁盘卸载命令 umount 语法:

umount [-fn] 装置文件名或挂载点

选项与参数:

-f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;

-n :不升级 /etc/mtab 情况下卸除。

卸载/dev/hdc6

[root@www ~]# umount /dev/hdc6

(九)、进程管理

开发人员,linux偏向于使用即可

1.什么是进程

  • 在linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号
  • 每一个进程,都会有一个父进程
  • 进程可以有两种存在方式: 前台 后台运行
  • 一般的话服务都是后台运行的,基本的程序都是前台运行的

2.命令

ps 查看当前系统中正在执行的各种进程的信息!

ps -xx:

  • -a: 显示当前终端运行的所有的进程信息
  • -u: 以用户的信息显示进程
  • -x: 显示后台运行进程的参数
# ps -aux   查看所有的进程
# 查看某个进程的信息
ps -aux|grep mysql
ps -aux|grep redis
# |   在linux这个叫做管道符   A|B
# grep 查找文件中符合条件的字符串

记住一个命令即可 ps -xx|grep 进程名字! 过滤进程信息

ps -ef: 可以查看父进程的信息

ps -ef|grep mysql   # 查看父进程,我们一般可以通过目录树结构查看
pstree
  -p   显示父id
  -u   显示用户组

结束进程:

kill -9  pid

平时写的一个java代码死循环了,可以选择结束进程

(十)、环境安装

安装软件一般有三种方式:

  • rpm(jdk) 在线发布一个springboot项目
  • 解压缩(tomcat ,启动并通过外网访问)
  • yum在线安装(docker:直接安装运行)

1.JDK (rpm安装)

1、rpm下载地址http://www.oracle.com/technetwork/java/javase/downloads/index.html

2、如果有安装openjdk 则卸载

[root@kuangshen ~]# java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
# 检查
[root@kuangshen ~]# rpm -qa|grep jdk
jdk1.8.0_121-1.8.0_121-fcs.x86_64
# 卸载 -e --nodeps 强制删除
[root@kuangshen ~]# rpm -e --nodeps jdk1.8.0_121-1.8.0_121-fcs.x86_64
[root@kuangshen ~]# java -version
-bash: /usr/bin/java: No such file or directory  # OK

3.安装JDK

# 安装java rpm
[root@kuangshen kuangshen]# rpm -ivh jdk-8u221-linux-x64.rpm
  # 安装完成后配置环境变量 文件:/etc/profile
JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
# 保存退出
# 让新增的环境变量生效!
source /etc/profile
# 测试 java -version
[root@kuangshen java]# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

发布一个项目练手(springboot项目)

# 开启防火墙端口  (springboot项目的端口号为9000)
firewall-cmd --zone=public --add-port=9000/tcp --permanent
# 重启防火墙
systemctl restart firewalld.service
# 查看防火墙规则
firewall-cmd --list-all    # 查看全部信息
firewall-cmd --list-ports  # 只看端口信息
  1. 先测试jar能本地跑起来
  2. 使用xftp放到 /home/kuangshen 目录中
  3. 使用 java -jar XXXX.jar (nohup 挂起 ,服务器断了,也能访问网站)

2.Tomcat(解压安装)

SSM war 就需要放到tomcat中运行

1、安装好了Java环境后我们可以测试下Tomcat!准备好Tomcat的安装包!apache-tomcat-9.0.44.tar.gz

2、解压文件

tar -zxvf apache-tomcat-9.0.73.tar.gz

3、运行Tomcat,进入bin目录,和我们以前在Windows下看的都是一样的

# 执行:startup.sh -->启动tomcat
# 执行:shutdown.sh -->关闭tomcat
./startup.sh
./shutdown.sh

4、确保Linux的防火墙端口是开启的,如果是阿里云,需要保证阿里云的安全组策略是开放的!

# 查看firewall服务状态
systemctl status firewalld
# 开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all    # 查看全部信息
firewall-cmd --list-ports  # 只看端口信息
# 开启端口
开端口命令:firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙:systemctl restart firewalld.service
命令含义:
--zone #作用域
--add-port=80/tcp  #添加端口,格式为:端口/通讯协议
--permanent   #永久生效,没有此参数重启后失效

上线自己的网站

域名解析,如果端口是80–http或者443–https可以直接访问,如果是9000 8080,就需要通过Apache或者Nginx做一下反向代理,修改配置文件即可

3.Docker (yum安装)

在linux执行,一定要联网,yum在线安装

基于CentOS 7 安装

  1. 官网安装参考手册:https://docs.docker.com/engine/install/centos/
  2. 确定你是CentOS 7及以上版本
[root@192 ~]# cat cat /etc/redhat-release
cat: cat: No such file or directory
CentOS Linux release 7.9.2009 (Core)
  1. 安装我么的准备环境
yum -y install 包名   # yum install 安装命令  -y 所有提示都为y
yum -y install gcc
yum -y install gcc-c++
  1. 卸载旧版本 后面根据官网安装即可
# 官网版本
yum remove docker \
          docker-client \
          docker-client-latest \
          docker-common \
          docker-latest \
          docker-latest-logrotate \
          docker-logrotate \
          docker-engine
  1. 安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 阿里云镜像
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  1. 更新yum软件包索引
yum makecache fast
  1. 安装Docker CE
yum -y install docker-ce docker-ce-cli containerd.io
  1. 启动docker
systemctl start docker
  1. 测试
docker version
docker run hello-world
docker images
相关文章
|
3天前
|
存储 Linux 数据安全/隐私保护
linux cryptsetup
cryptsetup 是一个用于设置和管理 LUKS 加密卷的命令行工具,常用于 Linux 系统。它可以创建、打开、关闭加密卷,更改密码,添加和删除密钥槽,以及显示卷信息,确保数据安全和隐私。
11 2
|
30天前
|
Linux Shell Perl
Linux三剑客(下)
Linux三剑客(下)
39 1
|
30天前
|
Linux
Linux三剑客(上)
Linux三剑客(上)
33 0
|
NoSQL Linux 网络安全
linux问题总结
linux问题总结
|
分布式计算 安全 Ubuntu
为什么选择Linux
Windows 已经占据了这个世界大部分电脑的屏幕--从 PC 到服务器。如果已经习惯了在 Windows 下工作,有什么必要选择 eLinux 呢?Linux的开发模式从某个角度回答了这个问题。Linux是免费的,用户并不需要为使用这个系统交付任何费用。当然,这并不是唯一的,也不是最重要的理由。相对于 Windows 和其他操作系统,Linux拥有其独特的优势。这些优势使 Linux 长期以来得到了大量的应用和支持,并在最近几年收获了爆炸性的发展。
为什么选择Linux
|
Linux 程序员 对象存储
linux音频编程指南
一、数字音频 音频信号是一种连续变化的模拟信号,但计算机只能处理和记录二进制的数字信号,由自然音源得到的音频信号必须经过一定的变换,成为数字音频信号之后,才能送到计算机中作进一步的处理。
1254 0
|
安全 Linux 数据安全/隐私保护
|
Linux Perl
Linux三剑客
awk image.png image.png BEGIN块 image.png awk 'BEGIN{a=11;if(a>=9){print "ok"}}' image.
1227 0
|
Web App开发 Linux