第一周作业-系统管理
一、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别
1、Linux各发行版本
1.1.Slackware
与很多其他的发行版不同,它坚持 KISS(Keep It Simple Stupid)原则。不依赖图形界面的文本化系统配置,传统的服务管理方式和不解决依赖的包管理。
SUSE:基于Slackware二次开发的一款Linux,针对个人用户主要用于商业桌面,服务器。
OpenSuse:由suse演变而来,旨在推进Linux的广泛使用,用户界面非常华丽,甚至超越Windows 7,而且性能良好。
1.2.Debian
是使计算机运行的基本程序和工具的集合,其中最主要的部分称为内核(kernel)。内核是计算机中最重要的程序,负责一切基本的调度工作,并让您运行其他程序,谨慎的组织和配合在一起,使得它们能够在一起和谐地运作。
Ubuntu:基于Debian开发的开源Linux操作系统,功能丰富的计算环境,既适合家庭使用又适用于商业环境。每6个月发布一个新版本,以提供最新最强大的软件。
Deepin:是基于Linux内核,以桌面应用为主,支持笔记本、台式机和一体机。深度操作系统(deepin)包含深度桌面环境(DDE)和近30款深度原创应用,及数款来自开源社区的应用软件,支撑广大用户日常的学习和工作,深度操作系
统(deepin)是中国第一个具备国际影响力的Linux发行版本。
Mint:是基于 Ubuntu 和 Debian 演变的,提供一种更完整的即刻可用体验,
基于 web 的软件包安装界面,对用户友好而功能强大,是安全,稳定,有效并且日益易于操作的系统,并且可以跑得动 Windows 的电脑也可以使用 Mint 来代替 Windows。也可以同时运行两个操作系统,组建为所谓的“双系统”。
1.3.Redhat
Redhat(红帽)的开放源码模式提供跨物理、虚拟和云端环境的企业运算解决方案,以帮助企业降低成本并提升效能、稳定性与安全性,每18个月发行一个新版本。
1.4.CentOS
是Community Enterprise Operating System的缩写,也叫做社区企业操作系统,是免费的,兼容RHEL格式,但不需向RedHat付任何费用。新版本大约每两年发行一次。而每个版本会定期(大概每六个月)更新一次,以便支持新的硬件。通过这样建立一个安全、低维护、稳定、高预测性、高重复性的环境。
1.5.中标麒麟
中标软件采用强化的Linux内核的国产化操作系统,分多种版本,多级安全满足不同用户的要求,增强操作系统安全从多个方面提供安全保障,从内核到应用提供全方位的安全保护,兼容多家国内服务器硬件产品及系统软件。
Fedora目标是创建一套新颖、多功能并且自由(开放源代码)的操作系统,对于用户而言,是一套功能完备、更新快速的免费操作系统,大约每六个月发布新版本。
1.6.ArchLinux
轻量简洁,以用户为中心,遵循K.I.S.S.原则,实用性大于意识形态。采用滚动升级策略,尽全力保持软件处于最新的稳定版本。
1.7.Gentoo
基于Linux的自由操作系统,极致性能,它能为几乎任何应用程序或需求自动地作出优化和定制。
1.8.Alpine
一个面向安全应用的轻量级 Linux 发行版。
1.9.LFS
Linux From scratch 自制Linux,只是一个说明书
1.10.Android
kernel+busybox(工具集)+java虚拟机
2、不同发行版之间的联系与区别。
联系:所有的发行版都采用Linux内核,都要遵循GNU组织的GPL规则。
区别:基于不同的linux内核、库、包管理程序、文件后缀、部分命令、系统用途等不同。
二、安装Centos7.9和ubuntu操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
1、安装Centos7虚拟机
2、安装Ubuntu虚拟机
三、配置环境变量,实现执行history的时候可看到执行命令的时间。
如果临时显示执行export HISTTIMEFORMAT="%F %T",永久显示修改~/.bash_profile文件中在PATH=$PATH:$HOME/bin下新增一行,HISTTIMEFORMAT="%F %T",保存退出。
1、临时生效:
[shaoguohui@localhost ~]$ su - root
密码:
[root@localhost ~]# history
1 history
[root@localhost ~]# export HISTTIMEFORMAT="%F %T"
[root@localhost ~]# history
1 2021-07-12 05:38:29history
2 2021-07-12 05:38:45export HISTTIMEFORMAT="%F %T"
3 2021-07-12 05:38:49history
4 2021-07-12 05:39:04ls
5 2021-07-12 05:39:06c d
6 2021-07-12 05:39:09cd
7 2021-07-12 05:39:12export HISTTIMEFORMAT="%F %T"
8 2021-07-12 05:39:17history
2、永久生效:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
HISTTIMEFORMAT="%F %T"
export PATH
~
使更新后的配置文件生效,执行
[root@localhost ~]# source .bash_profile
验证
[root@localhost ~]# history
1 2021-07-12 05:38:29history
2 2021-07-12 05:38:45export HISTTIMEFORMAT="%F %T"
3 2021-07-12 05:38:49history
4 2021-07-12 05:39:04ls
5 2021-07-12 05:39:06c d
6 2021-07-12 05:39:09cd
7 2021-07-12 05:39:12export HISTTIMEFORMAT="%F %T"
8 2021-07-12 05:39:17history
9 2021-07-12 05:41:19ls -a
10 2021-07-12 05:41:33vim .bash_profile
11 2021-07-12 05:43:59history
12 2021-07-12 05:45:16source .bash_profile
13 2021-07-12 05:45:26history
四、总结Linux哲学思想。
- linux内一切皆文件(硬件设备亦如此);
- 由众多不同目的单一程序组成,每个程序只做一件事,并且要好;
- 多个组合程序完成复杂任务;
- 尽可能避免跟用户交互,实现自动且高效的运行;
- 使用文本文件进行配置;
- 使用字符界面 bash 性能好稳定
- Shell编程,简单任务叠加
- 提供安全机制,而非策略。
五、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令
1、命令格式:
Linux通用命令格式 :命令字 [选项] [参数]
选项:用于调节命令带具体功能,有两种表现形式:
短选项(-):例如-C, -l, -d
长选项(--):例如--help, --word, --human-readable
注意:如果同一命令同时使用多个短选项,多数可合并:-l -d = -ld,
但是多个长选项不能合并。
注意:有些选项可以不带参数,此称为选项参数。
参数:命令的对象,例如文件、目录名等 [root@localhost ~]# ls -ah /etc/
ls——命令字 -ah——选项 /etc/——参数
2、实例说明
echo
功能说明:显示文字,起到一个提示的作用。
语 法:echo [-ne][字符串]或 echo [--help][--version]
参 数:
-n 不要在最后自动换行
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出
screen
功能说明:多重视窗管理程序。
语 法:screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s <shell>][-S <作业名称>]
参 数:
-A 将所有的视窗都调整为目前终端机的大小。
-d<作业名称> 将指定的screen作业离线。
-h<行数> 指定视窗的缓冲区行数。
-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r<作业名称> 恢复离线的screen作业。
-ls或--list 显示目前所有的screen作业。
date
功能说明:显示或设置系统时间与日期。
语 法:date [-d <字符串>][-u][+%H%I%K%l%M%P%r%s%S%] 或date [-s <字符串>][-u][MMDDhhmmCCYYss] 或 date [--help][--version
参 数:
%H 小时(以00-23来表示)。
%M 分钟(以00-59来表示)。
%S 秒(以本地的惯用法来表示)。
MM 月份(必要)。
DD 日期(必要)。
hh 小时(必要)。
mm 分钟(必要)。
ifconfig
功能说明:用于显示和设置linu内核中网络接口的网络参数临时修改命令
语 法:ifconfig (参数) 例: ifconfig -a
参 数:
-add 设置网络设备的IP 地址
-del 删除网络设备的IP地址
-down 关闭指定网络设备
-netmake 设置指定设备的子网掩码
-up 启动指定的网路设备
-a 查看所有的网络接口
export
功能说明:设置或显示环境变量。
语 法:export [-fnp][变量名称]=[变量设置值]
参 数:
-f 代表[变量名称]中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p 列出所有的shell赋予程序的环境变量。
- 描述Linux发行版的系统目录名称命名规则以及用途
3、系统目录名称命名规则
1.遵循FHS(Filesystem Hierarchy Standard)标准
2.严格区分大小写
3.目录也是文件,在同一路径下,两个文件不能同名
4.支持使用除 / 以外的任意字符
5.最长字符不能超过255个字符
6.包括路径在内文件名称最长4095个字节
4、目录用途:
目录名称 | 用途 |
/bin | 二进制可执行命令,引导启动所需的命令或普通用户可能用的命令,多是系统中重要的系统文件。 |
/dev | 存放了设备特殊文件即设备驱动程序,用户通过这些文件访问外部设备。 |
/etc | 目录存放着各种系统配置文件,其中包括了用户信息文件/etc/passwd, 系统初始化文件/etc/rc等。linux正是靠这些文件才得以正常地运行 |
/etc/rc.d | 启动的配 置文件和脚本 |
/home | 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示。 |
/boot | /boot目录存放引导加载器(bootstrap loader)使用的文件。 |
/lib | 标准程序设计库,又叫动态链接共享库,存放了根文件系统程序运行所需的共享文件。/lib/modules目录包含系统核心可加载各种模块。 |
/sbin | 类似/bin ,也用于存储二进制文件。 系统管理命令,这里存放的是系统管理员使用的管理程序。 |
/tmp | 公用的临时文件存储点,运行的程序最好使用/var/tmp来 代替/tmp,因为前者可能拥有一个更大的磁盘空间。 |
/root | 目录是超级用户的目录。 |
/mnt | 系统提供这个目录是让用户临时挂载其他的文件系统。/mnt/dosa可能是使用msdos文件系统的软驱,而/mnt/exta可能是使用ext2文件系统的软驱,/mnt/cdrom光驱等等。 |
/usr | 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。 |
/proc | 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。 |
/var | 某些大文件的溢出区,比方说各种服务的日志文件。 |