关键词:
1、磁盘管理
1.1、概述
Linux磁盘管理好坏直接关系到整个系统的性能问题。
Linux磁盘管理常用命令为 df、du。
- df :列出文件系统的整体磁盘使用量
- du:检查磁盘空间使用量
1.2、df
df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
语法:
df [-ahikHTm] [目录或文件名]
选项与参数:
- -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
- -k :以 KBytes 的容量显示各文件系统;
- -m :以 MBytes 的容量显示各文件系统;
- -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
- -H :以 M=1000K 取代 M=1024K 的进位方式;
- -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
- -i :不用硬盘容量,而以 inode 的数量来显示
测试:
# 将系统内所有的文件系统列出来!
# 在 Linux 底下如果 df 没有加任何选项
# 那么默认会将系统内所有的 (不含特殊内存内的文件系统与 swap) 都以 1 Kbytes 的容量来列出来!
root@conner-virtual-machine:/home# df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 2999916 0 2999916 0% /dev
tmpfs 605896 1896 604000 1% /run
/dev/sda5 19992176 6808496 12145088 36% /
tmpfs 3029464 0 3029464 0% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 3029464 0 3029464 0% /sys/fs/cgroup
# 将容量结果以易读的容量格式显示出来
root@conner-virtual-machine:/home# df -h
Filesystem Size Used Avail Use% Mounted on
udev 2.9G 0 2.9G 0% /dev
tmpfs 592M 1.9M 590M 1% /run
/dev/sda5 20G 6.5G 12G 36% /
tmpfs 2.9G 0 2.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 2.9G 0 2.9G 0% /sys/fs/cgroup
# 将系统内的所有特殊文件格式及名称都列出来
root@conner-virtual-machine:/home# df -aT
Filesystem Type 1K-blocks Used Available Use% Mounted on
sysfs sysfs 0 0 0 - /sys
proc proc 0 0 0 - /proc
udev devtmpfs 2999916 0 2999916 0% /dev
devpts devpts 0 0 0 - /dev/pts
tmpfs tmpfs 605896 1896 604000 1% /run
# 将 /etc 底下的可用的磁盘容量以易读的容量格式显示
root@conner-virtual-machine:/home# df -h /etc
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 20G 6.5G 12G 36% /
1.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@conner-virtual-machine:/home# du
4 ./conner/Public
4 ./conner/Desktop
4 ./conner/.mozilla/extensions
4 ./conner/.mozilla/systemextensionsdev
4 ./conner/.mozilla/firefox/Pending Pings
# 检查根目录底下每个目录所占用的容量
root@conner-virtual-machine:/home# du -sm /*
0 /bin
137 /boot
1 /cdrom
0 /dev
13 /etc
82 /home
通配符 * 来代表每个目录。
与 df 不一样的是,du 这个命令其实会直接到文件系统内去搜寻所有的文件数据。
1.4、磁盘挂载与卸除
根文件系统之外的其他文件要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”,此目录即为“挂载点”,解除此关联关系的过程称之为“卸载”
通俗解释:
插入新硬盘,分了新磁盘区sdb1。它现在还不属于/。把新硬盘的区sdb1挂载到工作目录的/Share/文件夹下,之后访问这个/Share/文件夹就相当于访问这个硬盘2的sdb1分区了。对/Share/的任何操作,都相当于对sdb1里文件的操作。
Linux 的磁盘挂载使用mount命令,卸载使用umount命令。
磁盘挂载语法:
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
磁盘卸载命令 umount 语法:
umount [-fn] 装置文件名或挂载点
选项与参数:
- -f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;
- -n :不升级 /etc/mtab 情况下卸除。
3、进程管理
3.1、概述
-
在Linux中,每一个程序都是有己的一个进程,每一个进程都有一个id号
-
每一个进程呢,都会有一个父进程
-
进程可以有两种存在方式︰前台!后台运行
-
一般的话服务都是后台运行的,基本的程序都是前台运行的
3.2、命令
语法:
ps -xx # 查看当前系统中正在执行的各种进程的信息
参数:
- -a:显示当前终端运行的所有进程信息(当前进程只有一个)
- -u:以用户的信息显示进程
- -x:显示后台运行进程的参数
例:
# ps -aux 查看所有的进程
ps -aux|grep mysql
# | 在Linux这个叫做管道符 A|B
# grep 查找文件中符合条件的字符串
ps -ef:可以查看到父进程的信息
ps -ef|grep mysql # 看父进程我们一般通过目录树来看
# 进程树
pstree -pu
-p 显示父id
-u 显示用户组
结束进程:
语法:
kill -9 进程的id
4、软件安装
4.1、jkd安装(rpm安装)
1、下载地址:https://www.oracle.com/java/technologies/oracle-java-archive-downloads.html (下载完通过Xftp传到Linux上)
2、安装jdk
-
安装alien
-
apt-get install alien
-
-
使用alien将rpm包转换为deb格式的包
-
alien jdk-9.0.4_linux-x64_bin.rpm
-
-
使用dpkg安装
-
dpkg -i jdk-9.0.4_9.0.4-1_amd64.deb
-
-
配置环境变量
-
#没有jre需要在java根目录下,使用终端执行 bin/jlink --module-path jmods --add-modules java.desktop --output jre # 进入 /etc/profile 配置文件在最下面进行配置 JAVA_HOME=/usr/java/jdk-9.0.4 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 # 如果输出下面,那么配置成功 java version "9.0.4" Java(TM) SE Runtime Environment (build 9.0.4+11) Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
-
3、卸载jdk
java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
# 检查
root@conner-virtual-machine:/home# dpkg --get-selections|grep jdk
jdk-9.0.4 install
# 卸载 -r是保留配置,-P是不保留配置
root@conner-virtual-machine:~# dpkg -r jdk-9.0.4
(Reading database ... 172474 files and directories currently installed.)
Removing jdk-9.0.4 (9.0.4-1) ...
# 检查是否卸载
root@conner-virtual-machine:~# java -version
-bash: /usr/java/jdk-9.0.4/bin/java: No such file or directory
4.2、Tomcat安装(解压缩安装)
1、下载地址:https://tomcat.apache.org/download-90.cgi(下载完通过Xftp传到Linux上)
2、将文件移动到/usr/tomcat/下,并解压!
# 创建tomcat目录
root@conner-virtual-machine:/home/tools# mkdir /usr/tomcat
# 移动
root@conner-virtual-machine:/home/tools# mv apache-tomcat-9.0.43.tar.gz /usr/tomcat
root@conner-virtual-machine:/home/tools# cd /usr/tomcat
root@conner-virtual-machine:/usr/tomcat# ls
apache-tomcat-9.0.43.tar.gz
# 解压
root@conner-virtual-machine:/usr/tomcat# tar -zxvf apache-tomcat-9.0.43.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
# 关闭端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
#重启防火墙
systemctl restart firewalld.service
# 命令含义:
--zone #作用域
--add-port=8080/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
4.3、安装Docker(apt安装)
基于Ubuntu 20.04 安装
-
查看Ubuntu版本
root@conner-virtual-machine:/etc# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.2 LTS Release: 20.04 Codename: focal
-
卸载旧版本
apt-get remove docker docker-engine docker.io containerd runc
-
更新apt包索引
apt-get update
-
安装 apt 依赖包,用于通过HTTPS来获取仓库
apt-get install \\ apt-transport-https \\ ca-certificates \\ curl \\ gnupg \\ lsb-release
-
添加阿里云的GPG密钥
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
-
设置阿里云镜像源
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
-
更新
apt-get update
-
查看有哪些版本
apt-cache madison docker-ce
-
安装最新版或指定版
#安装最新版 apt-get install docker-ce docker-ce-cli containerd.io #安装特定版 apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
-
启动docker
systemctl start docker
-
测试
# docker版本 docker version # docker执行 docker run hello-world # docker镜像 docker images
linux软件安装之apt+dpkg工具(代码片段)
...安装方式Linux上的软件安装主要有四种方式:在线安装从磁盘安装deb软件包从二进制软件包安装从源代码编译安装aptAPT是AdvancePackagingTool(高级包装工具)的缩写,是Debian及其派生发行版的软件包管理器,APT可以自动下载,配置... 查看详情
linux挂载磁盘以及扩容主分区(代码片段)
...行挂载和扩容主分区以解决问题。本文主要介绍linux系统磁盘分区、挂载以及扩容主分区的具体操作步骤。linux挂载磁盘以及扩容主分区*:first-childmargin-top:0!important;body>*:last-child 查看详情
大数据学习之_01_linux学习_02_组管理和权限管理+定时任务调度+linux磁盘分区挂载+linux的网络配置+进程管理(重点)+软件包管理+大厂面试题+感悟分享+资料附录(代码片段)
...践-警察和土匪游戏11定时任务调度11.1crond任务调度12linux磁盘分区、挂载12.1分区的基本知识12.2Linux分区12.3挂载的经典案例12.4查询系统整体磁盘使用情况12.5查询指定目录的磁盘占用情况12.6磁盘情况-工作中实用指令13linux的网络配... 查看详情
入门学习linux&&git命令大集合(代码片段)
...inux安装--安装步骤Linux常见目录介绍Linux常用命令基础+磁盘+文件管理命令进阶命令文本编辑vimLinux系统管理软件包管理网络管理进程管理磁盘管理GitGit常识Git常用基本操作Git分支管理Git团队开发常用操作LinuxLinux常识操作系... 查看详情
入门学习linux&&git命令大集合(代码片段)
...inux安装--安装步骤Linux常见目录介绍Linux常用命令基础+磁盘+文件管理命令进阶命令文本编辑vimLinux系统管理软件包管理网络管理进程管理磁盘管理GitGit常识Git常用基本操作Git分支管理Git团队开发常用操作LinuxLinux常识操作系... 查看详情
linux命令学习符以及安装程序(代码片段)
...接和软链接Vim编辑器vim三种使用方式账号管理用户组管理磁盘管理进程管理结束进程三种方式的安装rpm安装方式压缩包安装方式yum安装一级目录二级目录三级目录关机sync 查看详情
挂载ntfs分区,离线安装ntfs-3g(linux挂载ntfs格式磁盘的方法)(代码片段)
挂载NTFS分区,离线安装NTFS-3G(Linux挂载NTFS格式磁盘的方法)本文档环境为centos7.9版本目录挂载NTFS分区,离线安装NTFS-3G(Linux挂载NTFS格式磁盘的方法)一、NTFS-3G说明二、在线安装(有网络环境)三、离线安装(无网络环境)1单... 查看详情
大数据之路之linux篇(代码片段)
...础篇2.1Linux安装2.2Linux用户管理、组管理、权限管理2.3Linux磁盘基础知识、分类、分区、挂载、卸载、扩容等操作;2.4Linux网络配置(配置网卡、固定IP,固定hostname,终端远程登录)2.5Linux开关机、重启2.6Linux的... 查看详情
巧用tail查看软件的安装进程(代码片段)
...可以使用tail命令来跟踪安装日志的尾部,来观察安装的进程。具体说明:比如:我用perlbrew安装perl:perlbrewinstallperl-5.26.1这时候,perlbrew提示要好久才能安装好,你可以通过tail来查看安装进程:Thiscou 查看详情
一款免费监控aix与linux的软件--nmon(代码片段)
...括:CPU使用率内存使用情况内核统计信息和运行队列信息磁盘I/O速度、传输和读/写比率文件系统中的可用空间磁盘适配器网络I/O速度、传输和读/写比率页面空间和页面速度CPU和AIX规范消耗资源最多的进程IBMHTTPWeb缓存用户自定义... 查看详情
markdown所有linux软件安装(代码片段)
linux中的yum安装介绍(代码片段)
Linux中的yum安装文章目录Linux中的yum安装Linux软件包管理器yum什么是软件包yum软件包管理器查看软件包安装卸载Linux软件包管理器yumLinux当中怎么安装软件呢?Linux软件安装方式:源码安装rpm包安装yum(推荐)什么是软件包在Lin... 查看详情
linux的cpu和磁盘io优先级设置(代码片段)
...制,可以限制、记录、隔离一组进程所使用的cpu、内存、磁盘、网络等资源,是docker等容器的基础技术之一限制磁盘io:ionice:调整io调度的优先级cgroups这里只说nice和ionice, 查看详情
linux命令(持续更新)(代码片段)
...http://网址ftp://地址file://路径systemd服务名称(也是初始化进程)systemctl配置工具 start/stop/restart/status 查看详情
linux软件安装(代码片段)
Linux软件安装这里主要有三种:编译安装(麻烦,不推荐)rpm安装(一般,不太推荐)yum安装(推荐)一、编译安装编译安装是最麻烦的方式,一般不推荐使用。但是我们依然要了解下,万一以后不得已用到了呢?我们拿淘宝的T... 查看详情
mac基本安装软件(代码片段)
目录1、时间机器:备份+磁盘抹除2、extFSformac实现读写linux文件3、NTFSformac实现读写NTFS文件,即windows文件4、xnipformac截图工具5、mathtypeformac数学公式工具破解版——(不建议安装,太卡)6、在wordformac中插入latex公式:Pages7、macOS... 查看详情
linux中查看某个软件的安装路径(代码片段)
Linux中查看某个软件的安装路径(地址)有时显得非常重要。比如某个文件的快速启动项被删除,或者你要建立快速启动项,或者想删除、添加安装文件等等,很多地方都要用到查案文件安装路径的命令。这里给大家介绍Linux查看文... 查看详情
linux--进程概念的引入(代码片段)
...储器:内存。输入设备:键盘、摄像头、话筒、磁盘、网卡……。输出设备:显示器、音响、磁盘、网卡……。CPU(中央处理器):运算器:算术运算、逻辑运算。控制器:CPU是可以响应外部事件... 查看详情