马哥教育,第一周作业
1、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
Linux的发行版本可以分为两类:一类是商业公司维护的发行版,以Redhat(RHEL)为代表,一类是社区组织维护的发行版本,以Debian为代表。
三大主流发行版:
Debian是社区类Linux的典范。分为三个版本分支,stable,testing和unstable。unstable为最新测试版本,软件较新,Bug较多,适合桌面用户;testing的版本经过unstable的测试,相对稳定;stable版本一般用于服务器,其上软件比较过时,但稳定性和安全性非常高。Ubuntu是给予Debian的unstable版本加强而来,特定界面非常友好,最适合桌面系统的Linux发行版。
Redhat Linux是红帽研发的Linux发行版,包括Fedora、RHEL、CentOS和Oracle Linux。Fedora是redhat测试版,内核及软件较新,发烧友的最爱。CentOS是redhat的社区版,免费、稳定,是用户服务器首选。
SUSE Linux是德国SuSE Linux AG公司发行维护的linux版本。区别于开源linux操作系统(如CentOS/Ubuntu等),这是企业级别的商业linux操作系统,由SuSE原厂对该版本操作系统进行不断研发完善,同时也为用户提供技术支持服务。
2、安装Centos7.9和ubuntu操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
Centos7.9安装,环境vmware workstation16软件虚拟化安装:
1)新建虚机,自定义,下一步

2)硬件兼容,选择最高,下一步

3)选择稍后安装操作系统

4)选择客户端系统Linux,版本Centos 7 64位,下一步

5)输入虚拟机名称,下一步

6)处理器数量2,核数1,下一步

7)设置虚拟机内存2G,下一步

8)选择网络位NAT模式,下一步

9)选择IO控制器类型,默认LSI Logic(L),下一步

10)选择磁盘类型默认SCSI,下一步

11)选择磁盘,创建新虚拟磁盘,下一步

12)磁盘大小200GB,磁盘存储位单个文件,下一步

13)选择磁盘存放路径,下一步

14)选择自定义硬件

15)选择安装镜像Centos7.9,关闭

16)点击完成

17)加电开机,选择Install Centos 7,回车

18)选择语言,默认英语,continue

19)选择时区为 Asia亚洲,shanghai上海,done

20)选择安装软件基础环境为Server with GUI,done

21)磁盘分区选择,I will configure partioning我将配置分区,自定义,done

22)选择创建LVM卷,选择添加

23)挂载点/boot,大小1024M,Add mount point确定

24)继续添加交换分区,大小为内存2倍

25)添加自建挂载点/data,大小为50GB

26)添加根分区100GB

27)创建完成,选择done

28)Accept Changes确认格式化分区

29)关闭KDMP功能,系统奔溃时产生文件

30)选择网络自动连接ON,主机名centos7.9,done

31)设置root密码123456,两次确认,done

32)创建新用户xxn,密码123456,done

33)开始安装,共1348个包

34)安装完成选择reboot重启

35)重启完成,需要同意license,选择LICENSE INFORMATION

36)勾选左下角I accept the license agreement,done

37)选择FINSE CONFIGURTION完成配置

38)安装完成提示登录

39)登录查看系统版本及内核信息

40)查看文件系统及swap

Ubuntu1804.5安装,环境vmware workstation16软件虚拟化安装:
1)新建虚机自定义,下一步

2)选择硬件兼容行最高workstation 16.x,下一步

3)选择稍后安装操作系统

4)选择操作系统类型Linux,版本Ubuntu 64位

5)虚机名称及存储位置

6)选择处理器数据及内核数

7)配置内存为2GB

8)网络类型选择NAT

9)I/O控制器类型默认

10)磁盘类型SCSI,默认

11)选择新建虚拟磁盘

12)设置磁盘大小200GB,存储为单个文件

13)磁盘文件路径及名称

14)选择自定义硬件

15)选择启动镜像文件

16)安装镜像为Ubuntu1804.5

17)选择启动时连接

18)完成配置

19)点击启动安装,按转过程选择语言English

20)安装Install Ubuntu Server

21)选择安装语言

22)选择地区

23)不检查键盘

24)选择键盘为English(US)

25)选择键盘布局为English(US)

26)配置主机名为ubuntu1804

27)创建新用户xxn

28)设置新用户密码123456

29)再次输入新用户密码

30)提示密码简单,是否继续使用,选择Yes

31)确认时区为亚洲上海Asia/Shanghai

32)分区选择自定义Manual

33)选择200GB系统盘,回车,初始化盘

34)创建一个空的分区表,Yes

35)选择FREE SPACE剩余空间

36)输入分区大小1GB,continue

37)分区类型主分区

38)选择Beginning

39)选择挂载点为/boot

40)选择完成分区设置

41)继续选择空闲空间

42)创建一个新分区

43)分区大小为4G(内存2倍)

44)选择主分区

45)选择开始

46)选择文件系统类型

47)选择swap area

48)选择完成分区设置

49)继续选择空闲空间

50)创建新分区

51)分区大小100GB

52)选择分区类型为主分区

53)开始分区

54)默认根分区,选择完成分区设置

55)继续选择空闲分区

56)创建新分区

57)分区大小为50GB

58)分区类型为逻辑分区

59)开始创建

60)选择挂载点

61)挂载点自定义

62输入挂载点/data

63)完成分区设置

64)选择完成整个分区并写入到磁盘

65)是否写入到磁盘,Yes

66)设置网络代理,暂时不设置为空,continue

67)不自动更新系统

68)选择安装软件OpenSSH,continue

69)是否安装引导启动grub,Yes(不选择无法启动)

70)完成安装continue

71)启动后登录界面

72)使用新建用户xxn登录

73)查看系统版本

3、配置环境变量,实现执行history的时候可以看到执行命令的时间。
设置环境变量,临时生效:
[root@centos7 ~]# HISTTIMEFORMAT='%F %T '
[root@centos7 ~]# history
1 2021-08-30 13:06:07 HISTTIMEFORMAT='%F %T'
2 2021-08-30 13:06:14 history
3 2021-08-30 13:06:24 HISTTIMEFORMAT='%F %T '
4 2021-08-30 13:06:26 history
永久生效:
把HISTTIMEFORMAT='%F %T '写到/etc/profile文件中,全局用户生效或把HISTTIMEFORMAT='%F %T '写到~/.bash_profile文件,当前用户生效。
4、总结Linux哲学思想。
Linux哲学思想:
1)一切皆文件。不仅普通文件,目录、字符设备、块设备、套接字等在Unix/Linux中都是以文件被对待。
2)提供了很多小型单一用途程序
3)连接程序,共同完成复杂功能
4)避免令人困惑的用户界面
5)配置数据存储在文本中
5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令
命令格式
COMMAND [OPTIONS...] [ARGUMENTS...]
选项:用于启用或关闭命令的某个或某种功能
短选项:UNIX风格选项,-c 例如:-l,-h
长格式:GNU风格选项,--word 例如:--all,--human
BSD风格选项:一个字母,例如:a,使用相对较少
参数:命令作用的对象,比如:文件名,用户名等
范例:
[root@centos7 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@centos7 ~]# id -u xxn
1000
[root@centos7 ~]# echo "hello" 默认换行
hello
[root@centos7 ~]# echo -e "hello\c" 取消换行
hello[root@centos7 ~]#
[root@centos7 ~]# echo -e "hello\n" 再一次换行
hello
[root@centos7 ~]# echo -e "hello\tWorld" 添加制表符
hello World
[root@centos7 ~]# screen -S xxn A终端发起会话
[root@centos7 ~]# screen -ls B终端查看screen会话
There is a screen on:
53963.xxn (Attached)
1 Socket in /var/run/screen/S-root.
[root@centos7 ~]# screen -x xxn B终端连接A终端screen会话
[root@centos7 ~]# date +"%Y-%m-%d %H:%M:%S"
2021-08-30 17:03:58
[root@centos7 ~]# date +"%F %T"
2021-08-30 17:04:06
[root@centos7 ~]# ifconfig -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.57.139 netmask 255.255.255.0 broadcast 192.168.57.255
inet6 fe80::3bdf:7d77:935e:999a prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:35:6f:22 txqueuelen 1000 (Ethernet)
RX packets 373161 bytes 557333203 (531.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 129614 bytes 9488102 (9.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 48 bytes 4080 (3.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 48 bytes 4080 (3.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:2c:3c:0e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0-nic: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 52:54:00:2c:3c:0e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@centos7 ~]# export HISTTIMEFORMAT="%F %T "
6、描述Linux发行版的系统目录名称命名规则以及用途。
/boot:引导文件存放目录,内核文件( vmlinuz)引导加载器( bootloader,grub都存放于此目
/bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/ modules)
/lib64:专用于8664系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/ USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
b: block device,随机访可
C: character device,线性访问
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr: universal shared, read-only data
bin:保证系统拥有完整功能而提供的应用程序
sbin:
lib32:32位使用
lib64:只存在64位系统
include:C程序的头文件(header files)
share:结构化独立的数据,例如doc,man等
local:第三方应用程序的安装位置
bin,sbin,lib,lib64,etc,share
/var:variable data files
cache:应用程序缓存数据目录
lib:应用程序状态信息数据
local:专用于/usr/local先的应用程序存储可变数据
lock:锁文件
log:日志目录及文件
opt:专用于/opt下的应用程序存储可变数据
run:运行中的进程相关数据,通常用户存储进程pid文件
spool:应用程序数据池
tmp:保存系统两次重启之间产生的临时数据
/proc:用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux:security enhanced Linux,selinux相关的安全策略等信息的存储位置

浙公网安备 33010602011771号