麒麟操作系统基础知识保姆级教程(六)文件类型和服务安装

如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情

一、文件详细属性

1、查看文件详细信息可以获取到哪些内容

使用ll命令查看文件详细信息时会看到下面这些内容
[root@localhost ~]#ll -i
总用量 32
67149692 -rw-r--r-- 1 root root  246 11月 21 17:18 1.txt
69071639 -rw------- 1 root root 3013 11月 14 02:07 anaconda-ks.cfg
67149673 -rw-r--r-- 1 root root  324 11月 14 14:20 disk.sh
68965279 -rw-r--r-- 1 root root 3445 11月 14 02:09 initial-setup-ks.cfg
67166175 -rw-r--r-- 1 root root 2705 11月 22 16:07 xunjianKylin.sh
67149671 -rw-r--r-- 1 root root 9601 11月 14 14:10 xunjian.sh
​
咱们可以将这些反馈内容分成8列怎么分呢?他们又有什么作用呢?
​
67149692    -       rw-r--r--    1       root     root      246 11月 21 17:18     1.txt
第一列       第二列   第三列        第四列   第五列    第六列     第七列                 第八列
​
有什么作用呢?
第一列:Inode号
第二列:文件类型
第三列:文件权限
第四列:用户的UID
第五列:属主
第六列:属组
第七列:上次修改时间
第八列:文件名

2、第一列Inode号

Inode号的作用:
            唯一标识:每个文件或目录都有一个唯一的Inode号,即使文件名被更改,Inode号也不会改变。这意味着可以通过Inode号唯一确定文件系统中的一个文件或目录。
            存储元数据:Inode包含了文件的元数据,如文件的权限(谁可以读取、写入或执行文件)、文件所有者和所属组、文件的大小、创建和修改时间等。
            文件内容的索引:Inode中包含了指向文件数据块的指针。在文件系统中,文件数据被分割成多个数据块,这些数据块在磁盘上可能不是连续存放的。Inode中的指针指向这些数据块,使得系统能够快速定位并读取文件内容。
            硬链接的支持:在支持硬链接的文件系统中,多个文件名可以指向同一个Inode号,这意味着它们实际上是同一个文件的不同引用。只要至少有一个硬链接指向一个Inode,文件数据就不会被删除。
            文件系统管理:Inode号有助于文件系统的管理,比如在查找、删除文件时,系统可以通过Inode号快速定位文件的元数据。
            权限检查:当用户尝试访问文件时,系统会检查请求者是否有权限访问对应Inode的文件,这是基于Inode中存储的权限信息。
            文件恢复:在某些情况下,即使文件名丢失或目录结构被破坏,只要Inode未被删除,文件数据仍然可以通过Inode号来访问和恢复。
​
简单一点解释就是: Inode号,存着具体内容的指针指向
                查找文件内容的时候,先找到inode号码
                类似书本里的目录
                inode号码和磁盘空间任意一个满,都会导致磁盘无法写入

3、第二列文件类型

Linux系统文件类型分类
​
1、这里面的第二列的"-"有什么含义呢?
[root@localhost ~]#ll -i
总用量 32
67149692 -rw-r--r-- 1 root root  246 11月 21 17:18 1.txt
        1)表示普通文件
        2)数据文件  压缩包
        3)媒体文件  图片 视频 音频
        4)二进制命令
​
2、除了"-"还有什么类型呢?
[root@localhost /]#ll -i
总用量 16
 69044592 drwxr-xr-x    2 root root    6 11月 15 09:13 data
 
 还有"d"类型,d类型表示目录
 
3、"l"类型
[root@localhost /]#ll -i /etc/rc.local 
33723591 lrwxrwxrwx 1 root root 13  4月 20  2022 /etc/rc.local -> rc.d/rc.local
​
"l"类型表示软连接,类似windows的快捷键
​
4、"b"类型
[root@localhost /]#ll -i /dev/sda1 
346 brw-rw---- 1 root disk 8, 1 11月 25 17:25 /dev/sda1
​
"b"类型表示硬件
​
5、"c"类型
[root@localhost /]#ll -i /dev/zero 
7 crw-rw-rw- 1 root root 1
 5 11月 25 17:25 /dev/zero
​
"c"类型表示字节设备
​
​
/dev/zero # 生成定量的数据  做测试使用
/dev/null   #空的 类似黑洞,可以往里持续不断输入内容,而且不占用存储

至于后面的第三到第八列,咱们下面几篇文章分解

二、软件安装方式

常见的软件安装方式有三种

方法1:yum安装
方法2:rpm安装
方法3:编译安装

1、yum安装

yum安装方式是最常用的方式,基于红帽的,contos,openEuler,麒麟,龙蜥操作系统都常用yum安装,ubuntu这些debian系的操作系统使用的是apt的方式安装,这两种安装方式类似,用法也大体相同
​
特点:1.直接搜索到安装的命令,自动在仓库中下载
     2.自动解决安装过程中的依赖问题
语法结构:   yum -y install 软件包名称
           yum -y install 包1 包2…
卸载结构:   yum -y remove 软件包名称
           yum -y remove 包1 包2…   
查看仓库:   yum repolist    #查看默认的仓库
           yum -y reinstall 包 #类似windows的覆盖安装
清理仓库的缓存:
            yum clean all
安装过程中:
 Total download size: 547 k
 Installed size: 2.0 M
 Is this ok [y/d/N]: y  # 如果输入错误按住ctrl键删除或者剪切 然后再重新输入
 安装错误原因:
 1.无法上网,网速慢
 2.仓库错误,没有仓库,仓库速度慢
 3.包的名字Ping错
 4.当前命令是包含在其他的包里面
 例:安装rz命令 
 rz #将windows中的命令上传到linux中
 sz #将linux中的命令上传到windows中
 流程:
 1.百度搜索命令属于哪个包*
 百度-->搜索Linux安装rz命令
 2.使用命令
 yum provides rz
 3.使用命令
 yum search rz
查到rz 和 sz命令都属于lrzsz包 所在执行以下命令:
yum -y install lrzsz 
安装完成后可以执行rz 和sz命令

2、rpm安装

rpm安装是一种广泛使用的软件包管理系统,最初由Red Hat公司开发,用于管理Linux系统中的软件包。它允许用户安装、卸载、升级、查询和验证软件包。
特点:不支持自动解决依赖包问题
语法格式:
        rpm -ivh 软件包。rpm
        i   #install
        -v  #verbose 显示流程
        -h  #显示进度
        简写:rpm -i 包名称
rpm卸载:
        -e  #卸载软件
        -qa #查看软件是否安装
        -ql #安装了哪些文件
使用rpm安装软件流程:
第一步:下载rpm软件包
第二步:使用rpm -ivh 包进行安装
注:包的路径必须正确;安装过程中需要依赖
检查是否卸载?
1.执行一下 
2.which

3、编译安装

一般编译安装需要到对应服务的官网去将对应的包下载到本地,使用编译安装的方式比较常见的是Mysql和Oracle有很多,支持多实例,优缺点如下
​
优点:
    最新版本:你可以获得软件的最新版本,可能包含最新的功能和安全修复。
    定制化:在编译过程中,你可以根据需要配置软件,以满足特定的需求,比如启用或禁用某些特性。
    优化:你可以针对特定的硬件平台优化软件,比如开启特定的CPU指令集,以提高性能。
    依赖控制:你可以控制软件的依赖关系,选择安装哪些依赖,以及它们的版本。
    安全性:由于是从源代码开始构建,你可以审计源代码,减少潜在的安全风险。
    学习机会:编译安装可以帮助你更深入地了解软件的构建过程和内部工作原理。
    兼容性:对于某些老旧的系统或者非常新的系统,可能只有源代码可用,编译安装是唯一的安装方式。
​
缺点:
    耗时:编译过程可能非常耗时,尤其是对于大型软件项目。
    复杂性:对于初学者来说,编译安装可能比较复杂,需要一定的命令行操作和构建系统的知识。
    依赖管理:需要手动管理依赖关系,这可能会很麻烦,尤其是当依赖项很多或者版本要求严格时。
    系统资源:编译过程可能会占用大量的CPU和内存资源,影响系统性能。
    维护困难:编译安装的软件可能不如包管理器安装的软件那样容易更新和维护。
    可能的编译错误:如果系统环境与软件预期的环境不匹配,可能会遇到编译错误。
    二进制兼容性:编译的软件可能不兼容某些系统架构,尤其是当使用非标准编译器或配置时。
    安全性:虽然可以从源代码审计开始,但编译过程本身可能引入安全问题,比如编译器漏洞。
    文档和支持:编译安装的软件可能缺乏官方文档和社区支持,尤其是对于小众软件。
​
总的来说,编译安装提供了高度的灵活性和控制,但同时也带来了额外的复杂性和工作量。在决定是否采用编译安装时,需要权衡这些因素。对于需要最新功能、定制化或者优化的高级用户来说,编译安装是一个不错的选择。而对于大多数用户,使用包管理器安装软件可能更加方便和可靠。

好了今天的知识暂时告一段落了,想学习新的运维知识,记得点赞加关注!!!


想成为大佬,就要从小白开始,从0开始,一点一点的积累,慢慢成长,终有一日可以成为令别人仰望的大佬!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值