第一周作业—N42-虚怀若谷
一、Linux发行版描述。
Linux发行版主要有三个分支:Slackware、Debian、Redhat;
(1) Slackware:
SUSE:基于Slackware二次开发的一款Linux,主要用于商业桌面、服务器;
SUSE Linux Enterprise Server:企业服务器操作系统,是唯一与微软系统兼容的Linux操作系统;
OpenSuse:由suse发展而来,旨在推进linux的广泛使用,主要用于桌面环境,用户界面非常华丽,而且性能良好。
(2) Debian:三大发行版中唯一以社区形式运作,不以商业公司形式运作。是一个致力于创建自由操作系统的合作组织。而且debian开发者所创建的操作系统中绝大部分基础工具来自于GNU工程。
Ubuntu:是一个以桌面应用为主的linux操作系统。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统;
Linux mint:基于Debian和Ubuntu的Linux发行版,致力于桌面系统对个人用户每天的工作更易用,更高效,且目标是提供一种更完整的即刻可用体验;
(3) RedHat:
RHEL(RedHat Enterprise Linux):Red Hat公司发布的面向企业用户的Linux操作系统,是Redhat的一个重要节点。每18个月发行一个新版本;
CentOS:是一个基于Redhat linux 提供的可自由使用源代码的企业级linux发行版本。目前Centos已被收购,成为redhat旗下的一个组织。每个版本的Centos都会获得十年的支持(通过安全更新的方式)。新版本的Centos大约每两年发行一次,而每个版本的Centos会定期(大概6个月)更新一次,以支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的Linux环境。
中标麒麟:中标软件
Fedora:基于Red Hat Linux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用。每6个月发行一个新版本,可视为Redhat的技术测试版,被认为可用的技术最终会加入到Red Hat Enterprise Linux中;
(4) 其它发行版本
Gentoo:基于linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点, Gentoo的哲学是自由和选择。得益于一种称为Portage的技术,Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西--你想让它成为什么,它就可以成为什么。由于它近乎无限的适应性,可把Gentoo称作元发行版。
Aech Linux(或称Arch):遵循KISS原则,以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅和代码最小化的设计宗旨
LFS:Linux From scratch 自制Linux
Android:kernel+busybox(工具集)+java虚拟机
二、Centos7.6(1810)安装
1.在vwware中新建一个自定义虚拟机,并在光驱中设置好ISO路径,准备安装;
2.虚拟机开机,会直接进入光盘安装系统,如下图:
3.选择第一项"Install CentOS7"进行安装界面,选择安装语言,直接 Continue 下一步,如下图:
4.之后会进行安装向导,对各个选项进行设置,如下图:
5.设置时区为中国shanghai,键盘类型为English(US),语言支持为English(United States)
6.在SOFEWARE下的SOFEWARE SELECTION中选择安装类型,此处选GNOME Desktop
7.在SYSTEM中的第一项INSTALLATION SOURCE中进行磁盘分区,如下图:
8.在SYSTEM中的第二项KDUMP中关闭KDUMP功能,默认开启,关闭时取消Enable kdump处的对勾,如下图
9.在SYSTEM中的第三项NETWORK&HOSTNAME中设置网络,网络可先开启DHCP或装完系统自己再设置也可,hostname也是一样,这里我设置成了centos7.localdomain,如下图
10.SYSTEM中的第四项SECURITY POLICY可先不设置,之后点击Begin Installation开始安装
11.安装过程中,可设置管理员root的密码以及新建一个普通用户,如下图
12.安装完成后,点击Reboot重启,重启后会进入一个许可信息的页面,接受即可,如下图
13.之后会进入登录界面,默认为普通用户登录,当然也可切换到管理员root登录,登录后进行一些简单的设置即可进入系统,如下图
三、配置环境变量,实现执行history命令时可以看到执行命令的时间
将环境变量HISTTIMEFORMART设置为HISTTIMEFORMAT="%F %T ",此时只会临时生效,如要生效需写入配置文件中,在/etc/profile.d/目录下新建一个 env.sh 文件,并写入HISTTIMEFORMAT="%F %T "即可永久生效,或写入/etc/profile文件中亦可。
[root@centos7 ~]# HISTTIMEFORMAT="%F %T "
[root@centos7 ~]# history
-- :: ifconfig
-- :: ls
-- :: ls /
-- :: cd /data
history命令:
-c: 清空命令历史
-d offset: 删除历史中指定的第offset个命令
n: 显示最近的n条历史
-a: 追加本次会话新执行的命令历史列表至历史文件
-r: 读历史文件附加到历史列表
-w: 保存历史列表到指定的历史文件
-n: 读历史文件中未读过的行到历史列表
-p: 展开历史参数成多行,但不存在历史列表中(执行命令但不加入历史列表)
-s: 展开历史参数成一行,附加在历史列表中(不执行命令但加入历史列表,伪造历史)
[root@centos7 ~]# history
-- :: cd /data
-- :: cd
-- :: history
[root@centos7 ~]# history -d
[root@centos7 ~]# history -p `hostname`
centos7
[root@centos7 ~]# history
-- :: ls
-- :: cd /data
-- :: cd
-- :: history -d
-- :: history
[root@centos7 ~]# history -s "rm -rf /*"
[root@centos7 ~]# history
-- :: history
-- :: rm -rf /*
744 2019-10-30 11:52:43 history 3
命令历史相关的环境变量:
HISTSIZE:命令历史记录的条数
HISTFILE:指定历史文件,默认为~/.bash_history
HISTFILESIZE:命令历史文件记录历史的条数
HISTTIMEFORMAT=“%F %T “ 显示时间
HISTIGNORE=“str1:str2*:... “ 忽略str1命令,str2开头的历史
控制命令历史的记录方式:
环境变量:HISTCONTROL
ignoredups 默认,忽略重复的命令,连续且相同为“重复”
ignorespace 忽略所有以空白开头的命令
ignoreboth 相当于ignoredups, ignorespace的组合
erasedups 删除重复命令
四、总结Linux哲学思想
(1) 一切皆文件
在Linux中,不仅普通的文件,目录、字符设备、块设备、 套接字等在Linux 中都是以文件被对待;它们虽然类型不同,但是对其提供的却是同一套操作界面。配置数据存储也都在文本中,无论什么配置修改都只需修改其配置文件即可。
(2) 小型,单一用途的程序,共同完成复杂功能
在Linux中,程序和可执行文件不要太复杂,每一个命令都是对应一个功能,通过不同的参数来完成不同的要求,通过繁多的小的命令来完成大型的要求,这样才能保证了linux内核的高效运行。
(3) 自由与分享
Linux是自由软件,当然它不是无限自由的,之所以它使用GNU的General Public License作为限制,是为了让更多的人享受这种修改和其他权利,是为了更好的实现最大自由化。Linux kernel在经过不断的发展过程中,从最初的很小容量的操作方式成为了炙手可热的操作系统,不得不承认,内核源代码的共享和互联网上的协作开发是其走向成功的重要途径。在英文单词中,“share”是一个很重要的词语,分享技术,分享每个人对内核的认识和修改。
五、常用命令的使用
(1) echo:显示字符
选项:
-E (默认)不支持\解释功能
-n 不自动换行
-e 启用\字符的解释功能
启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出,如
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\e escape,相当于\033
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
[root@centos7 ~]# echo -n "hello world ";echo "welcome"
hello world welcome
[root@centos7 ~]# echo -ne "hello world\b";echo "welcome"
hello worlwelcome
(2) screen:创建会话
创建新screen会话:screen –S [SESSION]
加入screen会话:screen –x [SESSION]
退出并关闭screen会话: exit
剥离当前screen会话:Ctrl+a,d
显示所有已经打开的screen会话: screen -ls
恢复某screen会话: screen -r [SESSION]
[root@centos7 ~]# screen -S help #创建一个新会话
[root@centos7 ~]# screen -ls #显示会话
There is a screen on:
.help (Attached)
Socket in /var/run/screen/S-root.
[root@centos7 ~]# screen -x help #在另一窗口可加入会话
[root@centos7 ~]# screen -r help #恢复会话
(3) date:显示和设置系统时间
date [OPTIONS] [+FORMAT]
常用选项:
-s:设置时间 如 date -s "2019-10-30 13:00:00"
-d:指定字符串时间并显示,如date -d "2019-10-20 11:23:45"
常用时间格式:
%F:显示日期,格式为2019-10-30,类似%Y-%m-%d
%T:显示时间,格式为12:20:23,类似%H:%M:%S
%Y:显示年份,如2019
%y:显示年,如19
%m:显示月,01-12
%M:显示分钟,00-59
%d:显示日,01-31
%D:显示日期,格式为10/30/19,类似%m/%d/%y
%H:显示小时,00-23
%I:显示小时,00-12
%S:显示秒,00-59
%s:显示秒数,从1970-01-01 00:00:00 UTC到目前经过的秒数,时间戳
%w:显示周,0-6,0代表星期日
%W:显示当前周是一年中的第几周
[root@centos7 ~]# date
Wed Oct :: CST
[root@centos7 ~]# date -s "2019-10-20 11:23:45"
Sun Oct :: CST
[root@centos7 ~]# date "+%F %T"
-- ::
hwclock:显示硬件时钟
-s, --hctosys 以硬件时钟为准,校正系统时钟
-w, --systohc 以系统时钟为准,校正硬件时钟
(4) ifconfig:查看当前网卡配置信息,启用或禁用网卡
ifconfig IFNAME up|down 启用或禁用网卡(临时生效)
[root@centos7 ~]# ifconfig
eth0: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 172.16.236.134 netmask 255.255.255.0 broadcast 172.16.236.255
inet6 fe80::518d:c0dd::2a93 prefixlen scopeid 0x20<link>
ether :0c::0b::fb txqueuelen (Ethernet)
RX packets bytes (13.6 KiB)
RX errors dropped overruns frame
TX packets bytes (22.8 KiB)
TX errors dropped overruns carrier collisions eth1: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.214.7 netmask 255.255.0.0 broadcast 192.168.255.255
inet6 fe80::20c:29ff:fe0b: prefixlen scopeid 0x20<link>
ether :0c::0b:: txqueuelen (Ethernet)
RX packets bytes (378.3 KiB)
RX errors dropped overruns frame
TX packets bytes (546.0 KiB)
TX errors dropped overruns carrier collisions
[root@centos7 ~]# ifconfig eth0 down
(5) export:设置或显示环境变量
export [-fnp] [变量名称]="变量值"
-f:代表[变量名称]中为函数名称
-n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中
-p:列出所有的shell赋予程序的环境变量
[root@centos7 ~]# export -p #查看系统的环境变量
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE=""
declare -x HOME="/root"
declare -x HOSTNAME="centos7"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
......
[root@centos7 ~]# export NAME=xiaoming
[root@centos7 ~]# echo $NAME
xiaoming
第一周作业—N42-虚怀若谷的更多相关文章
- Java第一周作业
Java第一周作业 本周作业: 参考<<教材学习指导(http://www.cnblogs.com/rocedu/p/7911138.html)) 学习第一章视频 参考<<使用 ...
- 2018-2019-1 20189221《Linux内核原理与分析》第一周作业
Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂 ...
- C语言--第一周作业评分和总结(5班)
作业链接:https://egdu.cnblogs.com/campus/hljkj/CS2017-5/homework/963 一.评分要求 * 要求1 (5分):博客中给出安装软件的截图(得分点1 ...
- C语言-第一周作业
要求1: 请在你的PC或者移动设备上安装词典,该词典工具能对计算机术语进行翻译.需要在你的博客中给出安装软件的截图,请确保阅读者能从截图判断出你的被安装的设备是PC或者移动设备.(5经验值) 要求2: ...
- 2017-2018-1 Java小组-1623 第一周作业
2017-2018-1 Java小组-1623 第一周作业 <构建之法>学习笔记及团队成员介绍 1. 学习内容 概论 个人技术和流程 软件工程师的成长 两人合作 团队和流程 敏捷流程 实战 ...
- 2019-2020-1 20199303 《Linux内核原理分析》 第一周作业
2019-2020-1 20199303 <Linux内核原理分析> 第一周作业 1. 环境准备 在众多的Linux发行版中,Ubuntu,小红帽还有类Unix系统的BSD系统,我选择了目 ...
- C语言1-2019秋第一周作业
第一周作业 1.你对软件工程专业或者计算机科学与技术专业了解是怎样? 软件技术专业是计算机科学的一个分支,和软件科学与技术专业相比较,软件技术专业的侧重点在开发和技术的实际应用,而对软件开发的理论要求 ...
- 初入计算机专业,学习c语言的第一周作业问答
2019年9月17日下午3点30,我来到了1117教室准备上我进入大学的第一堂计算机专业课,并需要完成以下作业. 2.1 你对软件工程专业或者计算机科学与技术专业了解是怎样? 我所了解的计算机就是一台 ...
- C语言I—2019秋作业第一周作业
1.你对软件工程专业或者计算机科学与技术专业了解是怎样? 软件工程专业是一门研究用工程化方法构建和维护有效的.实用的和高质量的软件的学科.它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设 ...
- C语言1-2019级秋季作业第一周作业
1.你对软件工程专业或者计算机科学与技术专业了解是怎样? 软件工程专业是指对计算机的软件方面灵活掌控,开发软件的工程.软件工程其中会用到计算机科学.数学方面构建模型与算法:软件工程的目标就是开发出能够 ...
随机推荐
- LintCode之主元素
题目描述: 分析:由题目可知这个数组不为空且该主元素一定存在,我选用HashMap来存储,HashMap的存储结构是”键—值对“,”键“用来存储数组元素,”值“用来存储这个元素出现的次数,然后循环遍历 ...
- form submission
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms This module provides a series of articles ...
- science_action
w import random import pprint import math import matplotlib.pyplot as plt def gen_random(magnify_=10 ...
- elasticsearch 集群搭建及启动常见错误
1.系统环境 三台服务器(最好是单数台,跟master选举方式有关),确保机器互相ping的通,且都需要装了jdk 8环境,机器IP和 elasticsearch 的节点名称如下: cluster n ...
- scrapy电影天堂实战(二)创建爬虫项目
公众号原文 创建数据库 我在上一篇笔记中已经创建了数据库,具体查看<scrapy电影天堂实战(一)创建数据库>,这篇笔记创建scrapy实例,先熟悉下要用到到xpath知识 用到的xpat ...
- 【MM系列】SAP KP26 报工出错
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP KP26 报工出错 前言 ...
- Git015--标签管理
Git--标签管理 本文来自于:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ ...
- Maven系列学习(二)Maven使用入门
Maven使用入门 通过上一节的学习,我们已经了解和配置好了Maven,接下来需要编写代码了 1.POM(Project Object Model,项目对象模型) 和Make的Makefile类似,M ...
- Pair Testing
All-Pairs Testing is a test design method to deal with the combinatorics problem of defining test ca ...
- Ubuntu12.04下安装Subversion并进行配置
Ubuntu下安装Subversion还是很简单的,只要输入sudo apt-get install Subversion就可以安装了. 主要的难点在于对权限的配置上. 安装完subversion后, ...