一、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
主要分支:Slackware
包管理:zypper
发行版:
SUSE Linux Enterprise Server (SLES):商业化操作系统
OpenSuse:有桌面版,免费使用。
主要分支:Debian
包管理:APT (DEB)
发行版:
Debian:最遵循GNU规范的Linux系统。
Ubuntu:升级较快,较多开发人员使用,图形界面好看,也可用于桌面操作系统。
主要分支:RedHat
包管理:YUM (RPM)、DNF (RPM)
发行版:
RedHat Enterprise Linux (RHEL):商业化操作系统,相对稳定,升级较慢。
CentOS:RHEL的社区版,用户数量多,免费。
中标麒麟:基于红帽做了二次开发和汉化。
Fedora:RHEL的测试版,每6个月一个版本,新的功能会放到Fedora中,功能测试没问题后会放入RHEL。
二、安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
创建虚拟机,基于VMware Workstation 15 Pro。
选择虚拟机操作系统
确认虚拟机名称及路径。
设置磁盘大小。
确认信息。
完成后编辑虚拟机设置。
插入光盘,确认后开机。
点击屏幕进入虚拟机,用方向键选择【Install CentOS 7】
选择安装程序语言。
设置时间,亚洲/上海。
设置支持语言,因为安装程序语言设置为英语,默认系统语言为英语,可以根据需要添加语言支持。
选择安装包,根据需要可以安装桌面、开发工具等。安装系统后也可使用yum来安装。
设置文件系统。
选择硬盘,选择手工配置。
点击可以使用默认配置来创建分区配置。
完成后点【Done】,会显示是否格式化。
开始安装
设置root密码和创建用户
完成安装重启系统
登录系统验证密码是否正确。
三、配置环境变量,实现执行history的时候可以看到执行命令的时间。
在环境变量文件,例如/etc/profile添加: export HISTTIMEFORMAT="%F %T " ,%T后要加空格,否则时间会和命令连在一起。日期格式可以通过 man 3 strftime 查看
%F Equivalent to %Y-%m-%d (the ISO 8601 date format). %T The time in 24-hour notation (%H:%M:%S).
使配置文件生效
source /etc/profile
查看效果
1016 2020-06-08 21:37:24 vi /etc/profile 1017 2020-06-08 21:37:31 source /etc/profile 1018 2020-06-08 21:39:51 man 3 strftime 1019 2020-06-08 21:41:28 history
四、总结Linux哲学思想。
- 一切都是一个文件(包括硬件)。不仅普通的文件,目录、字符设备、块设备、套接字等都是以文件的形式显示。
- 小型,单一用途的程序。单一程序功能不要太复杂,保证高效运行。
- 链接程序,共同完成复杂的任务。把多个程序、工具连接在一起,共同完成复杂的任务。
- 避免令人困惑的用户界面。不推荐使用图形界面,图形界面容易产生错误、困惑,linux基于字符界面,看到的信息真实可靠。实现脚本编程,以自动完成某些功能。
- 配置数据存储在文本中。Linux的配置文件都是记录在文本文件中。
五、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令。
echo:回显 显示文本 ~]# echo "hello world" hello world -n 不换行 ~]# echo -n "hello world" hello world[root@centos7 ~]# 显示变量 ~]# a=‘hello‘ ~]# echo ${a} hello screen:创建终端 打开screen: ~]# screen 拆除screen: Ctrl+a, d [detached from 2940.pts-1.centos7] 列出screen: ~]# screen -ls There is a screen on: 2940.pts-1.centos7 (Detached) 1 Socket in /var/run/screen/S-root. 连接至screen: ~]# screen -r SCREEN_ID 关闭screen: ~]# exit date:显示日期,设置日期 显示日期:date "+FORMAT" ~]# date "+%T" 22:19:32 设置日期:date -s MMDDhhmm[[CC]YY][.ss] ~]# date -s "10:00:00" Sun Jun 14 10:00:00 CST 2020 ifconfig:查看和配置网络接口 查看网卡信息: 不带参数,显示生效网卡信息。 ifconfig IFNAME:显示指定网卡信息 ifconfig -a:显示所有网卡信息 配置网卡信息(重启失效) ~]# ifconfig ens34 192.168.0.1/24 ~]# ifconfig ens34 ens34: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::85a5:3fa:2619:3e4b prefixlen 64 scopeid 0x20<link> ether 00:0c:29:1e:cd:46 txqueuelen 1000 (Ethernet) RX packets 104 bytes 11481 (11.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 69 bytes 11072 (10.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ip:查看路由、网络设备等 ip addr(ip a):显示设备IP信息 ip route(ip r):显示路由信息 export:环境变量查看和赋值 查看环境变量 ~]# export declare -x HISTCONTROL="ignoredups" declare -x HISTSIZE="1000" declare -x HISTTIMEFORMAT="%F %T " 赋值并生效 ~]# export name=valuetest ~]# export| grep name declare -x name="valuetest" 也可将步骤分开 ~]# name=valuetest2 ~]# export name ~]# export| grep name declare -x name="valuetest2" touch:修改文件时间戳,也可用来创建空白文件 touch FILENAME:若文件不存在则创建空白文件 cat:查看文件 head:查看文件头几行 ~]# head -n 1 /etc/passwd root:x:0:0:root:/root:/bin/bash ~]# head -1 /etc/passwd root:x:0:0:root:/root:/bin/bash tail:查看文件后几行 ~]# tail -1 /etc/passwd rabbitmq:x:986:980:RabbitMQ messaging server:/var/lib/rabbitmq:/sbin/nologin ~]# tail -n 1 /etc/passwd rabbitmq:x:986:980:RabbitMQ messaging server:/var/lib/rabbitmq:/sbin/nologi -f:查看文件尾部内容结束后不退出,跟随显示新增的行,可用于动态显示日志。 cp:复制文件 cp 源文件 目标文件或路径 cp -r:复制文件夹 mv:移动文件或重命名 rm:删除文件 rmdir:删除文件夹,文件夹内必须没有文件。 man:查看帮助手册 空格Space:下一页 b:上一页 Enter:下一行 k:上一行 Ctrl+d:下半页 Ctrl+u:上半页 q:退出 输入数字然后回车:往下跳几行 G:跳到最后一行 less:查看文件,用法和man一样 chown:修改文件属主属组 chown 属主.属组 FILENAME 仅修改属主:chown 属主 FILENAME 仅修改属组:chown .属组 FILENAME chmod:修改文件权限 chmod MODE FILENAME 三类用户: u:属主 g:属组 o:其它 a: 所有 MODE表示法: 赋权表示法:直接操作一类用户的所有权限位rwx; u=rwx:属主有读写执行权限 授权表示法:直接操作一类用户的一个权限位:+表示新增,-表示去除 u+r:属主添加读权限