linux基础简答题

扇区及其4个主分区的原因

在第一个扇区中,保存着引导记录和分区信息,容量为512bytes,主引导记录(相当于MBR)446 bytes,分区表64bytes,记录每个分区信息要16bytes,所以只剩下16*4,4个主分区了, 但是可以在主分区下分成若干个逻辑分区。

磁盘的演变:

以前老式的磁盘:每个磁道的扇区空间都一样,这样外磁道整个弧长要大于内部的扇区弧长,因而其磁记录密度就要比内部磁道的密度要小。最终,导致了外部磁道的空间浪费。

Zoned-bit recording(ZBR 区位记录)是一种物理优化硬盘存储空间的方法:通过将更多的扇区放到磁盘的外部磁道而获取更多存储空间。导致外磁道快,因为外磁盘转一圈,读得扇区数多

ext4文件系统由三部分组成:文件名, inode,block

inode包含文件的元信息,存储文件属性,说有以下内容:

* 文件的字节数

* 文件拥有者的User ID

* 文件的Group ID

* 文件的读、写、执行权限

* 文件的时间戳,共有三个: ctime,mtime,atime

*文件的类型

其中没有文件的创建时间

ctime(change time )指inode上一次文件属性变动的时间

mtime(modified time)指文件内容上一次变动的时间

atime(access进入 time)指文件上一次打开的时间

stat /etc/passwd 查看某个文件的inode信息

df -i 查看磁盘中inode使用情况

inode节点不够的时候不能创建文件

block是 文件系统 中最小的存储单位,块大小产常见的是1kb或4kb(windows)

扇区 是  磁盘    中最小的存储单位

block设置大:效率高,利用率低。

block设置小:效率低,利用率高。

软硬链接的区别:

①默认不带参数的情况下,ln创建的是硬链接,带-s参数的ln命令创建的是软链接。

②硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号,与源文件不同,

③ln命令不能对目录创建硬链接,但可以创建软链接。对目录的软链接会经常使用到。

④删除软链接文件,对源文件和硬链接文件无任何影响。

⑤删除文件的硬链接文件,对源文件及软链接文件无任何影响。

⑥删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状)。

⑦同时删除源文件及其硬链接文件,整个文件才会被真正的删除。

⑧很多硬件设备的快照功能,使用的就是类似硬链接的原理。

⑨软链接可以跨文件系统,硬链接不可以跨文件系统。

Linux系统下目录及文件颜色的含义

蓝色:目录

绿色:可执行文件

红色:压缩文件

黄色:设备文件

浅蓝色:链接文件

系统运行模式/etc/inittab

0 halt 代表:关机模式

1 singel user代表:单用户模式(例如root的密码忘记了,可以在该模式下完成密码的找回)

2 multiuser没有NFS网络共享的多用户模式(NFS:network file system)

3 full multiuser代表的是命令行模式(一般生产环境都是使用的该模式)

4 unused暂时没有被使用

5 xll代表的是 桌面模式(该模式是用户常见桌面操作 常见的桌面程序有 gnome kde)

6 reboot代表重启

Systemctl status /start/stop/restart/enable(自启动)/disable sshd/httpd.service

linux的单用户模式

有点类似windows的安全模式,只启动最基本的系统,网络服务、系统服务等都不启动。

1. 启动系统,待系统启动到grub或lilo(现在一般是grub)引导菜单时,安方向键展开隐藏的菜单,找到系统当前引导项;

2. 把光标定位在该选项上按下字母“e”键进入这个引导的编辑状态;

3. 该选项通常有三行语句,用光标选中以“Kernel”开头的那一行;

4. 然后按下字母“e”键进入这一行的编辑状态;

5. 在该行行尾加个空格,键入数字1或single(表示单用户模式),然后按回车回到原来的界面;

6. 按下字母“b”键开始引导;

7. 单用户模式引导完成后,会有#提示符,表示已拥有超级用户权限,在#后执行需要的命令即可进行相关的操作。

执行脚本的3种方法:

Chmod u+x abc.sh

./abc.sh

2、Sh abc.sh

3、Source abc.sh

重定向的说明

>或1>    输出重定向:把前面输出的东西输入到后边的文件中,会删除文件原有内容。

>>或1>>  追加重定向:把前面输出的东西追加到后边的文件中,不会删除文件原有内容。

<或<0     输入重定向:输入重定向用于改变命令的输入,指定输入内容,后跟文件名。

<<或<<0   输入重定向:后跟字符串,用来表示“输入结束”,也可用ctrl+d来结束输入。

2>        错误重定向:把错误信息输入到后边的文件中,会删除文件原有内容。

2>>        错误追加重定向:把错误信息追加到后边的文件中,不会删除文件原有内容。

标准输入(stdin):代码为0,使用<或<<。

标准输出(stdout):代码为1,使用>或>>。正常的输出。

标准错误输出(sederr):代码为2,使用2>或2>>。

特殊:

2>&1就是把标准错误重定向到标准输出(>&)。

>/dev/null 2>&1 等价于 1>/dev/null  2>/dev/null

linux系统的启动过程

BIOS(基本输入输出系统)

  • 1. 检查硬件,即计算机硬件是否满足运行基本条件。(如果硬件有问题主板会发出有频率的蜂鸣,启动终止);
  • 2. 查找软盘、光盘或硬盘的引导装在程序(指引导记录,即MBR);
  • 3. 将引导装在程序(MBR)载入内存,将控制权交给MBR.
  • 加载并执行GRUB

读取MBR,并引导

MBR位于启动盘第一扇区(一般为/dev/hda或者/dev/sda)

MBR共有512位由三部分组成:

① 1-446bit 主引导加载程序信息

② 447-510bit 存放分区表

③ 511-512bit 存储MBR有效标记

grub引导菜单(boot loader)

  • 加载并执行内核以及initrd镜像

GRUB会让你选择启动的内核

GRUB会通过配置文件找到内核及Initrd镜像,initrd镜像含有内核所需的基本模块驱动

加载kernel

  • 1. 挂载根文件系统;
  • 2. 运行/sbin/init程序,初始化系统环境;

由于init是被linux第一个执行的程序,所以它的进程号为1.

在根系统被挂载之前,initrd被内核作为一个临时文件系统,内核启东市展开改initrd加载根驱动,在驱动的补充下挂载根分区.

启动init,设置级别

  • 根据/etc/inittab设定linux的运行级别

执行脚本程序

u  根据运行级别,执行对应级别的程序

u  init执行用户层文件/etc/rc.d/rc.sysinit,它做的工作非常多,包括设定PATH、设定网络配置(/etc/sysconfig/network)、启动swap分区、设定/proc等等

u  执行/etc/rc.d/rc.local

在一切初始化后,linux留给用户进行个性化的地方

u  执行/bin/login程序,进入登录状态

系统权限分级管理

① 收集以及制定用户和权限的匹配信息,原则是给于最小权限,但是又能完成所承担的工作职责。

② 各个用户组设置对应权限,用什么给什么,精细到每一条指令上根据分组情况。

③ 创建规划权限分组的用户.添加相关用户组。并修改etc/sudoers配置文件。

④ 增加sudo的权限开放,确定相关用户加入如soduers权限列表,并详细设置所开放权限内容,并选择是否需要密码的相关执行权限开放。(注意ALL权限,以及密码修改权限设置)。

⑤ 不建议先给all权限,后面排除。建议使用白名单。

⑥实战调试测试相关权限是否正确配置完成。

⑦编写操作说明,及相关注意事项。

⑧调试完毕,邮件周知所有相关人员系统权限设置生效,并附带操作说明及相关注意事项。

Linux系统优化的步骤。

⑴登录系统:不使用root登录,通过sudo授权管理,使用普通用户登录。

⑵禁止SSH远程:更改默认的远程连接SSH服务及禁止root远程连接。

⑶时间同步:定时自动更新服务器时间。

⑷配置yum更新源,从国内更新下载安装rpm包。

⑸关闭selinux及iptables(iptables工作场景如有wan ip,一般要打开,高并发除外)

⑹调整文件描述符数量,进程及文件的打开都会消耗文件描述符。

⑺定时自动清理/var/spool/clientmquene/目录垃圾文件,防止节点被占满(c6.4默认没有sendmail,因此可以不配。)

⑻精简开机启动服务(crond、sshd、network、rsyslog)

⑼Linux内核参数优化/etc/sysctl.conf,执行sysct -p生效。

更改字符集,支持中文,但是还是建议使用英文,防止乱码问题出现。

⑾锁定关键系统文件(chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 处理以上内容后,把chatter改名,就更安全了。)

⑿清空/etc/issue,去除系统及内核版本登陆前的屏幕显示。

生产场景对linux系统进行合理规划分区

分区的根本原则是简单、易用、方便批量管理。根据服务器角色定位建议如下:

①单机服务器:如8G内存,300G硬盘

分区:  /boot 100-200M,swap 16G,内存大小8G*2,/ 80G,/var 20G(也可不分),/data 180G(存放web及db数据)

优点:数据盘和系统盘分开,有利于出问题时维护。

RAID方案:视数据及性能要求,一般可采用raid5折中。

②负载均衡器(如LVS等)

分区:/boot 100-200M,swap 内存的1-2倍,/  ,

优点:简单方便,只做转发数据量很少。

RAID方案:数据量小,重要性高,可采用RAID1

③负载均衡下的RS server

分区: /boot 100-200M,swap 内存的1-2倍,/

优点:简单方便,因为有多机,对数据要求低。

RAID方案:数据量大,重要性不高,有性能要求,数据要求低,可采用RAID0

④数据库服务器mysql及oracle如16/32G内存

分区:/boot 100-200M,swap 16G,内存的1倍,/ 100G,/data 剩余(存放db数据)

优点:数据盘和系统盘分开,有利于出问题时维护,及保持数据完整。

RAID方案:视数据及性能要求主库可采取raid10/raid5,从库可采用raid0提高性能(读写分离的情况下。)

⑤存储服务器

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。只做备份,性能要求低。容量要大。

RAID方案:可采取sata盘,raid5

⑥共享存储服务器(如NFS)

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。NFS共享比存储多的要求就是性能要求。

RAID方案:视性能及访问要求可以raid5,raid10,甚至raid0(要有高可用或双写方案)

⑦监控服务器cacti,nagios

分区:/boot 100-200M,swap 内存的1-2倍,/

优点:重要性一般,数据要求也一般。

RAID方案:单盘或双盘raid1即可。三盘就RAID5,看容量要求加盘即可。

一台主机无法上网的排查步骤

①首先确定物理链路是否联通正常。

②查看本机IP,路由,DNS的设置情况是否达标。

③telnet检查服务器的WEB有没有开启以及防火墙是否阻拦。

④ping一下网关,进行最基础的检查,通了,表示能够到达服务器。

⑤测试到网关或路由器的通常情况,先测网关,然后再测路由器一级一级的测试。

⑥测试ping公网ip的通常情况(记住几个外部IP),

⑦测试DNS的通畅。ping出对应IP。

⑧通过以上检查后,还在网管的路由器上进行检查。

localhost和127网段的区别

localhost也叫local,是本地服务器,不会解析成ip,不受网卡和网络防火墙的限制。

127网段,A类地址,被保留作为换回接口地址,一般是用127.0.0.1,它是通过网卡传输,也就收到其限制,但是他不需要域名解析。

linux基础简答(1)的更多相关文章

  1. linux系统运维面试题简答

    1.     简述常用高可用技术 解答: Keepalived:Keepalived是一个保证集群高可用的服务软件,用来防止单点故障,使用VRRP协议实现.在master和backup之间通过mast ...

  2. Linux基础教程

    Linux基础教程之<Linux就该这么学>之学习笔记第一篇... ========================= 一.Basic Linux Commands    基本的Linux ...

  3. Linux基础01

    ** 一些老生常谈的问题 一提起Linux,行业内无人不知<鸟哥私房菜>,就是放在胸口可以防弹的那种书,虽说经典.全面,但对于初学者而言,确实过于厚重,而且容易学着后边忘了前边,毕竟实际操 ...

  4. Linux基础04

    ** Linux基本操作常用命令(四) ** Linux系统管理命令 1.top:查看系统资源,每隔三秒刷新一次,按q:退出浏览状态 2.free:查看内存信息,-m,以MB单位显示 3.netsta ...

  5. linux基础学习路线&review

    linux基础学习网址: https://www.runoob.com/linux/linux-tutorial.html 比较重点的是这个启动过程的介绍学习:https://www.runoob.c ...

  6. 第90节:Java中的Linux基础

    第90节:Java中的Linux基础 linux是装载虚拟机上面的: JDK依赖包: yum install glibc.i686 MYSQL依赖包: yum -y install libaio.so ...

  7. Linux基础知识之文件的权限(一)

    Linux基础知识之文件权限(一) Linux优点之一就是它拥有多用户多任务的环境,在提供文件共享的同时也能保证用户文件的安全性.所以,设置文件的权限管理变得尤为重要. 权限讲解 [der@Der ~ ...

  8. 简答一波 HashMap 常见八股面试题 —— 算法系列(2)

    请点赞,你的点赞对我意义重大,满足下我的虚荣心. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注 ...

  9. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

随机推荐

  1. DotNetCore跨平台~服务总线_事件总线的重新设计

    理论闲话 之前在.netFramework平台用的好好的,可升级到.net core平台之后,由于不再需要二进制序列化,导致咱们的事件机制遇到了问题,之前大叔的事件一直是将处理程序序列化后进行存储的, ...

  2. Java开发环境的搭建及配置

    1.首先下载并安装jdk,jdk和jre最好安装在同一文件夹的不同目录文件中,jdk安装完后就是进行环境变量的配置. JDK的环境变量配置: (1)新建变量JAVA_HOME ,    值为 jdk安 ...

  3. Luogu 2756 飞行员配对方案问题(二分图最大匹配)

    Luogu 2756 飞行员配对方案问题(二分图最大匹配) Description 英国皇家空军从沦陷国征募了大量外籍飞行员.由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的2 名飞 ...

  4. rsync工作机制(翻译)

    本篇为rsync官方推荐文章How Rsync Works的翻译,主要内容是Rsync术语说明和简单版的rsync工作原理.本篇没有通篇都进行翻译,前言直接跳过了,但为了文章的完整性,前言部分的原文还 ...

  5. bash脚本的特性01

    1.bash特性之多命令执行 read -p "please enter a passwd for $name ,[passwd]: " password [ -z "$ ...

  6. href设置action绝对路径和相对路径

    绝对路径: 示例: <a href="<%=basePath %>account/list.action"></a> 注意:这里${basePa ...

  7. (转)B-树和B+树的应用:数据搜索和数据库索引

    B-树 1 .B-树定义 B-树是一种平衡的多路查找树,它在文件系统中很有用. 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树: ⑴树中每个结点至多有m 棵子树: ⑵若根结点不是叶子 ...

  8. bootstrap-table 怎么自定义搜索按钮实现点击按钮进行查询

    bootstrap-table自带搜索框感觉有点丑,我们可以把搜索功能单独拉出来放到页面的某一个位置. 首先我们看一下官方演示: 如果你感觉集成的检索框不太好看,而且我们也不想让搜索框和列表放到一块去 ...

  9. Spring 学习笔记(七)—— 切入点表达式

    为了能够灵活定义切入点位置,Spring AOP提供了多种切入点指示符. execution———用来匹配执行方法的连接点 语法结构:   execution(   方法修饰符  方法返回值  方法所 ...

  10. [HNOI2006]超级英雄 网络流+二分版

    刚学网络流的我这里有一道非常好的"网络流练手题"------[HNOI2006]超级英雄. 记得很久以前真的有这个节目来着,还是大兵主持的. 其实这是一道匈牙利板子大水题,但对于我 ...