学习中遇到的简答题

一、磁盘空间不足是因为什么原因?

分为两种情况,一种是inode数量耗尽,一种是block占满了。block占满举例:500G硬盘存放了600G的影片,直接耗尽所有block;inode耗尽举例:每创建一个文件便会占用一个inode,当文件足够多并且小的时候,inode先于block耗尽,导致磁盘看起来空间充足,但是却提示磁盘空间不够。

二、请描述软硬链接的区别?
用下列图片做简要说明
在这里插入图片描述

硬链接是与源文件拥有同一个inode节点号,删除其中一个并不会影响另一个文件,软链接是指向源文件,若源文件不存在,软链接就失效了。

三、为什么要使用软链接?

1、安装软件:/application/nginx-1.10
过半年:/application/nginx-1.20
导致一个问题,工作中,开发等引用/application/nginx-1.10路径
安装件:/application/nginx1.10====》/application/nginx(让开发用)
/application/nginx-1.20==》/application/nginx(让开发用)
2、/etc/对应的分区满了,没办法放很多文件,但是程序还想通过/etc/目录访问文件,此时我们可以把文件放入/opt/test下,然后做一个到/etc/test的软链接 ,代码如下


 1. mkdir   /opt/test
 2. touch   /opt/test/{1..3}.txt
 3. ln  -s  /opt/test   /etc/test
 4. ls  /etc/test
    1.txt    2.txt    3.txt

四、请描述linux系统删除文件的原理?

1、静态文件:没有进程或程序正在访问的文件
文件名与硬链接断开,即硬链接数为0
2、动态文件:有程序或进程访问的文件
满足两个原理:
a、所有的硬链接删除,即为i link为0
b、所有的进程调度都要停止,即为i count为0

五、简述程序,进程,守护进程之间的区别

程序:存储在磁盘上,静态
进程:电脑中运行着的程序,存储在内存里,动态
守护进程:为处理某一项任务,持续不断运行着的程序

六、简述GNU,GPL名词含义

GNU:自由,免费,源代码开放,开发了很多项目组件:gcc,bash,gawk,emacs
GPL:通用公共许可,所有人有权取得,修改,发布,传播软件的自由,但必须要把修改的源代码发布出来

七、在定时任务中No space left on device出现的原因是什么?

这是磁盘满的报错,原因是inode占满了。
因为定时任务没有加&>/dev/null,定时任务执行的时候把输出给系统root发邮件,邮件服务器postfix服务默认不开,这些系统发的邮件就会堆在临时目录(大量小文件存在),Centos 6是在/var/spool/clientmqueue/中,Centos 7是在/var/spool/postfix/maildrop/中

预防方法:

  1. 在脚本中的命令结尾加上&>/dev/null
  2. 加入定时清理任务,find /var/spool/clientmqueue/ -type f -mtime +30|xargs rm -rf加入定时任务,每周处理一次,若是Centos 7,则处理的路径为/var/spool/postfix/maildrop/。

八、为什么程序通过手动可以执行,但是放在定时任务里不执行?

定时任务在执行脚本的时候,多数情况没办法加载环境变量,特别是/etc/profile。登录后怎么操作都对,但是放到定时任务不行。例如写tomcat重启的时候,是因为环境变量没有重新定义导致的,因为定时任务是非登录shell,一般不会加载/etc/profile这样的文件,所以环境变量加载不了,在脚本中重新定义就可以,使用export重新声明下该变量。

九、书写定时任务的规范
在这里插入图片描述
十、为什么默认shell就是/bin.bash,为什么默认的家目录就在home下,为什么默认的家目录/home/用户名下面有很多隐藏文件,从哪里来的?

以上都与/etc/default/useradd文件配置有关,这是useradd命令的配置文件,下为/etc/default/useradd文件的内容。可以用useradd -D 修改,例如修改shell解释器,useradd -D -s /bin/sh,也可以用vim直接进去修改。

在这里插入图片描述

十一、请描述Centos6和Centos7的启动过程

下图为Centos6的启动过程:

在这里插入图片描述

下图为Centos7的启动过程:
在这里插入图片描述

1、BIOS自检
BIOS(Basic Input / Output System),又称基本输入输出系统,是操作系统输入输出管理系统的一部分。
BIOS两个阶段所做的详细工作如下:
步骤1:上电自检POST(Power-on self test),主要负责检测系统外围关键设备(如:CPU、存、显卡、I/O、键盘鼠标等)是否正常。例如,最常见的是内存松动的情况,BIOS自检阶段会报错,系统就无法启动起来;
步骤2:步骤1成功后,便会执行一段小程序用来枚举本地设备并对其初始化。这一步主要是根据我们在BIOS中设置的系统启动顺序来搜索用于启动系统的驱动器,如硬盘、光盘、U盘、软盘和网络等。我们以硬盘启动为例,BIOS此时去读取硬盘驱动器的第一个扇区(MBR,512字节),然后执行里面的代码。实际上这里BIOS并不关心启动设备第一个扇区中是什么内容,它只是负责读取该扇区内容、并执行。
至此,BIOS的任务就完成了,此后将系统启动的控制权移交到MBR部分的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值