linux基础面试题

1、什么是 GPL GNU
GPL全称为 General Public License,中文名为通用公共许可,是一个最著名的开源
许可协议,开源社区最著名的 Linux内核就是在GPL许可下发布的。GPL许可是由自
由软件基金会创建的。
GUN计划由Richard Stallman(理查德·马修·斯托曼)发起,主要目标是创建GNU操作系统,其内容软件完全以GPL方式发布。GUN名称来自GNU’s Not Unix!的缩写,汉语意思即gnu不是unix系统。1985年理查德·马修·斯托曼又创立了自由软件基金会(Free Software Foundation)来为GNU计划提供技术、法律以及财政支持。
2、32位和64位系统的区别及如何选择?

  • 32 位操作系统表示 32 位 CPU 对内存寻址的能力;
  • 64 位操作系统表示 64 位 CPU 对内存寻址的能力;
  • 32 位的操作系统安装在 32 位 CPU 处理器和 64 位 CPU 处理器上;
  • 64 位操作系统只能安装 64 位 CPU 处理器上;
    32 位操作系统对内存寻址不能超过 4GB;
    64 位操作系统对内存寻址可以超过 4GB,企业服务器更多安装 64 位操作系统,支 持更多内存资源的利用;
    64 位操作系统是为高性能处理需求设计,数据处理、图片处理、实时计算等领域需求;
    32 位操作系统是为普通用户设计,普通办公、上网冲浪等需求64 位操作系统对内存寻址可以超过 4GB,企业服务器更多安装
    64 位操作系统,支持更多内存资源的利用;
    64 位操作系统是为高性能处理需求设计,数据处理、图片处理、实时计算等领域需求;
    32 位操作系统是为普通用户设计,普通办公、上网冲浪等需求 根据以上特点,最好选择64位操作系统

3、如何选择 linux操作系统版木?
学习 Linux 操作系统,需要选择不同的发行版本,Linux 操作系统是一个大类别,Linux
操作系统主流发行版本包括:Red Hat Linux、CentOS、Ubuntu、SUSE Linux、Fedora Linux

  1. Red Hat Linux
    Red Hat Linux 是最早的 Linux 发行版本之一,同时也是最著名的 Linux 版本,Red Hat
    Linux 已经创造了自己的品牌,也是读者经常听到的“红帽操作系统”。Red Hat 1994 年创立,目前公司全世界有 3000 多人,一直致力于开放的源代码体系,向用户提供一套完整的服务,这使得它特别适合在公共网络中使用。这个版本的 Linux 也使用最新的内核,还拥有大多数人都需要使用的主体软件包
  2. CentOS
    社区企业版操作系统(Community Enterprise Operating System,CentOS)是 Linux 发行
    版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码所编译而成。由于出自同样的
    源代码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux使用。CentOS 于 Red Hat Linux 不同之处在于 CentOS 并不包含封闭的源代码软件,可以开源免费使用,得到运维人员、企业、程序员的青睐,CentOS 发行版操作系统是目前企业使用最多的系统之一,2016年12月12日,CentOS基于 Red Hat Enterprise Linux 的 CentOS Linux7 (1611) 系统正式对外发布。
  3. Ubuntu
    Ubuntu 是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨
    语的“ubuntu”一词(译为吾帮托或乌班图),意思是“人性”、“我的存在是因为大家的存在”,
    是非洲传统的一种价值观。
    Ubuntu 基于 Debian 发行版和 GNOME 桌面环境, Ubuntu 发行版操作系统的目标在于
    为一般用户提供一个最新的、同时稳定的以开放自由软件构建而成的操作系统,目前 Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。
  4. SUSE Linux
    SUSE(发音 /ˈsuːsə/),SUSE Linux 出自德国,SuSE Linux AG 公司发行维护的 Linux 发
    行版,是属于此公司的注册商标 2003 年 11 月 4 日,Novell 表示将会对 SUSE 提出收购。收购的工作于 2004 年 1 月完成。Novell 也向大家保证 SUSE 的开发工作仍会继续下去,Novell 更把公司内全线电脑的系统换成 SUSE LINUX,并同时表示将会把 SUSE 特有而优秀的系统管理程序 - YaST2 以 GPL授权释出
  5. Fedora Linux
    Fedora 是一个知名的 Linux 发行版,是一款由全球社区爱好者构建的面向日常应用的快
    速、稳定、强大的操作系统。它允许任何人自由地使用、修改和重发布,无论现在还是将来。
    它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开放源码
    的软件和开放的标准。
    4、安装系统时如何给 linux操作系统分区?
    方案1:针对网站集群架构中的某个节点服务器分区,该服务器上的数据有多份(其他节点也有)且数据不太重要,建议的分区方案如下。
    /boot:设置为100~200MB。
    swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
    /:剩余硬盘空间大小(/usr、home、/var等分区和“/”共用一个分区,这相当于在 Windows系统中只有一个C盘,所有数据和系统文件都放在一起)。
    方案2:针对数据库及存储角色的服务器分区,该服务器的业务有大量重要的数据,建议分区方案如下。
    /boot:设置为100~200MB。
    /:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不放在这里。
    swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
    data:剩余硬盘空间大小,放数据库及存储服务等重要数据。当然,data的名称也可以换成别的名字。
    本方案其实就是把重要数据单独分区,便于备份和管理。
    方案3:针对大网站或门户级别企业的服务器进行分区
    /boot:大小设置为100MB。
    swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
    /:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不存放在这里。
    剩余的磁盘空间保留,不再进行分区,将来分配给不同的使用部门,由他们自己根
    据需求再分!
    此种分区方案更灵活,比较适合业务线比较多、需求不确定的大企业使用。
    5、描述 Linux系统的启动过程?
    (1) 加载 BIOS(2) 读取 MBR(3) GRUB 引导(4) 加载 Kernel
    (5) 设定 Inittab 运行等级(6) 加载 rc.sysinit(7) 加载内核模块
    (8) 启动运行级别程序(9) 读取 rc.local 文件(10) 执行/bin/login 程序

6、请说出你知道的20个Linux命令及作用
cd ls mkdir touch cp rm mv vi vim pwd find sed grep head echo tail tree cat tar zip chmod
Chown useradd usermod userdel groupadd groupmod groupdel passwd clear alias unalias
nl ln yum rpm ifconfig su id ifup ifdown wget setup make ./configure fdisk mount df rz date man
xargs free
7、请解释下linux的运行级别。
0关机模式
1单用户模式
2无NFS的多用户模式
3文本模式(完整的多用户模式)
4未使用的
5图形模式
6重启模式
8、什么是PATH环境变量,它有什么作用?
PATH说简单点就是一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径。比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根本不在这个两个目录下,事实上当你输入命令的时候LINUX会去/bin,/usr/bin,/sbin等目录下面去找你此时输入的命令,而PATH的值恰恰就是/bin:/sbin:/usr/bin:……。其中的冒号使目录与目录之间隔开。
9、如何过滤出已知当前目录下 中的所有一级目录提示(不包含当前目录下面目
录的子目录及隐藏目录,即只能是一级目录)?
1、根据颜色区分文件和目录(浅蓝色是目录,默认是深蓝色)。
2、ls -l输出结果中以d(全拼 directory)开头的就是目录。
3、Is -l输出结果中第二列数字大于1的就是目录(文件没有硬链接的情况下是对的)。
4、通过给目录加标识,然后通过滤标识,就过滤出目录(ls -F或ls -p)。
ls -F|grep “$” -F所有的文件夹会加上/
5、通过find直接查找指定类型的文件(-d就是目录)。
说出一到两种即可
10、已知 apache服务的访问日志按天记录在服务器本地目录/ app/logs下,由于磁盘空间紧张,现在要求只能保留最近7天访问日志!请问如何解决?请给出解决办法或配置或处理命令。
(提示:可以从 apache服务配置上着手,也可以从生成出来的日志上着手。)

答:用find指令,对7天以前的日志进行清除,也可以通过软件,定时清理

你可能感兴趣的:(初级操作)