Linux的心得:

1)Linux由众多微内核组成,其源代码完全开源;
2)Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4、 TCP/IPv6和链路层拓扑程序等,且可以利用Unix的网络特性开发出新的协议栈;
3)Linux系统工具链完整,简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性。
Linux的发展史:
Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:Unix操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。
20世纪80年代,计算机硬件的性能不断提高,PC的市场不断扩大,当时可供计算机选用的操作系统主要有Unix、DOS和MacOS这几种。Unix价格昂贵,不能运行于PCDOS显得简陋,且源代码被软件厂商严格保密;MacOS是一种专门用于苹果计算机的操作系统。此时,计算机科学领域迫切需要一个更加完善、强大、廉价和完全开放的操作系统。由于供教学使用的典型操作系统很少,因此当时在荷兰当教授的美国人AndrewS.Tanenbaum编写了一个操作系统,名为MINIX,为了向学生讲述操作系统内部工作原理。MINIX虽然很好,但只是一个用于教学目的的简单操作系统,而不是一个强有力的实用操作系统,然而最大的好处就是公开源代码。全世界学计算机的学生都通过钻研MINIX源代码来了解电脑里运行的MINIX操作系统,芬兰赫尔辛基大学大学二年级的学生Linus Torvalds就是其中一个,在吸收了MINIX精华的基础上,Linus于1991年写出了属于自己的Linux操作系统,版本为Linux0.01,是Linux时代开始的标志。他利用Unix的核心,去除繁杂的核心程序,改写成适用于一般计算机的x86系统,并放在网络上供大家下载,1994年推出完整的核心Version1.0,至此,Linux逐渐成为功能完善、稳定的操作系统,并被广泛使用。
Linux6和Linux7的区别:
(1)、系统类型:centos6的系统类型是sysvinit,centos7的系统类型是systemd;
(2)、服务管理:centos6 采用 service和chconfig管理服务,centos7 采用systemctl 管理服务,但是还可以使用service和chkconfig命令;
(3)、主机名的配置文件:centos 6 的配置文件为/etc/sysconfig/network(永久设置),centos7的配置文件为/etc/hostname(永久设置),centos7还可以使用命令永久设置,hostnamectl set-hostname centos7 # hostnamectl是新增的主机名管理工具。
Linux的相关命令:
1、date :打印或者设置系统的日期和时间
2、 stty -a:可以查看或者打印控制字符(Ctrl-C、Ctrl-D、 Ctrl-Z等);
3、 passwd:用passwd -h查看;
4、logout,login: 登录shell的登录和注销命令;
5、 more, less, head tail: 显示或部分显示文件内容;
6、 lp/lpstat/cancel, lpr/lpq/lprm: 打印文件;
7、 chmod u+x:更改文件权限;
8、 rm -fr dir:删除非空目录;
9、cp -R dir:拷贝目录;
10、 fg jobid :可以将一个后台进程放到前台;
11、 kill 的作用: send a signal to a process、 eg: kill -9 发送的是SIG_KILL信号,具体发送什么信号 可以通过 man kill 查看;
12、 ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session显示的sessionid, tpgid显示前台进程组id, comm显示命令名称)。
Linux的相关面试题:
一、简述Apache两种工作模式,以及它们之间的区别?

(1)prefork MPM使用多个子进程,每个子进程只有一个线程来处理一个http请求,直到这个TCP连接被释放。root主进程在最初建立startserver个子进程后,等待1秒钟,创建2个进程,再等待1秒钟,再创建4个进程,直到满足最小空闲进程的数量,这就是预派生的由来。这种模式可以不必在请求到来时再产生新的进程,从而提高了访问效率。

(2)worker模式使用多个子进程,每个子进程负责接收请求,该进程下多个线程来处理请求。由于线程之间共享地址空间,所以内存消耗小,而且资源利用率高,但是一个线程的崩溃会牵连到其他线程,所以一个程序在运行时必须被系统识别为每个线程都是安全的。

(3)woker和prefork的切换,cd /usr/sbin ,mv httpd httpd.prefork,mv httpd.worker httpd,service http restart

二、如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.16.1,其中本地网卡eth0?

#iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.16.1--dport

三、包过滤防火墙与代理应用防火墙有什么区别,能列举几种相应的产品吗?

①包过滤防火墙工作在网络协议IP层,它只对IP包的源地址、目标地址及相应端口进行处理,因此速度比较快,能够处理的并发连接比较多,缺点是对应用层的攻击无能为力。②应用代理防火墙将收到的IP包解封装成高层协议的通讯数据,比如http连接信息,因此能够对基于高层协议的攻击进行拦截。缺点是处理速度比较慢,能够处理的并发数比较少。事实上还有状态监测防火墙(ip_conntrack):状态监测防火墙是在当今企业中部署最为常见的。他们建立在基于防火墙保持每个活动连接状态信息的包过滤上。当有一个新的包到达防火墙时,过滤机制首先检查这个包是否是当前活动连接(前面已经授权过的)的一部分。只有当这个包没有出现在当前的活动连接列表里时,防火墙才会以它的规则库评估这个包。状态监测防火墙之所以如此常见是因为:它们是效率最高、性价比最高的防火墙,并且广泛适用于保护网络的边界。ASA、PIX、firewall
四、什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?

链接分硬链接和符号链接。符号链接可以建立对于文件和目录的链接。符号链接可以跨磁盘分区,符号链接的文件类型位是I,链接文件具有新的i节点;硬链接不可以跨磁盘分区。它只能建立对文件的链接,硬链接的文件类型位是-号,且硬链接文件的i节点同被链接文件的i节点相同。

五、NTFS与FAT的区别?

NTFS的特性相比FAT有很多优点。①提供文件和文件夹的安全性,支持加密和设置权限②高可靠性,NTFS是一种可恢复的文件系统,并且支持坏簇映射,检测出现错误的磁盘区域 ,标记并将数据存储在其他区域③NTFS支持磁盘配额管理,另外支持对文件、文件夹以及分区的压缩。④NTFS采用了更小的簇,4KB左右,避免了对磁盘空间的;浪费。那么FAT记录文件分配表的格式,缺点是仅用于单用户系统,而且没有防止碎片的措施,并且易受损害。
六、如何挂载windows共享的目录?

mount -t cifs -o username=administrator,password=admin //192.168.1.1/share/ /windows/ #optional非强制的,可选的,CIFS是公共的或开放的SMB协议版本,Common Internet File System通用网络文件系统,并由Microsoft使用,/windows/是我们的挂载点。
七、如何查看当前Linux 系统的状态,如CPU 使用,内存使用,负载情况等?

Linux 系统中/proc是个伪文件目录,不占用系统空间,及时的反应出内存现在使用的进程情况......其中许多文件都保存系统运行状态和相关信息

对于/proc中文件可使用文件查看命令浏览cat其内容,文件中包含系统特定信息:

cpuinfo 主机CPU 信息

filesystems 文件系统信息

meminfo 主机内存信息

version Linux 内存版本信息

diskstatus 磁盘负载情况

另外top 命令可以动态的显示服务器健康状况的使用情况. free 命令呢可以查看真实使用的内存 一般用free -m 。使用lsof (list open files)是一个列出当前系统打开文件的工具使用lsof -i:8080, -i 用以显示符合条件的进程情况

ps -aux 可以查看详细的每个进程的使用状况,还有uptime查看负载命令

dmesg 也是常用来查看系统性能及硬件的命令
八、cgi和fastgcgi的区别?

首先CGI是用来web服务器进程和动态网页程序交互的一种协议,fastcgi和其原理一样,不同的是fastcgi处理完一个请求后不会终止整个进程,而是出于挂起状态等待下一个请求的到来,这样它就避免了像cgi那样频繁创建进程,从而提高它的访问效率。

Linux系统资料的更多相关文章

  1. Linux系统中的Device Mapper学习

    在linux系统中你使用一些命令时(例如nmon.iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. ...

  2. Linux 系统中的MySQL数据库默认区分大小写

    今天在开发中遇到这么个问题,将连接的数据库改为服务器上的时候(服务器是Linux系统的),程序跑起来后一直出错,总提示数据库的表找不到, 而打开数据库看该表明明是存在的,在我的印象中MySQL数据是不 ...

  3. Linux系统下配置环境变量

    一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...

  4. linux系统下修改文件夹目录权限

    linux系统下修改文件夹目录权限 文件夹权限问题 Linux.Fedora.Ubuntu修改文件.文件夹权限的方法差不多.很多人开始接触Linux时都很头痛Linux的文件权限问题.这里告诉大家如何 ...

  5. 忠告初学者学习Linux系统的8点建议

    导读 新手或者说即将要入坑的小伙伴们,常常在QQ群或者在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的.例如:如何给添加的用户归属用户组,复制整个文件到另一个目录下面,磁盘合理划分,甚至 ...

  6. Linux系统值得一看的学习方法及路线图

    网络是一个很神奇的东西,现代人的生活离不开网络,网络已深入人们的工作,生活,娱乐等方方面面.网络之所以无处不在,是因为它提供了诸多的网络服务,所以网络服务是网络的灵魂. 互联网上的各种网络服务是架构在 ...

  7. 总结四条对学习Linux系统有帮助的方法

    网络是一个很神奇的东西,现代人的生活离不开网络,网络已深入人们的工作,生活,娱乐等方方面面.网络之所以无处不在,是因为它提供了诸多的网络服务,所以网络服务是网络的灵魂. 互联网上的各种网络服务是架构在 ...

  8. 高手总结的“恋爱法”学习Linux系统,效果更好。

    如果你恋爱了,那你一定非常喜欢她.了解她,知道她喜欢吃什么玩什么,知道她需要什么,在她生气的时候可以哄她开心,一切尽在你的手指中.那你想学好Linux吗?喜欢Linux吗?你懂她吗?你有喜欢Linux ...

  9. 定制自己的linux系统

    算是总结式文档,以备后忘 先说一下背景,一开始我就知道有这个任务,同时我自己也非常感兴趣,打算去研究研究 于是才同意接这个任务,但是我的原意是从头开始搭建系统,也就是lfs 但接到任务后,由于种种原因 ...

随机推荐

  1. 导出 CVS

    function ExportStoreInfoAction() { set_time_limit(0); $table = "xd_store"; $res = [[...].. ...

  2. 由数据迁移至MongoDB导致的数据不一致问题及解决方案

    故事背景 企业现状 2019年年初,我接到了一个神秘电话,电话那头竟然准确的说出了我的昵称:上海小胖. 我想这事情不简单,就回了句:您好,我是小胖,请问您是? "我就是刚刚加了你微信的 xx ...

  3. 【转】基于ArcGIS for javascript api 轨迹回放

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  4. Java类成员之构造器

    构造器含义: 是指使得JVM在构造对象的时候,帮助进行成员变量的初始化的方法. 构造器(构造方法)格式: 1.对于构造方法而言,方法的名称是固定的,和类名相同. 2.对于构造方法而言,它没有返回值,而 ...

  5. css控制div等比高度

    在移动端开发中,在banner轮播图未加载出来之前,banner层是不占文档流高度的,当从服务器获取完banner数据,展示的时候,banner层因为有了内容 所以会撑开,导致banner层下面的内容 ...

  6. 2019-2020春江云暖你先知,CAE/EDA/高校等CloudHPC领域年均复合增长率超21%

    原创: 灵魂工作室 速石科技 我猜,我们是最早和你说春天来了的人. 一年前,我们还在小心谨慎地定义着Cloud HPC,一脸娇羞地拿Novartis 诺华制药在5年前做的案例当作标杆. 不久前,Hyp ...

  7. Java8 新特性(二)- Stream

    Stream 用来处理集合数据的,通过 stream 操作可以实现 SQL 的拥有的大部分查询功能 Java8 API 官方文档 下面借助例子,演示 stream 操作 Java userList 列 ...

  8. Java 设置Word页边距、页面大小、页面方向、页面边框

    本文将通过Java示例介绍如何设置Word页边距(包括上.下.左.右).页面大小(可设置Letter/A3/A4/A5/A6/B4/B5/B6/Envelop DL/Half Letter/Lette ...

  9. 【转】.NET 在云原生时代的蜕变,让我在云时代脱颖而出

    原创:张善友 原文:https://www.cnblogs.com/shanyou/p/12198741.html .NET 生态系统是一个不断变化的生态圈,我相信它正在朝着一个伟大的方向发展.有了开 ...

  10. 【python系统学习08】for循环知识点合集

    for循环 for简介 [循环]:就是依照某些我们编写的特定规则,重复的做一件事. 当你需要重复的"搬砖"的时候,可以用for循环进行遍历,让机器循环的帮你去"搬砖&qu ...