人生不是马拉松!人生各自精彩! ------ 博客首页

linux基础简答(1)

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,它是通过网卡传输,也就收到其限制,但是他不需要域名解析。

posted @ 2017-04-04 12:27  wqstu  阅读(262)  评论(0编辑  收藏  举报

这是一位学生的个人网站。主要用于日常学习过程中的积累,大部分都是来自于原创的笔记。不断参考,学习网上先驱者的经验分享以求更好。

致力于linux运维,Python的学习,关注互联网前沿技术与趋势。


python优质博客 | 大牛的Python学习