藏龙岛湿地公园

1. 简介

藏龙岛国家级湿地公园规划面积为401公顷,位于江夏区藏龙岛科技园,包括杨桥湖、上潭湖、下潭湖、玉叶滩、明星林场等区域,有“藏龙八景”、“杨桥湖二十四桥”等景观。园区生活着黑斑蛙、中华大蟾蜍、乌梢蛇、豹猫等省级保护动物,八哥、家燕、黑水鸡、灰喜鹊、大山雀等省级保护鸟类。

2. 自然资源

园区生活着黑斑蛙、中华大蟾蜍、乌梢蛇、豹猫等省级保护动物,八哥、家燕、黑水鸡、灰喜鹊、大山雀等省级保护鸟类。

3. 发展历史

2011年1月,武汉市新添两个省级湿地公园——后官湖湿地公园和藏龙岛湿地公园。至此,武汉市省级湿地公园达3个。 武汉已建有东湖国家湿地公园,以及杜公湖、后官湖、藏龙岛等3个省级湿地公园,总面积为5207.3公顷。藏龙岛湿地公园拟用8年建设,由武汉江夏经济开发区藏龙岛办事处承建,规划投资1.5亿多元。2013年4月份藏龙岛省级湿地公园升级为国家湿地公园,与东湖比肩,将按高标准进行植被恢复等保护性建设。

4. 主要景点

藏龙岛湿地公园主要建设内容为喷泉景观改造工程、芦苇荡建设和改造工程、驳岸改造工程、码头建设和服务中心改造工程、新建鱼鲜饮食街、高尔夫球场堤坝景观改造工程、藏龙号周边景观改造和地标性水景建设、玉叶滩开发及明星林场改造工程、桥梁重建及藏龙号广场建设等工程。

后官湖湿地公园及其绿道

1. 简介

后官湖湿地公园是国家级湿地公园,面积达3186.3公顷,是东湖湿地公园的3倍,为武汉建设的最大的湿地公园。位于三环线以西、蔡甸中北部,包括百镰湖、皮泗湖、筲箕湖、王家湖、高湖、知音湖及沿岸用地。该湿地公园建成后,将再现“青山隐隐曲水绕,草滩深处白鹭飞”的原生态自然景观。

后官湖绿道位于武汉市蔡甸区后官湖畔。总长度110公里 ,占地总面积约530公顷 ,带有骑行专用自行车道和步道,是武汉首条郊野绿道,也是全国第二条郊野绿道。

2. 地理和气候

后官湖湿地公园位于蔡甸区中北部,高湖水域沿岸,地理坐标为:东经113°58′-114°05′,北纬30°30′-30°34′之间。区域内山水资源丰富,属浅水型淡水湖泊,具有底平、水浅、水生生物资源丰富、湖泊功能显著等特征。

后官湖主体由知音湖、皮泗海、白莲湖、天鹅湖、高湖组成。区域内自然形成的岬、屿、岛、湾、洲星罗棋布,湖泊岸线自然曲折,湖光山色交相辉映,既有完整的湿地生态系统,又有湖区渔耕的人文风貌。

公园内风光旖旎,群山环绕,俊俏靓丽,主要包括玉笋山、横山、马鞍山、笔架山、天子山、伏牛山、凤凰山等十多座山。区域内最高景观眺望点是马鞍山,高程为88.3米。临近后官湖南岸的天子山,高程为66.5米,是最佳观园赏景视点。

后官湖属于属亚热带过渡性季风气候,具有热丰、水富、光足的特点。

3. 自然资源

后官湖湿地生物多样性丰富,动植物种类繁多。共有维管束植物69科,131属,158种,其中有国家重点保护野生植物莲和野菱2种。有脊椎动物33目81科258种,其中,鱼类8目15科80种,两栖动物1目4科10种,爬行动物2目7科24种,鸟类15目43科149种,兽类7目12科23种。在258种脊椎动物中,国家重点保护动物24种,其中,国家Ⅰ级有白头鹤1种,Ⅱ级有河麂、白琵鹭、灰鹤、黑鸢、赤腹鹰、普通鵟、红角鸮、斑头鸺鹠等23种。有浮游藻类7门30科52属78种,浮游动物20种,底栖动物42种。优越的自然地理环境,使后官湖湿地成为大武汉不可多得的一个天然野生动植物园。

4. 发展历史

2010年,武汉市将后官湖列入新建湿地公园的行列。同年,湖北省林业厅以鄂林护函〔2010〕545号文件批准建立后官湖省级湿地公园。为了进一步加强后官湖湿地公园的建设和管理,2012年,蔡甸区委区政府决定,将后官湖湿地申报为国家湿地公园。湖北省野生动植物保护总站、中国科学院武汉植物园等单位专家对后官湖湿地公园本底资源进行了系统调查,在此基础上,编制了总体规划。 后官湖湿地公园拟用8年建设,由武汉蔡甸现代农业投资有限公司承建,规划投资4.44亿多元。

国家林业局发布了2016年试点国家湿地公园验收结果:蔡甸区后官湖国家湿地公园(试点)顺利通过验收,正式成为“国家湿地公园”。

5. 神话传说

有人说,因为湖水的形状像“官”字而得名。

也有人说,因为姜子牙的传说而得名“候官湖”。

相传,姜子牙年轻时文武双全,武功盖世,但生不逢时,一直没得到朝廷重用。47岁那年,天下大旱,父亲为寻水源劳累而死,母亲也奄奄一息。姜子牙背着母亲一边乞讨,一边寻找水源。

终于,母子俩找到蔡甸的一个大湖,并在湖边定居下来,靠砍柴捕鱼苦度生计。这天,来了一位脚穿草鞋、头戴破帽的乞讨老人,姜母见其可怜,毫不犹豫将自家仅有一块面饼递给老人。老人说,“我家还有老伴重病在床,请你们帮帮忙,送我老伴去治病,你们望着北极星向北翻过三座山就到了。”

次日,姜子牙翻过三座山,看到一座宫殿。从宫殿中走出一人,原来就是昨天乞讨的那位老人。经过老人举荐,姜子牙在朝庭做了官。后来,姜子牙封官为侯,先后辅佐六位周王。因此,当地人将他出仕前生活过的那片大湖叫“候官湖”。凡蔡甸地区学子进京赶考,必得从候官湖走水路去汉口。而京城放榜的喜讯,从京城传到汉口,也再沿水路传到蔡甸。那些一心想走仕途的学子们,常常会在京城放榜之日,站在候官湖畔等待喜讯。

大家干脆将这片湖称为“候官湖”,后来口口相传,就演变成“后官湖”。

“自古以来,许多朝代的名人高官都诞生于这片湖区,如明代兵部尚书戴金,清康熙帝师熊伯龙等,因此民间还有一种说法,古时候蔡甸地区的学子进京赶考,必得从今天的后官湖畔走水路先往武昌,再去京城,而京城放榜的日子,喜报也会沿水路传到蔡甸。于是,那些一心想走仕途的学子们,常常会在京城放榜的日子里,站在湖畔等候京官送来喜报”。

这种说法在普通老百姓那里的另一个理解是,这些在此等候的人,从此之后便为官人了,而且“候”和“后”同音,所以渐渐把这个地方叫作“后官湖”。

王汉伟介绍,在蔡甸古地方志里,有关后官湖的记载,一直有“候官湖”和“后官湖”两种提法,但“后官湖”的提法居多,后来约定俗成,使用了“后官湖”。

王汉伟感慨,20多年前,大后官湖水域还是一片“野湖汊”,伴随着国家级经济开发区沌口车都的打造,汉阳王家湾的崛起,汉阳黄金口工业园的建设,经开区城市化进程等,如今环湖四周已形成现代工业集聚区和都市生活居住区相融合的“产城一体”城市格局。而随着城市化进程,以前湖汊众多的后官湖,已成为大水网,使武汉西部的后官湖,一跃成为武汉境内的第四大湖。

6. 主要景点

后官湖绿道所经之地有亮丽的湖光山色、丰富的人文景观、充满活力的玩乐项目。据了解,后官湖郊野绿道将生态资源保护和知音文化传承相结合,以“山水相融、田园相映、林城相依、知音文化”为指导思想,打造韵律田园风光、雅乐知音故事、静谧莲花水乡三大主题;形成隔离系统、绿化系统、慢行系统、标识系统、服务系统五大系统,具备湖泊修复、生态保护、休闲游憩、旅游经济四大功能。绿道规划兴建Ⅰ级驿站24个、Ⅱ级驿站48个、自行车道110千米、人行步道60千米、游艇码头10座。

高山流水、夜泊枫桥、雨打芭蕉、渔舟唱晚等24个诗意景点。

沿湖周边的羊谷山、虎头山、马鞍山、龙头山等形成“十二生肖”系列。

使用PANDAseq连接重叠的Paired-End Illumina数据

PANDAseq(https://github.com/neufeld/pandaseq)用于将Paired-End测序且有重叠的双末端reads连接成一条较长的read。该软件2021年发表于BMC Bioinformatics,并在2017年3月更新到2.11版本。PANDseq软件先检测双端reads重叠再连接,使用时默认使用simple_bayesian算法,也还可以选择FastqJoin in ea-utils, FLASH (Fast Length Adjustment of SHort reads)PEAR (Paired-End AssembleR)算法。此外,PANDAseq将双末端数据连接时,能根据重叠结果,修正不匹配碱基(选择碱基质量高的碱基)和未知碱基。

1. 软件下载和安装

wget https://github.com/neufeld/pandaseq/archive/refs/tags/v2.11.tar.gz -O pandaseq-2.11.tar.gz
tar zxf pandaseq-2.11.tar.gz
cd pandaseq-2.11/
./autogen.sh
./configure --prefix=/opt/biosoft/pandaseq-2.11
make -j 4 && make install 
cd .. && rm -rf pandaseq-2.11
echo 'PATH=$PATH:/opt/biosoft/pandaseq-2.11/bin/' >> ~/.bashrc
source ~/.bashrc

2. 软件的使用

常用示例:

pandaseq -f illumina.1.fastq -r illumina.2.fastq -k 5 -o 5 -F  > out.fastq 2> out.tab

常用参数:

-6    default: None
	添加该参数,表示输入数据是Phred64碱基质量格式。程序默认识别Phred33碱基质量格式。
-A <string>    default: simple_bayesian
	设置软件的算法。simple_bayesian[:error_estimation],默认使用PANDAseq软件发表文章中的算法,可以输入错误率;ea_util,使用FastqJoin算法;flash,使用FLASH算法;pear[:random_base],使用PEAR算法,可以输入一个随机碱基的概率;rdp_mle,使用RDP算法;stitch,使用Sitch算法;uparse[:error_estimation],使用UPARSE/USEARCH算法,可以输入错误率。
-f <string>    default: None
	输入reads1的FASTQ文件,支持gzip或bzip2格式的文件。
-r <string>    default: None
	输入reads2的FASTQ文件,支持gzip或bzip2格式的文件。
-F    default: None
	程序默认输出FASTA的结果。若添加该参数则输出Phred33碱基质量格式的FASTQ格式文件。即使输入的FASTQ文件是Phred64碱基质量格式,也输出Phred33格式的结果;重叠区域输出两条reads的平均碱基质量,非重叠区域输出各自原本的碱基质量。
-k <int>    default: 2
	设置k-mer序列记录的位置个数。程序通过k-mer序列进行比对,记录k-mer序列出现在reads序列的位置信息。若reads有重复,则k-mer可能出现在一条read的多个地方,程序默认仅记录2个位置信息。该参数设置不能超过10,该值越大越消耗内存和计算,但是应该结果也更准确。最好推荐提高该值,直到FML的错误提示变少。
-o <int>    default: 1
	设置首尾reads最小的重叠碱基长度。作者在软件说明中表示:默认最少有1个碱基重叠,但后续回根据打分能去除重叠较少的结果。实际测试结果中则保留最少有3个碱基重叠的数据。个人推荐根据数据的平均重叠长度设置为5或更高。
-O <int>    default: read length
	设置首尾reads最长的重叠碱基长度。
-t <float>    default: 0.6
	设置最低得分阈值,该参数值在0~1之间。具体的计分方法软件说明书中没有。
-T <int>    default: max
	设置线程数,默认为计算机的最大CPU线程数。若编译PANDAseq软件时使用了pthreads,则支持该参数设置更大的值。由于计算速度可能受到I/O瓶颈,即使设置了很高的参数值,真实可能仅能利用8~16个CPU线程。
-l <int>    default: None
	设置最短序列长度。去除连接后长度低于该值的序列,默认保留所有序列。
-L <int>    default: None
	设置最长序列长度。去除连接后长度高于该值的序列,默认保留所有序列。
-N    default: None
添加该参数,则表示去除连接后含有碱基N的序列。

程序默认在标准输出中给出FASTA或FASTQ的结果数据,在标准错误输出中给出各reads对的重叠信息和统计信息。

统计信息显示每个计算的CPU线程结果,若仅用1个CPU线程,则能直接看到所有数据的统计结果,示例如下,可以看到消耗的时间(ELAPSED)、重叠碱基长度及数量(OVERLAPS,按顺序表示重叠长度为1,2,3…bp的reads对个数)和各reads对数量:输入(READS)、未能找到重叠(NOALGN)、重叠得分低(LOWQ)、多长或过短(BADR)、计算较费时(SLOW)和输出(OK)。

0x1471a80:0     STAT    TIME    Mon Nov 15 09:40:09 2021
0x1471a80:0     STAT    ELAPSED 277
0x1471a80:0     STAT    READS   10220063
0x1471a80:0     STAT    NOALGN  455052
0x1471a80:0     STAT    LOWQ    754593
0x1471a80:0     STAT    BADR    0
0x1471a80:0     STAT    SLOW    2077539
0x1471a80:0     STAT    OK      9010418
0x1471a80:0     STAT    OVERLAPS        0 0 0 0 0 143771 155071 166920 167346 211873 218965 219605 224772 224272 229920 231389 232102 …

常见reads的重叠信息中第三列:

INFO    BESTOLP最优重叠参数。
ERR       LOWQ得分低设定的最低阈值。
DBG       FMLk-mer出现在read中的次数超过了指定的阈值,表示找的重叠可能不准确。

在windows系统下用sshfs挂载服务器目录

1. 安装winfspsshfs-win软件

在Linux系统上可以使用sshfs命令通过ssh挂载远程服务器的目录。而在windows系统上也可以使用同样的方式挂载。这时,需要在windows系统上安装sshfs命令即可。需要安装sshfs-win软,该软件需要依赖winfsp软件。这两个软件是同一个作者写的,属于Cygwin软件系列。在GitHub上下载这winfspsshfs-win两个软件的最新版本,按顺序安装即可。

2. 挂载远程服务器的路径到Windows系统中

sshfs-win软件安装完毕后,使用如下方法挂载远程服务器的目录:在windows10系统中按windows+e打开我的电脑,左键点击此电脑,点击窗口左上角的计算机,点击映射网络驱动器,弹出一个窗口;在输入框中输入远程服务器的信息,点击完成,输入用户密码,即可永久将远程服务器的目录挂载成windows系统的Z盘。

关键的远程服务器的信息书写格式为

\\sshfs\用户名@IP地址!端口\路径

示例:
\\ssfs\chenlianfu@122.205.95.116!22\home\chenlianfu

CentOS8系统中开启NFS文件共享和网络共享

1. 设置NFS文件共享

由于在安装CentOS8系统带GUI界面服务器版本时勾选了所有软件包,默认已经包含了nfs-util软件,能用于NFS共享。首先,开启软件和相应防火墙设置:

开启防火墙设置
firewall-cmd --add-service=nfs --permanent
firewall-cmd --reload

使用root用户运行程序,开启nfs服务并设置开机启动:
systemctl restart rpcbind.service
systemctl restart nfs-server.service
systemctl enable rpcbind.service
systemctl enable nfs-server.service

再设置共享的目录并生效:

cat << EOF >> /etc/exports
/disk   12.12.12.0/24(rw,sync,no_root_squash,no_subtree_check)
/opt    12.12.12.0/24(rw,sync,no_root_squash,no_subtree_check)
EOF

exportfs -rv

当前服务器ip为12.12.12.1,在另外一台ip为12.12.12.2服务器的服务器上挂载共享目录:

mkdir /disk

一次性临时挂载:
mount -t nfs 12.12.12.1:/disk /disk

永久挂载:
cat << EOF >> /etc/fstab
12.12.12.1:/disk /disk  nfs  defaults  0  0
12.12.12.1:/opt  /opt   nfs  defaults  0  0
EOF
mount -a

2. 设置网络共享

将带有外网管理服务器的网络共享给内部局域网的其它计算服务器,则在管理节点上使用root用户进行操作:

防护墙设置:
firewall-cmd --add-port=53/tcp --permanent
firewall-cmd --permanent --add-masquerade
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o ens6 -j MASQUERADE -s 12.12.12.0/24
注意ens6是连接外网的网卡名称,12.12.12.0/24是内部局域网的IP段。
firewall-cmd --reload

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl -p

在管理服务器上的内网ip是12.12.12.1,则在其它内网计算节点的服务器ip设置相同的ip段和不同ip编号,子网掩码为255.255.255.0,网关为共享因特网的服务器内网ip地址12.12.12.1。再设置好DNS,则能让内网服务器连接因特网。

CentOS对XFS磁盘进行配额

1. 安装quota软件

若没有xfs_quota命令,则安装quota软件:

dnf install quota

2. 关闭SeLinux安全机制

临时关闭
setenforce 0

永久关闭
perl -p -i -e 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

3. 挂载磁盘时添加配额参数

mount -o remount,usrquota,grpquota /dev/sdb1 /home

或修改 /etc/fstab 文件永久生效(需要重新挂载目标分区才能生效):

/dev/sdb1 /home xfs defaults,usrquota,grpquota 0 0

然后使用mount命令查看挂载分区是否支持磁盘配额:

mount | grep home
/dev/sdb1 on /home type xfs (rw,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)

4. 开机时设置配额参数

虽然添加了挂载参数,使用mount命令检测时,其挂载方式依然是noquota。在使用xfs_quota进行配额时会失败,提示:

xfs_quota: cannot set limits: Function not implemented

此时,需要进行开机的配置设置,修改启动配置文件/etc/default/grub内容如下:

GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=centos/root crashkernel=auto  vconsole.keymap=us rhgb quiet rootflags=uquota,pquota"
主要添加了rootflags=uquota,pquota参数。

然后,重新生成启动文件:

对于Legacy启动
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.orig
grub2-mkconfig -o /boot/grub2/grub.cfg

对于UEFI启动
cp /boot/efi/EFI/centos/grub.cfg /boot/efi/EFI/centos/grub.cfg.orig
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

然后重启后,再检测mount参数。

5. 使用xfs_quota命令对分区进行配额

对user01用户的/home分区进行配额。软限制为3G,硬限制为3.5G。

xfs_quota -x -c 'limit bsoft=3000m bhard=3500m user01' /home
xfs_quota -x -c report /home

-x 允许执行管理员指令
-c 输入执行的指令

6. 使用xfs_quota命令对目录进行配额

对user01、user02、user03等多个用户的家目录进行配额。软限制为3G,硬限制为3.5G。按如下步骤进行:

第一步,生成/etc/projects文件
echo "1000:/home/user01
1000:/home/user02
1002:/home/user03" > /etc/projects
以上/etc/projects文件中设置了两个project编号。project编号是一个数字,可以随便给一个。其中1000对应两个文件夹,1002对应一个文件夹。后续设置好后,这1000对应的两个文件夹一起共享一个配额,而1002对应的文件夹独享一个配额。

第二步,生成/etc/projid文件
echo "user01_3G:1000
user03_3G:1002" > /etc/projid
该/etc/projid文件设置一个好记的project名称(随便取名,推荐取得有意义些),对应这project编号。

第三步,让project名称生效
xfs_quota -x -c 'project -s user01_3G' /home
xfs_quota -x -c 'project -s user03_3G' /home
命令行project的参数-s表示读取/etc/projects文件内容,标记目标文件夹进行配额。每当对/etc/projects文件内容进行修改后,则需要重新运行相应的命令,使修改生效。

第四步,设置project名称对应的磁盘配额。
xfs_quota -x -c 'limit -p bsoft=3000m bhard=3500m user01_3G' /home
xfs_quota -x -c 'limit -p bsoft=3000m bhard=3500m user03_3G' /home
命令行limit的参数-p表示使用project方式进行配额。若配额限制为0,则表示不进行配额限制。

7. 查看配额信息

查看磁盘配额及使用量:

xfs_quota -x -c report /home

查看磁盘分区和目录是否有quota设置:

xfs_quota -x -c print

查看磁盘配额的使用量:

xfs_quota -x -c “df -h”

Windows10激活

在新安装的Windows10专业版系统中,按Windows+x,再按a,可以打开管理员Windows PowerShell界面,输入如下命令来导入密钥并激活Windows10专业版系统。

slmgr.vbs /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX
slmgr.vbs /skms zh.us.to
slmgr.vbs /ato

以上命令能导入产品密钥,设置KMS服务器IP地址,并进行在线激活(联网状态下需要等待约一分钟)。然后使用如下命令检测激活状态。

slmgr.vbs -xpr
slmgr.vbs -dli
slmgr.vbs -dlv

清除产品密钥信息操作为:

slmgr.vbs -cpky

此外,若用于激活的域名并能正常连接,可以使用其他域名:

zh.us.to
kms.03k.org
kms.chinancce.com
kms.shuax.com
kms.dwhd.org
kms.luody.info
kms.digiboy.ir
kms.lotro.cc
ss.yechiu.xin
www.zgbs.cc
cy2617.jios.org

三阶魔方玩法

我在以下内容中记录了我学习的三阶魔方复原方法。按照该方法学习复原三阶魔方是比较简单且成功率很高的。特别是在有人直接教的情况下,10分钟就可以学会,30分钟可以成功完全靠自己恢复三阶魔方。当然,魔方的复原方法有多种,以下应该是学习起来最简单的方法了。

学习三阶魔方复原方法前,先了解一点相关常识和术语:

1. 三阶魔方有6面3层:顶面、底面和4个侧面;上中下三层,顶层,中间层和底层。
2. 每面包含9个色块:其中有1个位于最中心的,称为中心块;在4个位于角落上的,称为角块;其余4个位于边的中间,称为棱块。
3. 魔方6个面:双手拿起魔方,一面正对自己胸口,称为正面(F);一面位于左手边,称为左面(L);一面位于右手边,称为右面(R)。这3个面是我们眼睛经常能看到的面,是最重要的3个面。对这3个面进行操作,我们其实就是操纵了所有的6个面。此外,还有上/顶面(U)、下/底面(D)和背面(B)。
4. 魔方的旋转:需要旋转魔方,从而对魔方进行复原。对某个面的旋转有两种方向,即顺时针和逆时针。比如对F面进行顺时针旋转,其操作称为F,进行逆时针旋转,其操作称为F'。同理,L表示对左面进行顺时针旋转,L'表示对左面逆时针旋转;R表示对右面进行顺时针旋转,R'对右面进行逆时针旋转;U表示对上面进行顺时针旋转,U'对上面进行逆时针旋转;D表示对下面进行顺时针旋转,D'对下面进行逆时针旋转;以下教程不会对背面(B)和中间层(M)进行旋转。
5. 魔方有上中下三层。上层称为顶层,第二层称为中间层,下层称为底层。

对三阶魔方的旋转复原过程包含7个步骤:(1)底面十字;(2)底层还原;(3)二层还原;(4)顶部十字;(5)顶层还原;(6)顶角还原;(7)顶棱还原。

1. 底面十字

手持三阶魔方,本教程以白色(当然也可以选其它颜色)作为底面进行参照。首先将白色中心块所在面作为底面。然后将4个白色棱块全部旋转到顶面。然后,同步旋转中间层和底层,使正面的顶层和中间层的色块一致,然后将该正面旋转180度,让第一个白色棱块移到底部。再调整魔方方位,让顶面的一个白色棱块位于正面顶层,同步旋转中间层和底层,使正面的顶层和中间层的色块一致,然后将该正面旋转180度,让第二个白色棱块移到底部。同样的方式,将所有4个白色棱块全部移动底面。

此时,底面出现白色十字色块,同时每个白色棱块相邻侧面的底层棱块和中心块颜色一致。

2. 底层还原

经过上一个步骤后,还有4个白色角块可能没位于底面。此时查看4个白色角块位置。若某个白色角块位于顶层侧面,再查看该白色角块紧邻的另外一个顶层侧面角块的颜色,比如为绿色。我们需要将这两个角块所在的魔方颗粒(该颗粒包含3个角块)移动到最下层。此时,白色角块和绿色角块一个在左一个在右,往这两个角块中白色所在的方向旋转顶层,直到绿色角块和绿色中心块位于同一个侧面时,再继续旋转顶层90度。然后旋转绿色中心块所在的侧面90度,并使底面的白色棱块靠近目标白色角块。再反方向旋转顶层90度,此时白色棱块和目标白色角块挨到一起了,再反方向旋转绿色中心块所在的面,让白色棱块再次旋转到底面。此时,白色角块还原到底面,相邻的绿色角块还原到绿色中心块所在面的底层。

采用同样的方式将所有4个白色角块还原到底面,则底面9个色块的颜色都成了白色。此时,和4个白色相邻的底层侧面角块也和其中心块颜色一直。在第一个步骤中,底层侧面棱块和中心块颜色一致。因此,底层侧面的3个色块颜色都和其侧面中心块颜色一致。实现了底层(包含底面)还原。

若发现某个白色角块不在顶层侧面,则通过简单的旋转可以将白色角块挪到顶层侧面。这个是很简单的。然后按照上面的方法将4个白色角块还原到底面。

3. 中层还原

经过以上两个步骤后,4个侧面中的中心块和底层色块一致。此时,需要将侧面中间层的棱块还原。一个侧面中间层的棱块所在的魔方颗粒包含2个棱块,且其棱块的颜色是红、绿、蓝和橙。需要将包含这4种颜色(不能包含黄色和白色,其实主要不能包含黄色,因为白色已经全部在底面了)的魔方颗粒还原到其正确的位置。这些魔方颗粒位于两个位置:位置1,两个侧面连接处的棱块上;位置2,侧面和顶面连接处的棱块上。

将位置2处的棱块移到位置1处且还原颜色:在位置2处找到目标魔方颗粒,该颗粒上的2个棱块颜色不能包含黄色。旋转顶层,使目标颗粒侧面的棱块颜色和所在面(侧面1)的中心块颜色一致,称该位置为“位置2标准位”。再查看目标颗粒顶面的棱块颜色,该颜色必然和侧面1紧邻的侧面2(中心块代表该面的颜色)颜色相同。此时,旋转顶层90度,使目标颗粒远离侧面2,再将侧面2旋转90度,使3个白色块转到侧面且紧挨侧面1。然后,反方向旋转顶层90度,使目标颗粒回到“位置2标准位”,继续反方向旋转侧面2,使2个白色块回到底面。此时,最后一个白色角块位于顶层侧面,按照底层还原方法将白色块还原到底面,则目标颗粒有“位置2标准位”变换到位置1且进行了颜色还原。对所有位置2处的颗粒进行还原,直到中层还原为止。

当在位置2处找不到目标魔方颗粒,且中层没有完全还原。是因为未还原的目标颗粒位于位置1上。此时需要将目标颗粒由位置1挪动到位置2后,再执行上面的操作,还原它。将目标颗粒由位置1挪动到位置2的方法:先找到目标颗粒,查看其所在的两个侧面,然后旋转其中一个侧面(侧面1)90度,并使目标颗粒挪动到顶层,此时3个白色块移到了一个侧面。再旋转顶层90度,并让顶层白色角块远离侧面1。然后对侧面1反向旋转,使2个白色块还原到底面,此时1个白色角块位于顶层侧面。再按照底层还原的方法将白色角块还原到底面,此时目标魔方颗粒即可由位置1变换到位置2。

4. 顶面十字

5. 顶面还原

当顶面还原出黄色十字和仅一个黄色角块。此时变换魔方的方位,让该角块位于右下角,再看正面的顶层黄色角块位置。若该黄色角块靠近左手侧,则使用左手小鱼公式( L’ U’ L U’ L’ U’ U’ L )旋转魔方;若该黄色角块靠近右手侧,则使用右手小鱼公式( R U R’ U R U U R’ )旋转魔方。以上两个方法都可以直接还原出顶面。对小鱼公式的理解如下:

1. 其旋转方法是对顶面(Up面)旋转了4次,对一侧的左面或右面交互进行顺时针和逆时针旋转。其效果不会改变底层和下面两层的色块,能对顶面的角块进行转换,对顶面的棱块不会改变。由于主要是顶层旋转4次,且旋转方向一致,于是称为Up公式,强行翻译到中文且好听点,很多人称为小鱼公式。
2. 以右手小鱼为例:对右手面进行旋转时,先R后R',先R'后R都时可以的;对顶层旋转时,进行U和U'两个旋转方向都行;于是有4种旋转方法,但对顶层色块的改变效果是不一致的。但是为了教学和快速入门需要,规定了其中最简单的一种作为咱们的教程。为什么上面的小鱼公式是四种种最简单的一种,多练习练习和想一想,应该可以明白这4种方法的异同。

6. 顶角还原

在顶面还原后,旋转顶层,一般能让一面的顶层角块还原;然后,让之前的黄色顶面朝向自己切换为正面,让两个顶角已被还原的一面作右手面,使用公式( R’ R’ D D R’ U’ R D’ D’ R’ U R’ )旋转魔方后,再根据需要旋转顶层,即可还原4面的顶层角块。若开始时没有任何一面的顶角被还原,则执行公式一次,能让某一面的顶角还原,再执行一次,则能还原4个顶角。

7. 顶棱还原

在顶角还原后,一般情况下,有一面的顶棱和顶角都还原了;将该完全还原的一面切换为背面,将黄色面切换为顶面,将白色面切换为底面;查看正面,左面和右面的3个棱块颜色,查看这3个需要调整的棱块顺序;若是需要按顺时针方向调整顶层的3个棱块,则先执行右手小鱼公式旋转魔方,再调整魔方方向(魔方整体往左旋转90度),切换到左手小鱼起始位置(顶面出现黄色十字和一个黄色角块,黄色角块位于右下角,正面顶层一个黄色角块位于左边),执行左手小鱼公式旋转魔方,则魔方能恢复到完全还原状态;若是需要按逆时针方向调整顶层的3个棱块,则先执行左手小鱼公式旋转魔方,再调整魔方方向(魔方整体往右旋转90度),切换到右手小鱼起始位置(顶面出现黄色十字和一个黄色角块,该黄色角块位于左下角,正面顶层一个黄色角块位于右边),执行右手小鱼公式旋转魔方,则魔方能恢复到完全还原状态;此外,若顶角还原后,没有任何一面是完全还原的,则按以上方操作一遍(先左手小鱼后右手小鱼,或先右手小鱼后左手小鱼,两种方法都可以)后,则会出现一面完全还原的状态,再按以上方法操作一遍,从而实现魔方的完全还原。

CentOS8系统禁止IP访问和网络重启

CentOS8系统不再支持使用tcp_wrappers方法来禁止IP访问。tcp_wrappers方法能通过编辑/etc/hosts.allow和/etc/hosts.deny配置文件对IP禁止访问。此时,需要使用firewall-cmd命令来设置对IP的禁止访问。

1. firewall-cmd的常用方法

列出Zones,查看被激活的Zone。firewall-cmd支持配置多种不同的Zones,对应不同的网络环境。使用者能更具需求激活相应的Zone。默认设置下,被激活的Zone是public,即计算机处于public环境,防火墙非常严格。

firewall-cmd --list-all-zones
firewall-cmd --get-default-zone

查看防火墙被允许通过的服务、端口和规则。系统安装完毕后,默认仅开放了ssh服务。

firewall-cmd --list-services
firewall-cmd --list-ports
firewall-cmd --list-rich-rules

添加或删除防火墙端口。以先添加80端口,用于搭建的网站对外提供访问;添加5901-5910端口区域,用于VNCviewer远程桌面访问。

firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=5901-5910/tcp --permanent
firewall-cmd --remove-port=5901-5910/tcp --permanent
# --permanent参数让配置永久修改

firewall-cmd --reload
# --reload重载防火墙,让修改立即生效。此时不会中断用户的现有连接。

systemctl restart firewalld.service
# 也可以重启防火墙,让修改生效。但是会中断用户的现有连接。

添加或删除rules,增加或解除对IP的禁止访问。

firewall-cmd --add-rich-rule='rule family="ipv4" source address="122.205.95.116/24" reject' --permanent
firewall-cmd --add-rich-rule='rule family="ipv4" source address="122.205.95.116/24" drop' --permanent

firewall-cmd --remove-rich-rule='rule family="ipv4" source address="122.205.95.116/24" reject' --permanent
firewall-cmd --remove-rich-rule='rule family="ipv4" source address="122.205.95.116/24" drop' --permanent

firewall-cmd --reload

2. 重启网络

修改防火墙配置后,有可能有需要重启网络。

nmcli con show
# 检测当前连网的网卡

nmcli c reload eth0
# 重新载入eth0网卡

nmcli c up eth0
# 重启eth0网卡

也可以使用NetworkManager重启网络

systemctl restart NetworkManager

ifdown eth0 && ifup eth0

nmcli con down eth0 && nmcli con up eth0

安装network-scripts后,使用老版方法重启网络

dnf -y install network-scripts

systemctl restart network
/etc/init.d/network restart