Huawei配置两台交换机堆叠示例


配置两台交换机堆叠示例(先配置后连线方式,推荐)

一、基本概念

在堆叠中,有以下一些基本概念,如图1所示。
图1 堆叠基本概念示意图

1、 角色
堆叠中的单台交换机称为成员交换机,按照功能不同可以分为以下角色:

主交换机:主交换机(Master)负责管理整个堆叠。堆叠中只有一台主交换机。

备交换机:备交换机(Standby)是主交换机的备份交换机。当主交换机故障时,备交换机会接替原主交换机的所有业务。堆叠中只有一台备交换机。

从交换机:从交换机(Slave)主要用于业务转发,从交换机数量越多,堆叠系统的转发能力越强。除主交换机和备交换机外,堆叠中其他所有的成员交换机都是从交换机。

2、堆叠域

交换机通过堆叠链路连接在一起组成一个堆叠,这些成员交换机的集合就是一个堆叠域。为了适应各种组网应用,同一个网络里可以部署多个堆叠,堆叠之间使用域编号(Domain ID)来进行区别。使其不与网络中其他堆叠系统的域编号冲突。

2、堆叠成员ID

堆叠成员ID,即堆叠成员交换机的编号(Member ID),用来标识和管理成员交换机。堆叠中所有成员交换机的堆叠成员ID都是唯一的。

3、堆叠优先级

堆叠优先级是成员交换机的一个属性,主要用于角色选举过程中确定成员交换机的角色,优先级值越大表示优先级越高,当选为主交换机的可能性越大。

4、堆叠物理成员端口

堆叠物理成员端口,即被配置为堆叠模式的物理端口,用于堆叠成员交换机之间的连接。

5、堆叠端口

堆叠端口是一种专用于堆叠的逻辑端口,需要和堆叠物理成员端口绑定。一个堆叠端口可以与一个或多个堆叠物理成员端口绑定,以提高链路的带宽和可靠性。

每台设备支持两个堆叠端口,为Stack-Portn/1和Stack-Portn/2,其中n为设备的堆叠成员ID。


二、组网图形

图1 配置两台交换机堆叠组网图


三、组网需求
在一个新建的企业网络中,要求接入设备具有充足的端口数目,并且希望网络结构简单,易于配置和管理。
如图1所示,接入交换机SwitchA和SwitchB组成堆叠系统。

四、配置思路
采用如下的思路配置:
1. 提前规划好堆叠方案。
2. 按照前期的规划,完成各台交换机的堆叠配置,包括堆叠成员ID、堆叠优先级、堆叠域编号、堆叠端口等。完成后保存配置并将交换机下电。
3. 连接交换机之间的堆叠线缆,然后将交换机上电。
4. 检查堆叠组建是否成功。

五、操作步骤
1. 提前规划堆叠方案。
• 规划SwitchA的堆叠成员ID为1,SwitchB的成员ID为2。
• 规划SwitchA作为主交换机,其堆叠优先级最高,为150。SwitchB的堆叠优先级为120。
• 规划堆叠域编号(Domain ID)为10,不与网络中其他堆叠系统的域编号冲突。
• 规划SwitchA和SwitchB用于堆叠连接的端口为10GE1/0/1~10GE1/0/4。
2. 配置堆叠属性。
# 配置SwitchA的堆叠优先级为150,Domain ID为10。缺省情况下,设备的堆叠成员ID为1。此处默认SwitchA的堆叠成员ID为1,无需配置。

<HUAWEI> system-view                                  #进入系统视图
[~HUAWEI] sysname SwitchA                             #交换机命名为SwitchA
[*HUAWEI] commit                                      #提交配置
[~SwitchA] stack                                      #进入堆叠管理视图
[~SwitchA-stack] stack member 1 priority 150          #配置堆叠成员设备的堆叠成员ID为1(默认就为1),优先级为150
[*SwitchA-stack] stack member 1 domain 10             #配置堆叠域为10
[*SwitchA-stack] quit                                 #退出堆叠管理视图
[*SwitchA] commit
# 配置SwitchB的堆叠成员ID为2,优先级为120,Domain ID为10。
<HUAWEI> system-view
[~HUAWEI] sysname SwitchB
[*HUAWEI] commit
[~SwitchB] stack
[~SwitchB-stack] stack member 1 priority 120
[*SwitchB-stack] stack member 1 domain 10
[*SwitchB-stack] stack member 1 renumber 2 inherit-config    
Warning: The stack configuration of member ID 1 will be inherited to member ID 2 after the device resets. Continue? [Y/N]: y
[*SwitchB-stack] quit
[*SwitchB] commit
说明:
因SwitchB尚未重启,当前堆叠成员ID还是1,所以此时仍使用member 1来进行堆叠配置。
因为修改堆叠成员ID时指定了inherit-config参数,所以SwitchB重启后会继承member 1的堆叠配置;如果不指定inherit-config参数,那么SwitchB重启后不会继承member 1的堆叠配置,需要使用member 2重新进行堆叠配置。
3. 配置堆叠端口。
# 将SwitchA的业务口10GE1/0/1~10GE1/0/4加入堆叠端口1/1。

[~SwitchA] interface stack-port 1/1                                            #创建堆叠端口
[*SwitchA-Stack-Port1/1] port member-group interface 10ge 1/0/1 to 1/0/4       #向堆叠端口中添加成员端口。
Warning: The interface(s) (10GE1/0/1-1/0/4) will be converted to stack mode and be configured with the port crc-statistics trigger error-down command if the configuration does not exist. After the configuration is complete, these interfaces may go Error-Down (crc-statistics) because there is no shutdown configuration on the interfaces. [Y/N]: y
[*SwitchA-Stack-Port1/1] commit
[~SwitchA-Stack-Port1/1] return
被配置为堆叠物理成员端口后,端口下会自动配置port crc-statistics trigger error-down。
# 将SwitchB的业务口10GE1/0/1~10GE1/0/4加入堆叠端口1/1。
[~SwitchB] interface stack-port 1/1
[*SwitchB-Stack-Port1/1] port member-group interface 10ge 1/0/1 to 1/0/4
Warning: The interface(s) (10GE1/0/1-1/0/4) will be converted to stack mode and be configured with the port crc-statistics trigger error-down command if the configuration does not exist. After the configuration is complete, these interfaces may go Error-Down (crc-statistics) because there is no shutdown configuration on the interfaces. [Y/N]: y
[*SwitchB-Stack-Port1/1] commit
[~SwitchB-Stack-Port1/1] return
4. 检查堆叠配置信息。
# 上述配置完成后,执行命令display stack configuration查看配置是否与规划的一致,如果不一致,需要修改配置。以查看SwitchA为例。
<SwitchA> display stack configuration
Oper : Operation
Conf : Configuration
* : Offline configuration
Isolated Port : The port is in stack mode, but does not belong to any Stack-Port

Attribute Configuration:
—————————————————————————-
MemberID Domain Priority Switch Mode Uplink Port
Oper(Conf) Oper(Conf) Oper(Conf) Oper(Conf) Oper(Conf)
—————————————————————————-
1(1) –(10) 100(150) Auto(Auto) 4*40GE(4*40GE)
—————————————————————————-

Stack-Port Configuration:
——————————————————————————–
Stack-Port Member Ports
——————————————————————————–
Stack-Port1/1 10GE1/0/1 10GE1/0/2 10GE1/0/3
10GE1/0/4
——————————————————————————–
5. 保存配置后将设备下电。
# 保存SwitchA和SwitchB的配置,然后将设备下电。SwitchB的配置与SwitchA相同,略。
<SwitchA> save
Warning: The current configuration will be written to the device. Continue? [Y/N]: y
6. 按照前期规划及配置,连接堆叠线缆,线缆连接建议交叉连接,比如A交换机的1端口2端口分别对应B交换机的2端口1端口。线缆连接完成后将设备上电。
建议先将高优先级设备上电,以使其先完成启动,优先竞争为主交换机。
7. 验证配置结果。
# 通过Console口或管理网口登录堆叠系统,使用命令display stack查看堆叠是否组建成功。当通过管理网口登录时,需要使用主交换机的IP地址。
<SwitchA> display stack
——————————————————————————–
MemberID Role MAC Priority DeviceType Description
——————————————————————————–
+1 Master 0004-9f31-d520 150 CE6850-48T4Q-EI
2 Standby 0004-9f62-1f40 120 CE6850-48T4Q-EI
——————————————————————————–
+ indicates the device where the activated management interface resides.
如上所示,显示两台交换机的信息,表示堆叠建立成功,且主交换机为成员ID为1的设备,即SwitchA。
# 查看堆叠系统拓扑信息。
<SwitchA> display stack topology
Stack Topology:
———————————————-
Stack-Port 1 Stack-Port 2
MemberID Status Neighbor Status Neighbor
———————————————-
1 up 2 — —
2 up 1 — —
———————————————-

Stack Link:
—————————————————————————-
Stack-Port Port Status PeerPort PeerStatus
—————————————————————————-
Stack-Port1/1 10GE1/0/1 up 10GE2/0/1 up
Stack-Port1/1 10GE1/0/2 up 10GE2/0/2 up
Stack-Port1/1 10GE1/0/3 up 10GE2/0/3 up
Stack-Port1/1 10GE1/0/4 up 10GE2/0/4 up
Stack-Port2/1 10GE2/0/1 up 10GE1/0/1 up
Stack-Port2/1 10GE2/0/2 up 10GE1/0/2 up
Stack-Port2/1 10GE2/0/3 up 10GE1/0/3 up
Stack-Port2/1 10GE2/0/4 up 10GE1/0/4 up
—————————————————————————-
8. 保存堆叠系统配置。
说明:
在检查堆叠已成功建立后,建议用户立即使用save命令保存堆叠系统配置。
<SwitchA> save
Warning: The current configuration will be written to the device. Continue? [Y/N]: y

搭建局域网YUM源

1、yum是什么

yum(全称为Yellowdog Updater Modified)是一个在CentOS、RedHat和Fedora操作系统中使用的Shell前端软件包管理器。

yum主要管理基于rpm的软件包,它可以自动升级、安装、删除rpm软件包,同时它还能够自动查找并解决rpm包之间的依赖关系,并且无需管理员逐个、手工的去安装每一个rpm包,使管理员在维护Linux主机时更加轻松自如。

yum可以从一个或多个repo文件中配置的repo仓库,通过http或ftp协议从repo仓库获得必要的信息,然后下载相关的软件包。这样,本地用户通过建立不同的repo仓库,在有Internet连接时就能方便进行系统的升级和维护工作。

repo仓库可以通过createrepo或yum-arch命令进行创建,也能够用别人已经创建好的repo仓库作为yum源,在此我们主要探讨通过createrepo命令创建的repo仓库。

2、repo文件是什么

一个标准的centos的repo文件内容如下:

[base]

name=CentOS-$releasever – Base

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

各个选项说明如下:

[base]

  该选项是定义软件源的名称,该名称是可以自定义,同时在该服务器上所有repo文件中是唯一的。注意:方括号里面不能有空格。

name=CentOS-$releasever – Base

  该选项是定义软件仓库的名称,$releasever变量定义了发行版本,通常是5,6,7等数字。

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

  这是指定镜像服务器的地址列表,通常是开启的。

  baseurl通常有以下四种格式,如下:

baseurl= http://mirrors.aliyun.com/centos/6.6/os/x86_64/

  使用http协议镜像服务器地址

baseurl= ftp://ftp.sjtu.edu.cn/centos/6.6/os/x86_64/

  使用ftp协议镜像服务器地址

baseurl= rsync://mirror.zol.co.zw/centos/

  使用rsync镜像服务器地址

baseurl= file:///ilanni/yum/

  使用本机的镜像服务器地址

enabled=1

  该选项表示在这个repo文件中启用这个软件源,默认该选项可以不写。但是如果enabled的值为0,则表示禁用这个软件源。

  注意:一个repo文件中可以定义多个软件源。

gpgcheck=1

  该选项表示对通过该软件源下载的rpm包进行gpg校验,如果gpgcheck的值为0表示不进行gpg校验。

gpgkey= file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

  该选项定义用于校验的gpg密钥文件。

通过以上这个repo文件的说明,相信各位会觉得,其实centos的repo文件真是很简单。有了一个初步的认识了之后,我们就可以进行下面的实验了。

我们现在要求在内网搭建一个yum源。该yum源需要配置两个源:一个是centos的光盘镜像源,一个是特殊rpm软件的镜像源,并且该yum源是通过http进行访问。

3、yum服务器端配置

3.1 配置web服务器

在yum服务器上,我们现在直接使用yum安装apache。

把华为交换机设置成时钟源服务器(NTP)

把华为交换机设置成时钟源服务器(NTP),提供给下面客户端Linux服务器使用,

1,先设置交换机的时区,和正确时间

# 假设地理位置在中国北京,设置本地时区名称为BJ。

如果系统默认的UTC是伦敦时间,伦敦当地时间为2012年12月1日0时0分0秒,想要得到对应的北京时间的方法是:北京处于+8时区,时间偏移量增加了8。在配置时,就是在系统默认的UTC时区的基础上,加上偏移量8,才能得到预期的BJ时区。

<HUAWEI> clock timezone BJ add 08:00:00                

设置时区并在现在的UTC基础上偏移8

<HUAWEI> clock datetime 0:0:0 2012-12-01                

这是设置时间的命令,设置成对应的北京时间就行。

2,开启交换机的NTP服务

# 使能NTP服务器功能。

[~HUAWEI] undo ntp server disable                 开启NTP服务(默认关闭)

[*HUAWEI] commit

# 配置NTP主时钟,层数为2。

 [~HUAWEI] ntp refclock-master 2

[*HUAWEI] commit

3,下面的是NTP设置的更多功能,可以不配置

# 配置NTP认证功能,配置认证密钥并声明该密钥可信。

[~HUAWEI] ntp authentication enable

[*HUAWEI] ntp authentication-keyid 42 authentication-mode hmac-sha256 Hello@123456

[*HUAWEI] ntp trusted authentication-keyid 42

[*HUAWEI] commit

  • 广播模式

# 配置NTP主时钟,层数为2。

<HUAWEI> system-view

[~HUAWEI] ntp refclock-master 2

[*HUAWEI] commit

# 配置NTP认证功能,配置认证密钥并声明该密钥可信。

[~HUAWEI] ntp authentication enable

[*HUAWEI] ntp authentication-keyid 42 authentication-mode hmac-sha256 Hello@123456

[*HUAWEI] ntp trusted authentication-keyid 42

[*HUAWEI] commit

# 配置NTP广播服务器,从接口10GE1/0/1发送NTP广播报文,并指定使用密钥ID 42加密。

[~HUAWEI] interface 10ge 1/0/1

[~HUAWEI-10GE1/0/1] undo portswitch

[*HUAWEI-10GE1/0/1] ntp broadcast-server authentication-keyid 42

[*HUAWEI-10GE1/0/1] quit

[*HUAWEI] commit

# 使能NTP服务器功能。

[~HUAWEI] undo ntp server disable

[*HUAWEI] commit

  • 组播模式

# 配置NTP主时钟,层数为2。

<HUAWEI> system-view

[~HUAWEI] ntp refclock-master 2

[*HUAWEI] commit

# 配置NTP认证功能,配置认证密钥并声明该密钥可信。

[~HUAWEI] ntp authentication enable

[*HUAWEI] ntp authentication-keyid 42 authentication-mode hmac-sha256 Hello@123456

[*HUAWEI] ntp trusted authentication-keyid 42

[*HUAWEI] commit

# 配置NTP组播服务器,从接口10GE1/0/1发送NTP组播报文,并指定使用密钥ID 42加密。

[~HUAWEI] interface 10ge 1/0/1

[~HUAWEI-10GE1/0/1] undo portswitch

[*HUAWEI-10GE1/0/1] ntp multicast-server authentication-keyid 42

[*HUAWEI-10GE1/0/1] quit

[*HUAWEI] commit

# 使能NTP服务器功能。

[~HUAWEI] undo ntp server disable

[*HUAWEI] commit

  • 多播模式

# 配置NTP主时钟,层数为2。

<HUAWEI> system-view

[~HUAWEI] ntp refclock-master 2

[*HUAWEI] commit

# 配置NTP认证功能,配置认证密钥并声明该密钥可信。

[~HUAWEI] ntp authentication enable

[*HUAWEI] ntp authentication-keyid 42 authentication-mode hmac-sha256 Hello@123456

[*HUAWEI] ntp trusted authentication-keyid 42

[*HUAWEI] commit

# 配置NTP多播服务器,从接口10GE1/0/1发送NTP多播报文。

[~HUAWEI] interface 10ge 1/0/1

[~HUAWEI-10GE1/0/1] undo portswitch

[*HUAWEI-10GE1/0/1] ntp manycast-server

[*HUAWEI-10GE1/0/1] quit

[*HUAWEI] commit

# 使能NTP服务器功能。

[~HUAWEI] undo ntp server disable

[*HUAWEI] commit

在Windows10下搭建NTP服务

系统版本: Windows10专业工作站版

  1. 修改注册表
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
    设置为5
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\Enabled
    设置为1
  2. 打开命令命令提示符
    net stop w32time
    net start w32time
  3. 防火墙放行NTP所需端口
    123/udp
  4. 如有需要, Windows服务管理里面设置Windows Time为开机启动

另外, 针对步骤1的AnnounceFlags设置为5, 我去查了下相关资料

基本项为0/1/2/4/8

参数含义: a) 0 不作为时间服务器; b) 1 始终为时间服务器; c) 2 自动为时间服务器,意味着由 Windows 时间服务来决定角色; d) 4 始终为可靠时间服务器; e) 8 自动为可靠时间服务器,意味着由 Windows 时间服务来决定角色。

所以5=1+4, 始终为时间服务器且始终为可靠时间服务器.

我拿Windows搭建NTP服务器主要是想测试Linux下NTP服务/客户端的搭建

但是发现搭完后, Linux客户端可以使用Windows的NTP服务更新时间

但是Linux的NTP服务无法与Windows的NTP服务完成时间同步

后感

到今天为止,至少上亿的人,要么开始在家办公,要么带着口罩走进工厂,公司,或者写字楼。

这是一个艰难的抉择,而所有人,只能选择健康和生活的相对平衡。

网络上有个问题是:

疫情中的复工后,你有怎样的感触?

最戳心的一个回答是:

从来没有哪个时刻,像现在一样,让我感觉此前过得太敷衍。
以后我要努力赚钱,认真工作和生活。

是的,世界安静下来,你才能听得到心跳的声音。

经历过生死与突如其来的变故,你才能体会生活的真相。

在家里呆了差不多30天,日子被突然按下暂停键,你明白的只会是更多。

从今天起,至少上亿此前不认真生活的人,注定会「消失」或「失踪」。

而你,最大的感想是什么?

疫情不仅改变了社会,也正在改变你对世界的态度。

如果说,灾难已经无法避免。

那么,刚过去的30多天,就是中国人最深刻的一次集体修行。

健康力
才是一个人最大的能力

一个人到底拥有怎样的能力,才能在这个社会立足?

这个问题,有太多的答案。

但此次疫情给出了,最明显与直白的结果。

健康力,才是一个人最大的能力。

换句话说,健康才是一切平淡,或跌宕生活的起点。

所谓健康,不仅是指你体格足够棒,还指你心理健康,适应力强,道德健康。

身心健康,你才能不轻易被病毒感染。

道德健康,你就会遵守社会的规则与秩序,不在这样一场大灾难里被其他人唾弃。

你不会轻易出逃,不会隐瞒自己的出行与旅游经历。

同时拥有身心健康与道德健康,你才能在所有的风波里安然无恙。

寻常日子里,也许你会有太多通往光鲜,或升级版生活的逻辑。

但渡尽劫波,你就会发现,强大的健康力,才是最颠簸不破的硬实力。

有套房
是一切生活稳定感的前提

此次疫情抗击的一个关键词是:居家隔离。

房子的重要性,在这里展现得淋漓尽致。

如果你没有固定的住处,在过去的20多天里,过得比较狼狈。

但有一套房,也许你在房子里仍然会不安与忐忑,但会好很多。

我不提倡你一定要多买房,毕竟,靠买房致富的年代,已经过去。

但有套房,就算在异乡,你也不会有漂浮在空中的感觉;

有套房,就算去相亲,你也会多一些直言不讳的底气。

而在新冠肺炎这样的疫情里,有一套房,靠近超市和菜市场,不停水和停电。

你就多了一个庇护所,多了许多底气。

海子在诗里说:

从明天起,做一个幸福的人/喂马、劈柴,周游世界/从明天起,关心粮食和蔬菜/我有一所房子,面朝大海,春暖花开。

有套房,可能还是无法喂马、劈柴,但至少,你不会遁无可遁。

有套房,真的是一切生活稳定感的前提。

相信你已经意识到了。

别再欺骗自己了,如果手头有钱,就赶紧去售楼部吧。

你不能穷到没有存款!

这次新冠疫情中,哪一部分人最难受?

除了被感染者,还有没有存款的人。

假期如此漫长,复工遥遥无期,车贷、房贷仍然在那里。

但固定的收入,突然变得不可预期。

没有存款,每天的开支,都是一次对生活余量的透支,让人变得紧张。

你总以为,没有存款也是一种生活选择。

但生活,只会告诉你赤裸裸的事实:

如果你穷到连存款也没有,痛苦就会随之而来。

曾经有则直击人心的广告词是:年纪越大,越没有人会原谅你的穷。

真是这样,年龄越大,你的存款越少,生活对你投的信任票就会越少。

你和这个世界,有时候真的是靠金钱联系着,就这么简单。

那种只存不花的金钱观,当然不足取。

但只花不存,则是成年人最大的不自律。

你一旦不自律,风险的兜底能力就会大大降低。

灾难会让你害怕,也会教给你规避风险的路径。

禁足后才知道
99%的社交是无用的

一些媒体,在形容这次疫情中普通人的居家隔离时,都不约而同用到一个词:

禁足。

疫情大事件,骤然中断了你绝大部分的社会联系,也禁止了你以前不停的社交。

禁足后,会发生什么?

你会发现总想逃离的家,其实也没那么可怕;
你会明白,静下心来看一本书也是可能的;
你还会明白,99%的社交其实是没什么用的。

你呆在家里这么久,没去参加形形色色的聚会、酒局、饭局。

到最后,它们对你的影响依旧微乎其微。

那些只为聚而聚的社交,充其量只是一种弱联系,无法左右你的生活。

你的对手在看书,你的仇人在磨刀,你的闺蜜在减肥,你却把时间浪费在一场又一场的饭局中。

这种生活,不值得过。

你真正需要的,是有价值的遇见。

是你变得优秀,成为所在行业的前15%。

你若强大,人脉自来。

我已经明白了这条道理,你呢?

一辈子太长
要和有趣的人在一起

这是作家王小波的一句话。

但把它用在此次新冠肺炎疫情中,再合适不过。

呆在家中将近30天,出一趟门非常麻烦,重复的空间与生活作息,如何熬过去?

内心呆板的人,会接近崩溃;

过于安静的人,很可能会出现心理问题;

只有那些有趣的人,会活出另一种滋味。

这几天看抖音,我就格外感慨。

抖音中,有太多苦中作乐的人。

有被困在农村老家的人,在磨盘旁扮起了「毛驴」;

有人在给橘子「接生」;

有的一家人,演起了情景小剧。

疫情让他们无法自由出门,但他们在家里找到了另一个小世界。

世界上普通的人很多,但有趣的人很少。

请你做一个普通且有趣的人。

如果你遇到这样的人,请记得珍惜。

不要迷恋深夜的酒
一定要喝清晨的粥

昨晚,和一位刚返城的邻居聊天。

她在老家呆了整整18天。山区,手机都没有信号。

我问她,没有网络的日子可怕吗?

她说:恰恰相反。

从来没有在家里陪父母这么久,第一次感觉安静真好,和家人呆在一起心定。

也从来没有和孩子相处这么长时间,突然发现,除了有时候不写作业,也挺可爱。

新冠肺炎疫情,当然是一次灾难。

但换个角度来看,它何尝又不是,给所有人一个机会,和最亲近的人在一起。

灾难和意外都是不速之客。

不要等它们到来,才去爱值得爱的人。

深夜的酒,喧嚣与热闹,固然让人血脉膨胀,兴奋不已。

但只有和家人在一起的清晨,喝着温暖的粥,才是真正的开始与生活。

你千万不要迷恋深夜的酒,一定要喝清晨的粥。

你千万不要留恋在熙熙攘攘的世界,忘记了家和亲人。

回家,要趁早。

爱父母和亲人,要在当下。

武汉新冠肺炎疫情,将会如何发展?

最好结果,是2到4周内,所有病人治疗结束,2到3个月内全国疫情得到控制;

最差的结果,是控制失败,病毒席卷全球;

还有一种胶着的姿态:

病例数在可控范围内增长,抗疫过程会十分长,可能长达半年至一年之久。

现在看来,一些湖北外省份的疫情「拐点」,可能正在到来,情况在向着乐观的方向走。

这是一个好的消息。

但疫情形势依然严峻,你不能放松。

一定要用此前高度警惕的姿态,去应对。

不少城市,今天已经复工。

被紧急刹车的中国,重新开始走在路上,正常的生活,也渐渐被重启。

但这不是简单的重启。

而是你替那些死去的他们在活;

是你在替被自己荒废的昨天在活。

加缪在《鼠疫》中说:

「对未来的真正慷慨,是把一切献给现在。」

武汉继续加油,谢谢那些一直在武汉坚守的人。

全国内的拐点一定会尽快到来。

这是一场灾难。

也是一场所有中国人的集体修行。

你不要辜负这一场修行。

灾难过后,愿你都能成为一个有好身体、有风险意识,与有趣的人。

愿你有房子,也有积蓄;

愿你既看重身边人,也远离无用的社交与关系。

查看Linux版本系统信息方法汇总

Linux下如何查看版本信息, 包括位数、版本信息以及CPU内核信息、CPU具体型号等等,整个CPU信息一目了然。  

 1、# uname -a   (Linux查看版本当前操作系统内核信息)   Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2019 i686 athlon i386 GNU/Linux   

2、# cat /proc/version (Linux查看当前操作系统版本信息)       Linux version 2.4.20-8 (bhcompile@porky.devel.redhat.com)      (gcc version 3.2.2 20190222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 17:54:28 EST 2019  

3、# cat /etc/issue  或cat /etc/redhat-release(Linux查看版本当前操作系统发行版信息)   Red Hat Linux release 9 (Shrike)

  4、# cat /proc/cpuinfo (Linux查看cpu相关信息,包括型号、主频、内核信息等)   processor        : 0
     vendor_id         : AuthenticAMD
  cpu family        : 15
  model             : 1
  model name      : AMD A4-3300M APU with Radeon(tm) HD Graphics
  stepping         : 0
  cpu MHz          : 1896.236
  cache size       : 1024 KB
  fdiv_bug         : no
  hlt_bug          : no
  f00f_bug        : no
  coma_bug      : no
  fpu                : yes
  fpu_exception   : yes
  cpuid level      : 6
  wp                : yes
  flags             : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr                           sse sse2 syscall mmxext lm 3dnowext 3dnow
  bogomips      : 3774.87   

5、# getconf LONG_BIT  (Linux查看版本说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)   32  

 6、# lsb_release -a

linux中curl安装和使用

安装curl

  1. 下载curl包,地址https://curl.haxx.se/download/

wget https://curl.haxx.se/download/curl-7.59.0.tar.gz

2.解压缩

tar -xzvf curl-7.59.0.tar.gz

3.进入安装目录

cd curl-7.59.0

4.编译

./configure

make

make install

5.验证安装是否成功

curl –version

可以查看到版本,则curl安装成功。

可能碰到的问题
报错:error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory

解决方法:

1.查找文件地址:find -name libcurl.so

2.将文件路径添加到日志中:/etc/ld.so.conf

3.执行生效:/sbin/ldconfig -v

4.重新验证curl安装

curl基本使用
curl保存网页-o
curl -o page.html www.sina.com

指定http访问所使用的proxy服务器及端口-x
curl -x www.sina.com

保存cookie信息:-D
curl -x ip:n -o page.html -D cookie001.txt www.sina.com

访问时添加cookie信息:-b
curl -x ip:n -o page.html -D cookie001.txt -b cookie001.txt www.sina.com

CentOS7 一键安装KMS服务

KMS,是 Key Management System 的缩写,也就是密钥管理系统。这里所说的 KMS,毋庸置疑就是用来激活 VOL 版本的 Windows 和 Office 的 KMS 啦。经常能在网上看到有人提供的 KMS 服务器地址,那么你有没有想过自己也来搞一个这样的服务呢?而这样的服务在 Github 上已经有开源代码实现了。

有作者在这个开源代码的基础上,开发了适用于三大 Linux 发行版的一键安装 KMS 服务的脚本。

实际上,Github上的开源代码也支持Windows系统下的编译和部署。只是相对来说,这个一键部署脚本比较方便,且如果有服务器资源的话,可以长期运行,比较稳定。

当然还有一些部署好的在线KMS服务免费提供给大家使用,不过可能就是稳定性有限。

另外,也有KMS服务器的docker镜像,下载地址:luodaoyi/kms-server

感兴趣的也可以直接在Linux服务器(或者windows,不推荐)上通过docker 部署。

docker run -d docker.io/luodaoyi/kms-server
有关docker部署的资料可通过搜索查询到,不再赘述。通过docker部署KMS服务器更多细节可参考以下链接:

搭建私有KMS服务以激活用于实验的windows系统

后文主要介绍通过脚本直接部署和激活具体步骤。

脚本适用环境
系统支持:CentOS 6+,Debian 7+,Ubuntu 12+
虚拟技术:任意
内存要求:≥128M
日期 :2019 年 04 月 15 日

服务作用:在线激活windows和office

适用对象:VOL版本的windows和office

适用版本:截止到win10和office2016的所有版本

服务时间:服务器在线即提供服务

优点:在线激活 省时省力 无需安装软件 干净环保 命令简单

缺点:服务器不挂的话自动重新授权到服务器挂(服务器挂了还能继续180天)

关于本脚本
1、本脚本适用于三大 Linux 发行版,其他版本则不支持。
2、KMS 服务安装完成后会加入开机自启动。
3、默认记录日志,其日志位于 /var/log/vlmcsd.log。

使用方法
使用root用户登录,运行以下命令:

wget –no-check-certificate https://github.com/teddysun/across/raw/master/kms.sh && chmod +x kms.sh && ./kms.sh
安装完成后,输入以下命令查看端口号 1688 的监听情况:

netstat -nxtlp | grep 1688
返回值类似于如下这样就表示 OK 了:

tcp 0 0 0.0.0.0:1688 0.0.0.0:* LISTEN 3200/vlmcsd
tcp 0 0 :::1688 :::* LISTEN 3200/vlmcsd
本脚本安装完成后,会将 KMS 服务加入开机自启动。

使用命令:
启动:/etc/init.d/kms start
停止:/etc/init.d/kms stop
重启:/etc/init.d/kms restart
状态:/etc/init.d/kms status

卸载方法:
使用 root 用户登录,运行以下命令: ./kms.sh uninstall

如何使用 KMS 服务
KMS 服务,用于在线激活 VL 版本的 Windows 和 Office。

激活的前提是你的系统是批量授权版本,即 VL 版,一般企业版都是 VL 版。而 VL 版本的镜像一般内置 GVLK key,用于 KMS 激活。

可以到MSDN i tell you这个站点中下载相应镜像。建议下载时选择VL版(文件名中带有VL字符的版本)。

如果下载了非批量授权版本也没关系,只需要手动导入KMS Client Setup Key也可以使用KMS进行批量激活。不同版本的系统有不同的GVLK key,可以从微软官网找到:

Appendix A: KMS Client Setup Keys
另外,下面列表里面含有的产品的 VL 版本或者能使用 key 进入 KMS 通道的产品,都支持使用 KMS 激活。

Office 2016:https://technet.microsoft.com/zh-cn/library/dn385360(v=office.16).aspx
Office 2013:https://technet.microsoft.com/ZH-CN/library/dn385360.aspx
Office 2010:https://technet.microsoft.com/ZH-CN/library/ee624355(v=office.14).aspx
Windows:https://docs.microsoft.com/zh-cn/windows-server/get-started/kmsclientkeys

使用管理员权限运行 cmd 查看系统版本,命令如下: wmic os get caption

使用管理员权限运行 cmd 安装从上面列表得到的 key,命令如下:

slmgr /ipk xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
使用管理员权限运行 cmd 将 KMS 服务器地址设置为你自己的 IP 或 域名,命令如下:

slmgr /skms Your IP or Domain
注意:本脚本所做的工作就是此步骤。当你的 KMS 服务出于启动状态,那么此处就可以设置为你自己的 KMS 服务器地址。

使用管理员权限运行 cmd 手动激活系统,命令如下:

slmgr /ato

单独激活office说明

关于 Office 的激活,要求必须是 VOL 版本,否则无法激活。

找到你的 Office 安装目录,32 位默认一般为 C:\Program Files (x86)\Microsoft Office\Office16
64 位默认一般为 C:\Program Files\Microsoft Office\Office16
Office16 是 Office 2016,Office15 就是 Office 2013,Office14 就是 Office 2010。
打开以上所说的目录,应该有个 OSPP.VBS 文件。
使用管理员权限运行 cmd 进入 Office 目录,命令如下:

cd “C:\Program Files (x86)\Microsoft Office\Office16”
使用管理员权限运行 cmd 注册 KMS 服务器地址:

cscript ospp.vbs /sethst:Your IP or Domain
使用管理员权限运行 cmd 手动激活 Office,命令如下:

cscript ospp.vbs /act
注意: KMS 方式激活,其有效期只有 180 天。

每隔一段时间系统会自动向 KMS 服务器请求续期,请确保你自己的 KMS 服务正常运行。

常见错误的对策
如果遇到在执行过程报错,请按以下步骤检查:
1,你的 KMS 服务器是否挂了?
2,你的 KMS 服务是否正常开启?
3,你的系统或 Office 是否为批量 VL 版本?
4,你的系统或 Office 是否修改过 Key 或未安装 GVLK Key?
5,你是否以管理员权限运行 cmd?
6,你的网络连接是否正常?
7,你的本地 DNS 解析是否正常?
8,如果你排除了以上的对策,那请根据错误提示代码自行搜索原因。

0x80070005错误一般是你没用管理员权限运行CMD

Windows7安装盘集成USB3.0驱动支持Skylake平台

Intel的Skylake平台按照正常方式装不了Win7,这是因为移除EHCI主控,改为支持XHCI主控,但Windows 7系统原生不支持XHCI主控,没了EHCI,Skylake平台上装Windows 7系统时无法识别USB接口。

通过U盘安装的时候会提示需要加载驱动,提示“缺少所需的 CD/DVD 驱动器设备驱动程序 … … ”。

如果是sata光驱使用光盘来安装Win7系统,由于Win7并不包含USB3.0 的驱动,所以usb鼠标和键盘不能使用。

为了方便需要制作一个可以在skylake上安装win7的U盘系统(这边以制作好的U盘启动盘为例)

其实如果是usb3.0的U盘,加载了usb3.0驱动,安装win7的时间大幅度减少。

1、U盘\sources\路径下的 “boot.wim”和“install.wim”两个文件,复制到电脑硬盘上(如E:\win7)

2、Intel USB3.0 驱动下载 : https://downloadcenter.intel.com/zh-cn/search?keyword=usb+3 (下载最新版即可),并把Drivers解压到E:\win7\usb3文件夹下,Drivers 文件夹内有 HCSwitch 与 Win7两个子文件夹,而这两个子文件夹内各自有 x64和x86 两个驱动的文件夹,最好根据win7 32位/64位版本来确定删除那个文件夹

3、这边使用Windows PowerShell 来操作,当然也可以使用CMD命令来操作,命令几乎是一样的。(两者最好以管理员权限运行)

4、在E:\win7创建mount文件夹,并通过「Windows PowerShell」命令进入win7文件夹。

在「Windows PowerShell」的 CLI 窗口

 输入   e:          (按Enter)

 输入   cd win7  (按Enter)

5、输入或复制贴上下列指令即开始挂载映像,并搜寻usb3文件夹内的XHCI驱动整入到boot.wim映像档中。

 dism /mount-wim /wimfile:boot.wim /index:2 /mountdir:mount

 dism /image:mount /add-driver:”usb3″ /recurse

 dism /unmount-wim /mountdir:mount /commit

6、输入或复制贴上下列指令即开始挂载映像,并搜寻usb3文件夹内的XHCI驱动整入到 install.wim 映像档中。

 (这里需注意的是 index:4 ,数字表示 install.wim 映像中的第 4 个子映像)

 dism /mount-wim /wimfile:install.wim /index:4 /mountdir:mount

 dism /image:mount /add-driver:”usb3″ /recurse

 dism /unmount-wim /mountdir:mount /commit

如果你想将旗舰版镜像内包含的所有子映像版本都整入驱动,那就必须每一个子映像(数字)都执行一次!

对于Win7 x86 与 x64 所包含的版本(數字)顺序 :

(x86)                                                                

1. Starter ————— 简易版

2. HomeBasic ———- 家庭普通版(简) / 家用入门版(繁)

3. HomePremium —— 家庭高级版(简) / 家用进阶版(繁)

4. Professional ——— 专业版

5. Ultimate ————- 旗舰版

(x64)

1. HomeBasic ———- 家庭普通版(简) / 家用入门版(繁)

2. HomePremium —— 家庭高级版(简) / 家用进阶版(繁)

3. Professional ——— 专业版

4. Ultimate ————- 旗舰版

7、 将集成好驱动的“boot.wim”和“install.wim”两个文件,复制并覆盖U盘\sources\路径下的 “boot.wim”和“install.wim”两个文件

1.png

华为交换机VLAN配置

主要讲华为交换机中VLAN的配置,以下\\(包含\\)后面的是说明

452-6.png

1、交换上配置多个VLAN

<Huawei>system-view    \\进入系统视图

[Huawei]vlan 10    \\划分vlan10

[Huawei-vlan10]description IT    \\名称修改为IT

[Huawei-vlan10]quit

[Huawei]vlan 20    \\划分vlan20

[Huawei-vlan20]description HR    \\名称修改为HR

[Huawei-vlan20]quit

[Huawei]vlan 30    \\划分vlan30

[Huawei-vlan30]description SCM    \\名称修改为SCM

[Huawei-vlan30]quit

[Huawei]vlan 40    \\划分vlan40

[Huawei-vlan40]description FIN    \\名称修改为FIN

[Huawei-vlan40]quit

[Huawei]display vlan    \\显示当前vlan配置

452-1.png

2、配置vlanif ip地址

[Huawei]int vlanif 10

[Huawei-Vlanif10]ip address 192.168.10.1 255.255.254.0

[Huawei-Vlanif10]q

[Huawei]int vlanif 20

[Huawei-Vlanif20]ip address 192.168.20.1 255.255.254.0

[Huawei-Vlanif20]q

[Huawei]int vlanif 30

[Huawei-Vlanif30]ip address 192.168.30.1 255.255.254.0

[Huawei-Vlanif30]q

[Huawei]int vlanif 40

[Huawei-Vlanif40]ip address 192.168.40.1 255.255.254.0

[Huawei-Vlanif40]q

452-2.png

3、配置网口Vlan

[Huawei]int g0/0/1    \\进入网口0/0/1视图

[Huawei-GigabitEthernet0/0/1]port link-type access    \\配置网口模式为access

[Huawei-GigabitEthernet0/0/1]port default vlan 10    \\配置网口Vlan为10

[Huawei-GigabitEthernet0/0/1]q

[Huawei]port-group 1    \\创建端口组1

[Huawei-port-group-1]group-member g0/0/2 to g0/0/5    \\把网口0/0/2-0/0/5加入端口组1

[Huawei-port-group-1]port link-type access    \\配置端口组1的所有网口模式为access

[Huawei-GigabitEthernet0/0/2]port link-type access    \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/3]port link-type access   \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/4]port link-type access   \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/5]port link-type access   \\自动生成,无需输入

[Huawei-port-group-1]port default vlan 20    \\配置端口组1所有网口的Vlan为20

[Huawei-GigabitEthernet0/0/2]port default vlan 20   \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/3]port default vlan 20   \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/4]port default vlan 20   \\自动生成,无需输入

[Huawei-GigabitEthernet0/0/5]port default vlan 20   \\自动生成,无需输入

[Huawei-port-group-1]q

其他的这边不一一写出了。

452-3.png
452-5.png

4、删除VLAN和端口组

[Huawei]undo vlan 50    \\删除ID为50的VLAN

[Huawei]undo port-group 1    \\删除ID为1的端口组