roundrobin来历_Linux系统管理
本文主要介绍了系统管理相关内容,包括压缩与归档、Linux软件包管理,任务计划、邮件功能,另外还介绍了sed命令的使用。
一、归档与压缩
1. 概念
归档(Archive),是指文书部门将办理完并且有保存价值的文件,经系统整理交档案室或档案馆保存的过程。在计算机中的归档即“将文件打包保存”之意,即将多个文件或目录合并称为一个文件的操作
压缩(Compression) 是为了减少数据大小以节省保存空间和传输的时间。为了数据的传输,压缩能够作用于单独的数据内容或者所有的传输单元(包括数据头),这取决于一些特定的因素
2. 相关命令
关于Linux压缩与归档,有众多命令可以实现,如
compress:经典压缩工具,如今已不再流行,其对应的解压命令为uncompress,默认扩展名为.Z
zip:归档工具,其对应的解压命令为unzip,默认扩展名为.zip
gzip:GNU的zip实现,解压命令为gunzip,默认扩展名为.gz
xz:用于压缩XZ格式的工具,解压命令为unxz,默认扩展名为.xz
lzma:LZMA格式压缩工具,解压命令为unlzma,默认扩展名为.lzma
bzip2:著名压缩工具,其解压命令为bunzip2,默认扩展名为.bz2
tar:Linux归档压缩命令,较为常用
此外还有其他相关命令,如可直接查看压缩文件内的文本文件内容,以下将做大致介绍
压缩
gzip:使用格式为
gzip [OPTIONS] /PATH/TO/SOMEFILE
OPTIONS
-d 解压缩
-c 不改变源文件,将压缩或解压缩后的内容输出到标准输出
可以使用重定向,创建压缩文件,并且保存源文件,如
gzip -c FILE > /PATH/TO/SOMEFILE.gz
-# 指定压缩比,1-9,默认是6
默认压缩后会删除源文件,如
[root@localhost ~]# mkdir test
[root@localhost ~]# cd test
[root@localhost test]# cp /var/log/messages ./
[root@localhost test]# ll -h
total 12K
-rw-------. 1 root root 12K Feb 25 10:55 messages
[root@localhost test]# gzip messages
[root@localhost test]# ll -h
total 4.0K
-rw-------. 1 root root 1.1K Feb 25 10:55 messages.gz
[root@localhost test]# gunzip messages.gz
[root@localhost test]# ll
total 12
-rw-------. 1 root root 11587 Feb 25 10:55 messages
gunzip命令用于解压缩,相当于gzip -d,同样的,会删除原文件
此外还有zcat命令,用于在不解压文件的前提下,查看其中的文本内容:
[root@localhost test]# zcat messages.gz
Feb 25 09:39:56 localhost dhclient[6438]: DHCPREQUEST on eno16777736 to 192.168.18.254 port 67 (xid=0x334cb01a)
Feb 25 09:39:56 localhost dhclient[6438]: DHCPACK from 192.168.18.254 (xid=0x334cb01a)
Feb 25 09:39:56 localhost NetworkManager[6155]: address 192.168.18.128
…………
bzip2:比gzip有更大压缩比的压缩工具,使用格式近似gzip
bzip2 [OPTIONS] /PATH/TO/SOMEFILE
OPTIONS
-d:解压缩
-#: 指定压缩比,1-9,默认是6
-k: 压缩或解压时保留原文件,默认压缩后会删除源文件
同样,解压命令bunzip2同bzip2 -d
同时也有用于直接查看文本内容的工具bzcat
xz
xz [OPTIONS] /PATH/TO/SOMEFILE
OPTIONS
-d: 解压缩
-#: 指定压缩比,1-9, 默认是6
-k: 压缩时保留原文件
对应的解压命令unxz同xz -d,查看文本文件内容工具xzcat,此外还有一个小型.xz文件解压工具xzdec
lzma,unlzma,lzcat
可以使用xz --format=lzma、xz --format=lzma --decompress、xz --format=lzma --decompress --stdout实现
以上压缩命令均不能压缩目录
归档
以上命令不能压缩目录,且若指定多个文件,则依然会压缩为多个,若需要将文件“打包”,则需要用到归档(Archive)工具,归档本身不会压缩,常用的有zip与tar
tar命令的用法为
tar [OPTIONS] -f FILE.tar FILE1,FILE2 ...
OPTIONS
-f FILE.tar 操作的归档文件
-c 创建归档文件
-x 展开归档
--xattrs 归档时,保留文件的扩展属性信息(默认不会存储)
-t 查看归档的文件列表
如:# tar tf /PATH/TO/SOME.tar
-C 指定目标目录
如:# tar xf /PATH/FROM/SOMEFILE.tar -C /PATH/TO/SOMEDIR
-z:调用gzip
-zcf 归档并调用gzip压缩
-zxf 调用gzip解压缩并展开归档,-z选项可省略
-ztf 查看归档的文件列表
-j:调用bzip2
-jcf 归档并调用bzip2压缩
-jxf 调用bzip2解压缩并展开归档,-j选项可省略
-jtf 查看归档的文件列表
-J:调用xz
-Jcf 归档并调用xz压缩
-Jxf 调用xz解压缩并展开归档,-J选项可省略
-Jtf 查看归档的文件列表
Tips
: - tar命令在操作对象为压缩文件时(如解压),可以不指定-z、-j或-J,tar命令会自动识别文件从而调用相应工具
: - 选项组合时,f选项应放在后面,而后跟文件
: - tar命令中的-可以省略
: - tar命令默认不会删除原文件
zip工具的使用格式为
zip FILENAME.zip FILE1 FILE2 ...
注意:压缩目录时,应指定为目录下的所有文件
其他相关命令
此处对cpio命令稍作介绍,该命令常用于备份,不过一般需要通过管道或重定向配合使用,如
备份目录
find /DIRCTORY| cpio -ocvB > /FILE.cpio
-o:工作于“copy-out”模式,即将文件复制输出
-c:一种较新的portable format方式储存
-v:显示详细信息
-B:让预设的Blocks 可以增加至5120 bytes ,默认是512 bytes
解压
cpio -idvc < /FILE.cpio
-i:即Copy-in模式,从压缩文件复制出来
-d:自动建立目录,使用cpio 所备份的资料内容不见得会在同一层目录中,此时需要要让cpio 在还原时可以建立新目录
查看压缩包内文件列表
cpio -ivct < /FILE.cpio
-t:查看压缩包内文件列表,一般配合-i选项使用
二、Linux软件包管理
1. 软件包管理器概念
计算机由众多软件组成,他们分别完成特定工作,而我们就需要一类软件来管理这些软件,即软件包管理的意义
在Windows中,传统Win32应该程序可以通过Control Panel进行管理(一般只能进行卸载,一些大型程序可进行功能配置),而UWP(Universal Windows Platform)程序则可通过Microsoft Store进行管理(可进行安装、卸载,升级、配置等)
而在Linux中,软件包管理器的作为有以下
打包成一个文件:二进制程序,库文件,配置文件,帮助文件
生成数据库,跟踪所安装的每一个文件,其中有以下内容
软件名和版本
安装生成的各文件路径及校验码
依赖关系
提供功能性说明
提供程序组成格式,如
文件清单
安装卸载时运行的脚本
可见,Linux平台到的软件包管理工作较为复杂,其核心功能为
制作软件包
graph LR
A[源代码] -- 编译 --> B[目标二进制格式]
B[目标二进制格式] --打包--> C[一个或有限几个包文件]
安装、卸载、升级、查询、校验
Linux有众多发行版,各个发行版使用的软件包管理器亦不相同,较为常用的有
dpkg
这个机制最早是由Debian Linux社群所开发出来的,通过dpkg的机制, Debian提供的软件就能够简单的安装起来,同时还能提供安装后的软件信息。只要是衍生于Debian的其他Linux distributions大多使用dpkg这个机制来管理软件的,包括B2D, Ubuntu等
rpm
这个机制最早是由Red Hat这家公司开发出来的,后来实在很好用,因此很多distributions就使用这个机制来作为软件安装的管理方式。包括Fedora, CentOS, SuSE等
现代计算机软件开发有一个重要思想,即代码共用,在这里依然使用,这就会引发一些依赖性问题,如:
用户需要安装软件A,而A依赖于软件B和C中的功能,而后用户在安装B与C的时候,发现软件C依赖于软件D,而D竟然依赖软件A!
这种循环依赖的问题就不能简单地直接通过命令安装,虽然可以用某些选项安装,但是这些复杂的依赖关系依然会花费不少时间
为了解决这类问题,Linux还有更上层的工具,我们将其称之为前端管理工具,按照此思路,以上介绍的可叫做后端工具,常见的有
yum:rpm包管理器的前端工具
apt-get:deb包管理器的前端工具
zypper:suse上的rpm前端管理工具
dnf:Fedora 22+ rpm包管理器的前端管理工具
这里将以rpm与yum介绍Linux软件包管理相关内容
2. rpm
rpm包命名格式
我们知道软件源代码需要编译为而进行才可执行,而rpm包也有源码版本提供,我们可称之为SRPM
rpm源码包的一般命名格式为
NAME-VERSION.tar.COMPRESS_TYPE
NAME:包名
VERSION:版本,其一般格式为
major.minor.release
即:主版本号.次版本号.release号
COMPRESS_TYPE:压缩方式,如gz,bz2,xz
rpm包的命名格式一般为
主包
name-VERSION-ARCH.rpm
VERSION
version-release
major.minor.release-release
第一个release是软件的开发者提供的
第二个release是rpm包制作者提供的
ARCH
OS平台
RedHat: el# RedHat Enterprise Linux #
CentOS: CentOS#
CentOS与RedHat兼容
CPU架构
x86_64
i386,i586,686
ppc:PowerPC平台
noarch:与平台无关
子包
name-FUNCTION-VERSION-release.arch.rpm
例:bind-libs-9.7.1-1.el5.i586.rpm
bind-utils-9.7.1-1.el5.i586.rpm
对于子包而言,bind-libs、bind-utils就是包名
FUNCTION:devel,utils,libs,…
rpm包的获取路径
可通过uname -a查看当前系统平台信息
rpm命令
rpm(RPM is Package Manager),看到这个名字感觉开源界似乎很流行这种递归缩写式的命名,因为rpm原为Radhat Package Manager,不知道是否是跟风
roundrobin来历_Linux系统管理相关推荐
- linux系统管理与服务器配置高志君_Linux系统管理与服务器配置
第1章Linux系统的安装与启动1 1.1学习引导1 1.2安装RedHatEnterpriseLinux5操作系统2 1.3首次启动Linux操作系统的配置9 1.4Linux操作系统基本操作项目1 ...
- roundrobin来历_浅谈 kubernetes service 那些事(上篇)
欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.问题 首先,我们思考这样一个问题: 访问k8s集群中的pod, 客户端需要知道pod地址,需要感知pod的状态.那如何获取各个pod的地址?若某 ...
- roundrobin来历_数据中心交换机横向虚拟化集群漫谈
虚拟化技术在数据中心是个时髦词儿,有横向虚拟化.纵向虚拟化.一虚多虚拟化.NVO3虚拟化等等.今天重点跟大家聊聊横向虚拟化,以华为CloudEngine 12800系列为例,让朋友们了解一下此技术的由 ...
- 定向输出命令_Linux系统管理-输入输出
重定向概述 什么是重定向 将原本要输出到屏幕的数据信息,重新定向到指定的文件中. 比如:每天凌晨定时备份数据,希望将备份数据的结果保存到某个文件中.这样第二天通过查看结果文件,就知道昨天备份数据是成功 ...
- linux nice值_linux系统管理之交互式企业站点(连载)
系统优化 知识点: (简介:系统优化其本质是系统在提供服务的同时,承受压力过大需进行参数调优) 1.查看平均负载 系统负载System Load:系统CPU繁忙程度的度量,即有多少进程在等待被CPU调 ...
- linux关机_Linux系统管理:开机启动流程(一)
Linux启动流程 CentOS6 Linux启动的时候,大家可以看到黑屏,一顿滚动,噼里啪啦,噼里啪啦,整的像是黑客帝国...啥玩应根本看不懂.其实,这个开启的过程,并没有大家想象的那么复杂,过程大 ...
- linux下rip服务启动失败,RIP协议_linux系统管理与服务的技术博客_51CTO博客
理解并配置动态路由协议RIP RIP(Routing Information Protocol)是应用较早.使用较普遍的内部网关协议(Interior Gateway Protocol,IGP),适用 ...
- centos7 开机后进去了命令行_Linux系统管理:开机启动流程(二)
CentOS7 1.BIOS(开机自检) 2.MBR ( Master Boot Record 主引导记录) 3.GRUB2 Bootloader(引导菜单) 4.Kernel(内核引导) 5.Sys ...
- 使用c++查看linux服务器某个进程正在使用的内存_Linux 系统管理
1.进程管理介绍 什么是进程 程序是人使用计算机语言编写的,可以实现一定功能,并且可以执行的代码集合 进程是正在执行当中的程序.程序在执行时,执行人的权限和属性.以及程序的代码都会被加载进内存,操作系 ...
最新文章
- 使用fetch封装请求_关于如何使用Fetch API执行HTTP请求的实用ES6指南
- 路径.git下的文件
- 计算机专业接本应用心理学,专接本接应用心理学但遇到阻挠?
- oracle 游标(学校)
- leetcode —— 523. 连续的子数组和
- 【华为云技术分享】#华为云·寻找黑马程序员#海量数据的分页怎么破?
- 二级菜单不同方法的实现
- 【阿圆总结】关于平时阅读的推荐
- 学习pyhton: argparse模块
- 图像语义分割(4)-SegNet:深度全卷积编解码结构
- ORACLE数据恢复到指定时间
- 02、差分特性阻抗仿真
- 使用Java的JNI调用C
- 可视化机器学习工具软件的比较分析研究
- springboot+美容院会员管理系统 毕业设计-附源码191740
- 苹果微信点开才会收到信息_安卓版微信黑暗模式来了!这次你会更新吗?附微信7.0.13安装包...
- Luogu 3807(Lucas定理)
- java依赖什么意思,JavaEE中的依赖性——依赖查找
- Arcgispro2.5安装教程
- 谷歌宣布Android设备累计激活量突破10亿台
热门文章
- 4代hiv检测50元_闲置甩干机卖了50元!大爷突然想起:里面还有4根金条
- 深度学习框架的比较(MXNet, Caffe, TensorFlow, Torch, Theano)
- 深度学习论文资源(截至2016年)
- 良好的代码编写风格(二十五条)
- C语言中编译、生成、调试、运行的区别
- 项目正式环境是双机,对外的访问地址是虚拟地址,在登录门户的时候,会等待15秒,才能进入门户...
- 日志审计产品(转载)
- 转载:KOF97八神攻防战
- dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.Gold;第一次无效
- kettle的基本介绍