当前位置: 首页 > news >正文

【面试总结】Linux篇·操作及原理篇

【面试总结】Linux篇·原理篇

  • 1.介绍一下inode
  • 2.说一下Linux系统的目录结构
  • 3.说一下Linux系统的文件类型
  • 4.如何在Linux上配置一个IP地址
  • 5.Linux负载是什么?
  • 6.Linux中的软链接和硬链接有什么区别?

1.介绍一下inode

硬盘的最小存储单位是扇区(Sector),块(block)由多个扇区组成。文件数据存储在块中。块的最常见的大小是 4kb,约为 8 个连续的扇区组成(每个扇区存储 512 字节)。一个文件可能会占用多个 block,但是一个块只能存放一个文件。

虽然,我们将文件存储在了块(block)中,但是我们还需要一个空间来存储文件的 元信息 metadata :如某个文件被分成几块、每一块在的地址、文件拥有者,创建时间,权限,大小等。这种 存储文件元信息的区域就叫 inode,译为索引节点:i(index)+node。 每个文件都有一个 inode,存储文件的元信息。

可以使用 stat 命令可以查看文件的 inode 信息。每个 inode 都有一个号码

Linux/Unix 操作系统不使用文件名来区分文件,而是使用 inode 号码区分不同的文件。🥥

在这里插入图片描述

简单来说:inode 就是用来维护某个文件被分成几块、每一块在的地址、文件拥有者,创建时间,权限,大小等信息。


2.说一下Linux系统的目录结构

Linux操作系统,一切皆文件🍇

树状目录结构:

在这里插入图片描述

  • /bin: 存放二进制可执行文件(ls、cat、mkdir 等),常用命令一般都在这里
  • /boot: 存放用于系统引导时使用的各种文件
  • /dev: 用于存放设备文件,在 Linux 中访问设备的方式和访问文件的方式是相同的
  • /etc: 存放系统管理和配置文件
  • /home: 存放所有用户文件的根目录,是用户主目录的基点,比如用户 user 的主目录就是/home/user,可以用~user 表示
  • /root: 超级用户(系统管理员)的主目录(特权阶级)
  • /sbin: 存放二进制可执行文件,只有 root 才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如 ifconfig
  • /tmp: 用于存放各种临时文件,是公用的临时文件存储点
  • /usr : 用于存放系统应用程序
  • /var: 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等)等
  • /opt: 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把 tomcat 等都安装到这里
  • /lib : 存放着和系统运行相关的库文件
  • /proc: 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息
  • /mnt: 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统
  • /media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下
  • /selinux: 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的

3.说一下Linux系统的文件类型

Linux 支持很多文件类型,其中非常重要的文件类型有: 普通文件目录文件链接文件设备文件管道文件Socket 套接字文件等。

  1. 普通文件(-) : 用于存储信息和数据, Linux 用户可以根据访问权限对普通文件进行查看、更改和删除。比如:图片、声音、PDF、text、视频、源代码等等。
  2. 目录文件(d) :目录也是文件的一种,用于表示和管理系统中的文件,目录文件中包含一些文件名和子目录名。打开目录事实上就是打开目录文件。
  3. 符号链接文件(l) :保留了指向文件的地址而不是文件本身。
  4. 字符设备(c) :用来访问字符设备比如键盘。
  5. 设备文件(b) : 用来访问块设备比如硬盘、软盘
  6. 管道文件§ : 一种特殊类型的文件,用于进程之间的通信。
  7. 套接字(s) :用于进程间的网络通信,也可以用于本机之间的非网络通信。

4.如何在Linux上配置一个IP地址

配置Linux系统的IP地址的方法,主要有以下三种:

ifconfig

ifconfig 命令主要是用来查看网卡的配置信息,因为用它来配置网卡的IP地址时,只会临时生效

setup

setup 命令是 redhat 系列的linux系统(如CentOS)中专有的命令工具。可以使用 setup 命令,来对网络配置中的IP地址、子网掩码、默认网关、DNS服务器进行设置。而且,setup 网络配置工具设置的IP地址会永久生效。

修改网卡的配置文件

直接修改网卡的配置文件,设置方法有两种:

  1. 自动获取动态IP地址

  2. 手工配置静态的IP地址


5.Linux负载是什么?

负载(load)是linux机器的一个重要指标,直观了反应了机器当前的状态。

topuptime 等命令会输出系统的平均负载 (Load Average),一般会有三个值,分别代表 1 分钟,5 分钟和 15 分钟的平均负载。

这个值越低越好。负载过高会导致机器无法处理其他请求及操作,甚至导致死机。

一般说线上运行的系统大于 0.7 的时候就要注意了🧨


6.Linux中的软链接和硬链接有什么区别?

软链接相当于建立了一个新的快捷方式文件,该文件有自己的名称和inode以及物理存储的文件数据,文件数据里记录着如何跳转的设置数据,访问该快捷文件会被重新定向到原始文件,删除原始文件,软链文件失效

硬链接相当于为当前文件名对应的文件再建立了一个文件别名,别名对应的inode以及物理数据都是一样的,一旦建立,我们甚至根本无法区分谁是原始文件的原始名称,删除文件的其中一个名称,文件不会丢失,除非把所有的名称都删除。

在这里插入图片描述

软连接和硬链接的区别

  • 软链接可以为文件和目录(哪怕是不存在的)创建链接;硬链接只能为文件创建链接
  • 软链接可以跨文件系统;硬链接必须是同一个文件系统
  • 硬链接因为只是文件的一个别名,所以不重复占用内存;软链接因为只是一个访问文件的快捷方式文件,文件内只包含快捷指向信息,所以占用很小的内存
  • 软链接的文件权限和源文件可以不一样;硬链接文件权限肯定是一样的,因为他们本来就是一个文件的不同名称而已
http://www.lryc.cn/news/10751.html

相关文章:

  • C++中如何实现用异或运算找出数组中只出现一次的数字???
  • 红黑树的历史和由来。
  • 蓝库云|制造业数字化转型为何转不动?资料处理很重要
  • 【python学习笔记】 :Lambda 函数
  • Nginx的proxy buffer参数设置
  • SPI简介与实例分析
  • 通过基于pgsql的timescaleDB的time_bucket函数实现自定义聚合粒度
  • 一台电脑安装26个操作系统(windows,macos,linux)
  • dockerfile文件
  • 视觉SLAM ch11回环检测
  • 关于Ubuntu20.04文件系统思考
  • 内嵌于球的等边三棱柱
  • 论文解读 | [CVPR2020] ContourNet:向精确的任意形状场景文本检测迈出进一步
  • 干货分享|数据可视化报表制作技巧
  • Longhorn,企业级云原生容器分布式存储 - 备份与恢复
  • 亿级高并发电商项目-- 实战篇 --万达商城项目 十(安装与配置Elasticsearch和kibana、编写搜索功能、向ES同步数据库商品数据)
  • windwos安装spring-cloud-alibaba-nacos
  • Spring Boot 项目如何统一结果,统一异常,统一日志
  • Ubuntu下用Lean源码编译openwrt及一行命令u盘启动openwrt安装x86硬盘上
  • JavaScript Number 对象
  • 【原创】java+swing+mysql银行ATM管理系统
  • 博弈论--总结
  • AMBA低功耗接口规范(Low Power Interface Spec)
  • matlab-汽车四分之一半主动悬架模糊控制
  • 【安全加密】通信加密算法介绍
  • kubernetes教程 --组件详细介绍
  • 数字化系统使用率低的原因剖析
  • <<Java开发环境配置>>7-Apache Tomcat安装教程环境变量配置IDEA配置
  • 互联网大厂测开面试记,二面被按地上血虐,所幸Offer已到手
  • 网络管理之设备上线技术的发展现状和趋势