linux 是一个内核。
真正的操作系统是由内核 和操作系统组成的。
GUN/Linux 通常以原码方式提供
什么是源代码?
文本格式的。但计算机仅仅能够运行二进制程序。
x64能够兼容x86
power 是全球第一款主频超过4GHz的cpu 它属于精简指令集
移植:partable
kernel用来负责面对硬件,就是操作系统。研发操作系统是非常不容易的。
开源代码:赚钱的方式:
一种卖服务
二种捐赠
GPL:通用公共许可协议
任何程序接受了GPL,只要里面的代码有GPL的。这就开源。
LGPL :lesser GPL 宽容的LGPL
程序管理:
程序的组成部分:
二进制程序:
配置文件;(文本文件):想永久保存一些设置的文件。
库文件:二次开发。
帮助文件;应用程序的使用说明
程序包管理器:
因为程序有很多文件组成,我们就需要有一个管理器来管理,所以我们就把组成的文件打包成一个或者几个文件。
安装
卸载
查询
Debian dpkg,apt-get
RedHat: rpm yum--->升级后:dnf
操作系统本身就是虚拟机,将硬件接口虚拟出来。
linux中的远程连接,是基于ssh协议的。
ssh:secureshell
运行命令:
`~]#ss -tnl //这个命令一定要在#下运行。
如果下面有一个22,则表示:
系统是否监听于tcp协议的22号端口。
查看linux系统上的IP地址:
~]#ifconfig
或者
~]#ip addr list
测试两个主机网络是否相通:
~]#ping
默认情况下ping是不中断的,所以我们要用ctrl+c来中断,ctrl+c就是终止命令。
确保防火墙是关闭的。
查看防火墙的相关信息:演示:
iptables -L -n
关闭防火墙:
iptables -F //临时关闭
这个命令只对当前有效。是一个临时关闭。
iptables -F //也是清空
在centos7中,关闭防火墙:
~]#systemctl disable firewalld.service
~]#systemctl stop firewalld.service
在centos6上关闭防火墙:
~]#service iptables stop //这种操作也是最对当前系统有效。如果要永久有效,怎在 执行一步
~]#chkconfig iptables off
能输入命令的地方就是用户接口。
查看所用的shell的类型:
~]#echo $SHELL
终端设备:terminal
不同的终端有不同的名称:
多任务,多用户
物理终端,又称为控制台
consloe
(物理终端只在linux启动时使用。)
虚拟w 终端6个
tty
ctrl+alt+f(1/2/3/4/5/6)
图形终端:
centos6:
ctrl+alt+f7
centos7:
图形在哪个虚拟终端启动,即位于哪个虚拟终端。
串行终端:
如果电脑没有图形终端,那就不需要显卡了,主板上任意一个接口基于特定速率交换字符就可以。
ttyS
伪终端:
pts
通过ssh远程的打开的终端,或者通过桌面命令
linux的哲学思想之一: 一切皆文件
表现之一:
硬件设备也通过文件表示。
物理终端:/dev/console
虚拟终端:/dev/tty# [1,6]
串行终端:/dev/ttyS#
伪终端:/dev/pts/#
用命令tty查看当前所在的终端
注意
在启动设备之后,在其上关联一个用户接口程序,即可实现与用户交互。
查看终端设备:
~]#tty
查看接口程序:
~]#echo $SHELL
任何一个shell都与一个设备相关。
启动GUI图形界面:
当我们安装的系统完成后,没有开启一个图形界面,那么我们可以在字符界面输入一个命令来开启一个图形界面:
~]#startx & //&可以不加
或者
~]#innit 5
可以用命令 ~]#init 3 将图形界面关闭。
~J]# 在某一虚拟终端运行口令,startx &
在centos7中,我们在图形界面设置默认语言为中文
注意:centos6不适用
~]localectl -h //查看命令localectl这个命令的帮助信息
从命令帮助中我们就能看到,我们可以查看一下localectl list-locales 有哪些语言
~]#localectllist-locales //查看支持哪些语言
会看到有很多内容:
那么我们可以用斜杠来查找我们想要的内容
举例:
我们想要查找
zh_CN* 的有关内容
那么我们就在显示的内容下面键入 /, 然后输入我们要查找的内容的前几个字符,然后回车,如果没有找到,我们可以按 n 来向下查找。查询完后,退出按 q键
然后我们这里使用zh_CN.utf-8 //具有更好的兼容性。
下面我们来安装一下
localectl set-localeLANG=zh.CN.utf-8
并用locale 来查看当前的环境。
最后重启后,就显示中文界面了。
并且上面的每一项都是可以修改的。LC_*=*我们可以自行设定。
shell 单词:外壳
CLI接口:
命令行接口:
在命令行输入命令后,回车,就相当于windows上双击图标启动程序。
命令行不能启动带图形功能的程序。
命令提示符的含义:
[]跟@是固定字符
root是用户名
localhost是主机名,是非完成的主机名
~ 是用户当前所在的目录又称为工作目录,路径是相对路径。
#真正的命令提示符
# 管理员账号拥有最高权限。 $普通管理员不能执行系统管理类操作。
举例:我们创建一个用户,然后切换到新用户,发现命令提示符用户名发生改变,提示符也发生改变。
注意:切换用户的时候,su后面的减号 - 前后都有空格。
注意: 建议使用非管理员用户登录系统。
我们执行管理操作,临时切换到管理员,操作完及退回。
关机命令:
centos7:(专用命令)
~]#systemctl poweroff
但是centos7上也可以单独运行
~]#poweroff
非chentos7系统都可以运行
~]#poweroff
或者
~]#halt
重启:
centos7
~]#systemctl reboot
或者也可以执行:
~]#reboot
linux的哲学思想:
一切皆文件
由众多功能单一的程序组成。(一个程序只做一件事情,并且做好,)
尽量避免跟用户交互
使用文本文件保存配置信息
文件是什么?
众多文件如何有效的组织起来?
目录,路径映射
文件,存储空间存储的一段流式数据。对数据可以做到按名存储。
文件系统:层级结构:有索引:
/:原初起点;
倒置的树状结构:
/dev/pts/2
最左侧的/ 表示根目录
其他的/表示路径分隔符
windows的是\
第二层结构:子目录
第三层结构:
文件的路径表示:
绝对路径: 从根开始表示的路径
相对路径:从当前位置开始表示的路径
文件名使用法则:
严格区分大小写,
目录也是文件,同一个路径下,两个文件不能同名
文件使用,除了/以外的任意字符
最长不能超过255个字符
用户的家目录,home
用户的起始目录,普通用户管理文件的位置
工作目录:
/etc/sysconfig/network-scripts/ifcfg-eno167777736
basename:最右侧的文件或目录名
基名:ifcfg-eno167777736
dirname:basename左侧的路径
目录名就是基名左侧的路径。
举例:
列出基名
列出目录名:
总结:
命令:
~]#basename /PATH/TO/SOMEFILE(路径)
执行的结果:SOMEFILE
~]#dirname /PATH/TO/SOMEFILE(路径)
执行结果:/PATH/TO/SOMEFILE