当前位置:首页>Linux>【上都故事】蒙古人的 Linux——谁有 root 权限?

【上都故事】蒙古人的 Linux——谁有 root 权限?

  • 2026-06-30 05:45:18
【上都故事】蒙古人的 Linux——谁有 root 权限?

━━━━━━━━━━━━━━━━━━━━

◆ 路由器的操作系统

━━━━━━━━━━━━━━━━━━━━

172 期( 【五一假期】北京->正蓝旗,寻访传说中的 Xanadu )讲了元上都是"欧亚大陆的路由器"。174 期( 【上都故事】1288年,北京人Rabban Sauma 见到了教皇 )讲了在这个路由器上跑的数据包——扫马从北京跑到罗马见了教皇。

路由器有了,数据包也跑了。那问题来了:这个路由器谁在管?root 密码在谁手里?权限怎么分配?

这一期讲蒙古帝国的权力分配系统——不是课本上"四等人制"一笔带过的那种,是拿数据说话的那种。

━━━━━━━━━━━━━━━━━━━━

◆ 先说清楚:四等人到底怎么分的

━━━━━━━━━━━━━━━━━━━━

课本说元朝把人分四等:蒙古人、色目人、汉人、南人。大部分人的认知到这里就断了——"蒙古人最高,南人最低,知道了。"

但如果你问一句"汉人和南人有什么区别",十个人里九个答不上来。因为课本不会告诉你:这里的"汉人"不是我们今天说的汉族人。

元朝的"四等人"分类,核心依据不是今天理解的血统、语言、文化,而是降附先后和政治可靠性——你原来在哪个政权的地盘上、什么时候被征服、跟蒙古核心权力的距离有多远。

等级
名称
定义
包含哪些人
蒙古人
蒙古本部及草原诸部
蒙古各部落
色目人
最早被征服或主动归附的西域、中亚各族
回回、畏兀儿、钦察、汪古、唐兀(党项)等 31 种(后面详讲)
汉人
原金朝统治区的居民
北方汉族、契丹人、女真人、高丽人——全部打包
南人
原南宋统治区的居民
南方汉族、南方各少数民族

看明白了吗? "汉人"≠ 汉族人,"汉人"= 金国人。

你是北京的契丹人?汉人。你是河南的女真人?汉人。你是山东的纯血汉族?也是汉人。你们的共同点不是血统,是"你爹当年在金朝的地盘上"。

而"南人"就是原来南宋地盘上的人——杭州的、苏州的、福建的、广东的。今天中国人口最稠密、经济最发达的地区,在元朝全是最低等。

分类标准首先是一张征服时间表:1234 年灭金 → 金国遗民叫"汉人";1279 年灭宋 → 宋国遗民叫"南人"。先被征服的排前面,后被征服的排后面。

这不是一部写在纸面上的"四等人法典"。元朝没有颁布过一条完整成文的"四等人制"总法,但任官、科举、刑罚、军权这些具体制度里,处处体现这张差别待遇的账本。它的本质是战胜者的记账方式——我打了谁、什么时候打的、谁先投降的,按这个排座次。

搞清楚这个前提,后面的数据才看得懂。

━━━━━━━━━━━━━━━━━━━━

◆ 数据——官僚比例有多极端

━━━━━━━━━━━━━━━━━━━━

先看整体。学者统计了元朝中央宰执(宰相、平章政事、参知政事等)共 473 人的民族构成:

时期
蒙古+色目
汉人+南人
前期(忽必烈朝)
52.9%
47.1%
中期(成宗至文宗)
71.6%
28.4%
后期(顺帝朝)
75.9%
24.1%
全朝合计70.2%29.8%

注意趋势——不是慢慢开放,是越来越封闭。忽必烈时期还愿意用汉人撑门面,到了后期连装都不装了。

────────────────────

【三大中央机构拆开看】

整体数据已经够极端了,但拆到具体机构更触目惊心:

中书省(最高行政机关)长官:

民族
人数
备注
蒙古人
大多数
丞相基本垄断
色目人
至少 11 人
康里人 5、回回人 2、钦察人 2、畏兀儿 1、吐蕃 1
汉人
4 人
史天泽、耶律铸、贺胜、贺惟一
南人
0
整个元朝九十年,零

枢密院(最高军事机关):汉人 2 人,而且都是忽必烈早期"利用汉人"阶段的产物。之后呢?终元一代,无一汉人南人出任枢密院正职。 九十年,军权从未碰过汉人的手。

御史台(最高监察机关):汉人 1 人(贺惟一),色目人 8 人。你汉人连告状的权力都没有。

────────────────────

【基层也一样】

别以为中央极端,基层就公平了。

达鲁花赤(蒙古语"镇守者",各级行政机构的首席长官,相当于一把手)的数据:

机构
汉人
色目人
蒙古人
各路总管府
12 人
20 人
占大多数
万户府
1 人
20 人
占大多数

万户府是军事单位。汉人 1 人,色目人 20 人。一比二十。

────────────────────

翻译成程序员语言:

  • 蒙古人是 root
    ——拥有系统最高权限,想删谁删谁
  • 色目人是 sudo
    ——没有 root 密码,但被授予了执行特权命令的权限
  • 汉人是普通用户
    ——能登录,能干活,不能碰系统配置
  • 南人是 guest
    ——只读权限,能看不能动

而且越往后权限越收紧——不是 root 慢慢在 /etc/sudoers 里给普通用户加权限,是反过来,一行一行地删

━━━━━━━━━━━━━━━━━━━━

◆ "汉人"——一个行政概念,不是血统概念

━━━━━━━━━━━━━━━━━━━━

上面的数据里,"汉人"已经够少了。但更魔幻的是——这个"汉人"本身就是个筐,什么都往里装。

元朝对"汉人"的定义:原金朝统治下的各族人。契丹人、女真人、高丽人、北方汉族——全部打包在一起,统一叫"汉人"。这不是血统分类,是行政分类:你在金朝的地盘上被征服的,就是"汉人"。

所以那"4 个汉人宰相"到底是什么人?拆开看:

姓名
真实民族
说明
耶律铸
契丹人
耶律楚材之子。耶律是契丹皇族姓氏,跟汉族没有一毛钱关系
史天泽
汉人
但是金朝旧臣世家,蒙古化程度极深,世代为蒙古效力
贺胜
汉人
元朝中后期
贺惟一
汉人
元朝中后期

真正的"纯汉人"当上中书省宰相的,满打满算两三个人,整个元朝九十年。

────────────────────

【高丽人——特例中的特例】

高丽人在元朝的分类更混乱。高丽是附属国不是行省——高丽王还在,国号还在,但高丽王室跟蒙古皇室联姻。从忠烈王开始,高丽国王娶的都是蒙古公主,在大都长大,说蒙古语,地位浮动极大——好的时候是驸马都尉,差的时候就是个人质。

最极端的例子是奇皇后——高丽人,以宫女身份入宫,最后当上了元顺帝的皇后,权倾朝野。一个高丽宫女逆袭成皇后,在蒙古帝国的权力金字塔里硬生生插了一脚。

高丽人到底算汉人还是色目人?看场合。行政上一般归"汉人"那个筐,但实际待遇因人而异——你是高丽王族联姻对象就是上等人,你是高丽平民被掳来的就是最底层。

────────────────────

所以问题来了:很多不清楚历史的人嘴里的"汉人"是血统概念,元朝的"汉人"是行政概念。把契丹人、女真人、高丽人全算进去凑数,凑出来"4 个汉人宰相",然后说"元朝也用汉人"。

要是按血统标准来筛——抱歉,耶律铸是契丹人得扣掉,史天泽蒙古化极深算半个,真正的纯汉人就贺胜贺惟一。九十年,两三个人。

约等于零

━━━━━━━━━━━━━━━━━━━━

◆ 色目人——31 种人的杂烩

━━━━━━━━━━━━━━━━━━━━

"色目人"听起来像一个民族。不是。

元末陶宗仪在《南村辍耕录》里列了 31 种色目人:回回、畏兀儿、钦察、康里、唐兀(党项)、阿速、吐蕃、哈剌鲁、阿儿浑、撒里畏兀、乃蛮、汪古……还有波斯人、阿拉伯人、犹太人、斯拉夫人。

本质上就一句话:色目人不是一个民族,而是蒙古人、汉人、南人之外,被元廷归入较高代理层的一批西北、西域、中亚及相关族群。 这不是一个民族分类,是一个框出来的代理人分类。

────────────────────

【汪古部——草原上的基督徒领主】

174 期讲扫马的时候已经提到过:汪古部是突厥系部落,信景教(基督教聂斯托利派),领地在阴山南北——从今天的包头、呼和浩特到乌兰察布、四子王旗。替金朝守过界壕(长城),后来投了成吉思汗,此后跟蒙古皇室世代联姻——成吉思汗的孙女嫁给汪古部首领,代代如此。首领世代封王(高唐王、赵王)。

172 期说集宁路古城遗址出土了景教十字架和孔庙遗迹——那就是汪古部的地盘。一座 13 世纪的草原城市里,同时有孔庙和十字架。 174 期的扫马,就是汪古部人(也有史料记为畏兀儿人,但两族均为突厥系)。

汪古部是色目人里最接近蒙古核心权力圈的——联姻关系太硬了。

────────────────────

【回回人——帝国的财务外包商】

回回人遍布全国,但他们的核心功能不是打仗,是搞钱

蒙古人自己不懂搞钱。骑马射箭灭国他们是专业的,但收税理财?一个从草原上来的军事贵族集团,面对上亿人口的复杂经济体,连账本都看不懂。

怎么办?外包。

元朝搞过一套叫 "扑买" 的制度——竞标承包某些税课和经营权。它不是元朝全部财政制度,税粮、科差、盐课、商税另有一大堆复杂规定,但在酒醋课、商税、部分盐课和专卖经营里,扑买很典型。

具体操作:朝廷说"这个项目今年应该交一百万两",然后让商人来竞标。你出价最高——"我交给朝廷一百二十万两"——你就拿到了这块经营/征收权。多出来的二十万两呢?你自己留着。至于你从老百姓那里实际刮了多少……朝廷睁一只眼闭一只眼。

本质上和罗马帝国的 publicani(包税人)制度一模一样。

罗马帝国
元朝
包税人
publicani(骑士阶层)
回回色目商人
发包方
元老院/皇帝
蒙古大汗/朝廷
制度名称
tax farming
扑买
运作方式
竞标→预付→自行征收
竞标→预付→自行征收
基层反应
恨包税人胜过恨罗马
恨色目人胜过恨蒙古人

结果是什么?基层汉人面对的不是蒙古人的铁蹄,是色目包税人的算盘。 蒙古大爷高高在上,一年到头见不着几面。天天上门催税、加码、巧立名目的,是回回商人。你恨谁?你当然恨天天敲你门的那个。

这就是为什么元末农民起义的口号里经常骂"回回"——不是因为回回人是最坏的,而是因为他们是离基层最近的压迫者。蒙古人把脏活全外包了,仇恨也一起外包了。

────────────────────

【畏兀儿——色目人里的文化担当】

畏兀儿人(维吾尔人的前身)是色目人里文化水平最高的。蒙古人用的回鹘文字就是从他们那里来的——成吉思汗时期,蒙古人还没有文字,俘虏了畏兀儿人塔塔统阿,让他用回鹘文字拼写蒙古语,这就是蒙古文字的起源。

畏兀儿人在元朝主要承担文书、翻译、教育工作。用今天的话说,他们是帝国的 IT 部门——基础设施不显眼,但没了就瘫痪

────────────────────

【钦察人、阿速人——帝国的禁卫军】

钦察人来自中亚草原(今哈萨克斯坦一带),阿速人来自高加索(今奥塞梯一带)。他们的功能很简单:打仗

蒙古人不信任汉人当禁卫军——你人多势众,万一反了怎么办?所以从中亚和高加索调人来当贴身保镖。元朝的侍卫亲军里,钦察卫、阿速卫是独立编制。这些人远离故土,没有本地势力根基,除了效忠大汗没有别的出路——完美的雇佣兵逻辑

────────────────────

【唐兀——西夏的遗民】

唐兀就是党项人,西夏灭国后的遗民。1227 年成吉思汗灭西夏,党项人的国家没了,幸存者被纳入蒙元体制,后来多归入色目系统。

他们的故土在今天的甘肃、宁夏一带。从西夏王族变成了色目人中的一个子类别——从老板变成了打工的,但至少比汉人高一级

────────────────────

31 种人,31 种来历,31 种语言和信仰,被一个标签"色目人"打包在一起。有信基督教的突厥人(汪古部),有信伊斯兰教的商人(回回),有造文字的文化人(畏兀儿),有从高加索来的雇佣兵(阿速),有亡国遗民(唐兀)……

他们唯一的共同点:不是蒙古人,不是汉人,也不是南人,而是被蒙古人挑出来充当代理层。

回到开头的权限比喻。色目人的 sudo 权限不是自己争取来的——是蒙古人需要一个缓冲层。自己人太少,汉人不信任,那就找一群跟汉人也没关系的外来户,给他们 sudo 权限,让他们替自己管理系统。回回人管财务,畏兀儿人管文书,钦察人管安保,汪古部管北方草原。

用人不疑?不存在的。用人不得已

━━━━━━━━━━━━━━━━━━━━

◆ 科举停了 35 年——被堵死的才华往哪溢

━━━━━━━━━━━━━━━━━━━━

1279 年崖山海战,南宋灭亡。1315 年元仁宗恢复科举,第一次开科取士。中间隔了 35 年多。

35 年意味着什么?一整代人——从少年读书到中年白发——没有考试可考。科举是中国读书人唯一的合法上升通道,从隋唐到南宋延续了 700 年,现在突然断了。

恢复之后呢?更像笑话。蒙古色目人和汉人南人分开考——蒙古色目考两场,汉人南人考三场(多考一场经义),题目难度不同,录取名额却一样:每科各取 25 人,看起来"公平",但蒙古色目总人口才几十万,汉人南人上亿。换算一下录取率,差了几百倍。

整个元朝九十八年,科举录取进士约 1100 到 1300 人上下。放在宋朝,一科就能取出很大一截——宋仁宗嘉祐二年那一科取了 388 人,包括苏轼苏辙曾巩。元朝九十八年的科举产出,不够宋朝几科用的。

那些被堵死的才华,往哪溢?

────────────────────

【汉人精英的替代出路

路径
代表人物/现象
说明
由吏入官
"与国共治者,出刀笔吏十九"
最主流的通道。宋朝进士瞧不起的刀笔吏(负责抄写文书的基层办事员),元朝变成唯一的上升管道。没有科举,你想当官就得从最底层的文书工作干起,靠资历一级级往上爬
进书院教书
许衡、赵复
98 年建了 282 座新书院。许衡当国子监祭酒,赵复在太极书院把程朱理学从南方传到北方——南宋亡了,但理学通过书院活了下来
搞技术
郭守敬(天文、水利)
蒙古人不在乎你信什么读什么,在乎你能不能算准日历修好运河。172 期讲过,郭守敬的授时历精度达到 365.2425 天,比格里历早 300 年
入全真教
丘处机及其弟子
大杀器。丘处机 1222 年西行万里见成吉思汗,拿到金牌护身符,全真教获得免除一切差役赋税的特权。大量士人涌入道门避税。全真教搞"三教合一"——儒释道混着来,儒生入道没有心理障碍
从医
元代"医户"制度
元朝户籍有"医户",是正式的职业身份,世袭免役。读书人不能考试,但能看病——换一种方式服务社会
写戏
关汉卿、马致远、白朴、郑光祖
元杂剧已知剧目七百余部(传世全本约 160 部)、散曲 3800 多首。被堵死的才华的溢出——你不让我写八股文,我就写《窦娥冤》。意外催生了中国戏剧的黄金时代

最后一行值得多说两句。关汉卿自称"我是个蒸不烂煮不熟捶不匾炒不爆响当当一粒铜豌豆"——这不是文人的风雅,是被体制抛弃之后的自嘲和倔强。元杂剧的底层情绪不是闲适,是愤怒。《窦娥冤》写的是底层百姓被官府逼死的故事,《赵氏孤儿》写的是忠良被灭门的故事——这些题材在元代被推到舞台中心,底层怨气和失路文人的表达需求合流了。

顺便说一个容易忽略的事:你读关汉卿的"铜豌豆"觉得像现代口语,不是巧合——现代普通话的直系祖先就是那个时代、那个地方的方言。

语言标准跟着帝国中枢走。唐宋的"正音"以洛阳—开封一带的中原雅音为基准,所有读书人说话写文章照着这套来。但帝国中枢一旦北移,标准就变了:

(916—1227)定"南京"(今北京)为五京之一,幽燕地区的汉语开始独立演化——澳大利亚语言学家康丹(Daniel Kane)利用契丹文墓志铭对汉语词汇的音写,发现公元 1000 年左右北京地区的汉语已经和中古音系有了明显差异:韵母简化、入声尾辅音消失。这些特征跟三百年后《中原音韵》记录的元代大都话高度吻合。

(1115—1234)升中都(北京)为正式首都,幽燕方言获得政治地位——不再是"边地土话",而是帝国行政语言。

大都建在金中都东北,继承的是同一个语言生态。关汉卿写戏、周德清编《中原音韵》(1324),记录的都是这套已经跑了至少两百年的幽燕方言系统。蒙古人没有"创造"一种新的官话,只是用帝国的规模把一种区域方言推成了标准。

永乐迁都北京后,这条线一路延续到今天的普通话。

所以元杂剧读起来像现代话,根儿不在元朝——在辽金。科举停摆只是把文言文的生产激励切断了:宋朝读书人写文言是因为考试要用,元朝没考试了,写给勾栏瓦舍里的观众听——那就得用幽燕白话。帝国中枢北移提供了语言基础,科举停摆提供了创作动机,两件事撞在一起,催生了中国最早的成熟白话文学。────────────────────

【南宋遗民的光谱——从殉国到入仕,不是非黑即白

殉国派:文天祥拒降,在大都关了三年,1283 年被杀,"人生自古谁无死"。谢枋得被强行押到大都,绝食五天而死。这是最刚烈的一端。

符号抵抗派:郑思肖画兰花不画根不画土。有人问他为什么——"你不知道土被夷狄偷走了吗?"一笔不多画,一笔不少画,每一根缺失的线条都是政治声明。

隐居创作派:元四家——黄公望、倪瓒、吴镇、王蒙。不做官,不合作,隐居山林画画。黄公望七十多岁画《富春山居图》,倪瓒的画干净得只剩几棵树和一座空亭子。他们开创了文人写意画的新传统——不求形似,只画心境。从此中国画的主流从宋朝的精细院体转向元朝的写意文人画,一直延续到今天。

带屈辱入仕派:赵孟頫,宋太祖十一世孙,皇族后裔,接受忽必烈征召入朝为官。郑思肖跟他绝交。赵孟頫的选择在当时叫"朝隐"——身在朝堂心在山林。他的书法和绘画确实达到了极高成就,但"宋宗室仕元"这个标签跟了他七百年。

四种选择,没有一种是容易的。殉国要命,符号抵抗要孤独,隐居创作要穷,带屈辱入仕要背一辈子骂名。

────────────────────

顺便辟个谣。

"九儒十丐"——元朝把人分十等,儒生排第九,仅高于乞丐。这个说法流传极广,但它不是元朝官方制度

出处是谢枋得的记录,原文说的是"滑稽之雄以儒为戏者"——是民间段子手编的笑话,不是朝廷的法律条文。实际上元朝设有"儒户",免差役有补贴,政策层面并不比其他户籍差。

但"地位比宋朝断崖式下降"是真的。宋朝的读书人是统治阶级的一部分——皇帝和士大夫共治天下。元朝的读书人变成了被统治阶级的一部分——蒙古人和色目人治天下,你读再多书也只能当吏员。从 co-ruler 降级到 employee,这个落差才是"九儒十丐"段子流行的真正土壤

━━━━━━━━━━━━━━━━━━━━

◆ 世侯——汉人最后的武装力量

━━━━━━━━━━━━━━━━━━━━

金末天下大乱,北方汉人不是坐以待毙的。大量汉人军阀在乱世中拉起武装,主动投靠蒙古人,换取世袭的军政大权。这些人叫世侯——世袭的地方诸侯,全北方有 30 多家。

他们是金朝灭亡后汉人手里最后的武装力量。

关键人物:

史天泽:真定史家,元朝最强汉人世侯。控制五路——真定、河间、大名、东平、济南,"出将入相五十年"。他从蒙古灭金打到灭宋,文武双全,后来当到中书右丞相,是极少数进入元朝权力核心的汉人之一。

严实:控制东平路,史料记载他"握劲锋之选,威望之著,隐若敌国"——半独立王国。在他的地盘上,他就是法律。

张柔:顺天张氏,控制保定一带。他儿子张弘范后来带兵灭了南宋——崖山海战的蒙古军统帅就是张弘范,一个汉人────────────────────

转折点来了。

1262 年,李璮叛乱。

李璮是山东军阀李全的儿子,世袭益都行省,手握重兵。他联合南宋起兵五万反元,宣称要"恢复中原"。

结果被镇压了。而且镇压他的不是蒙古人,是汉人世侯——史天泽带兵平叛。

这件事的后果远比叛乱本身严重:

忽必烈彻底警觉了。一个汉人世侯能说反就反,其他三十几个呢?

史天泽很聪明。叛乱一平定,他立刻主动表态:"兵民之权,不可并于一门。"——军权和行政权不能集中在一个家族手里。然后他家族 17 个人交出了军职。

这是表忠心,也是自保——你不主动交,忽必烈也会来收。

忽必烈借此机会全面改革:废除世侯的世袭制度、实行军政分离、收回封地。三十多家汉人世侯的独立武装力量,在几年之内被和平解除。

更深远的影响:李璮的岳父是王文统,当时的中书平章政事——相当于总理级别。王文统被查出与李璮有联络,立即被杀。王文统是"行汉法"路线的核心推手,他一死,忽必烈朝廷里"用汉人、行汉法"的政治路线受到严重怀疑。色目人开始加速取代汉人进入权力核心。

上一节的数据就是结果:蒙古色目占宰执比例从前期 52.9% 一路升到后期 75.9%。

从此,汉人彻底失去了武装力量。 用程序员的话说:admin 被降权到 user,而且是不可逆的——chmod 644,执行权限永久收回

━━━━━━━━━━━━━━━━━━━━

◆ 速亡——不是不汉化,是拒绝分享权力

━━━━━━━━━━━━━━━━━━━━

很多人解释元朝速亡,说"因为蒙古人不汉化"。这个说法不能说错,但抓偏了重点。

把元朝和清朝放在一起看就清楚了:

维度
元朝
清朝
存续时间
98 年
268 年
汉人参政
蒙古色目占宰执 52.9%→75.9%,越来越封闭
满汉双轨制,军机处满汉各半,六部尚书满汉各一
汉人掌军
1262 年后彻底不允许
曾国藩、李鸿章掌湘军淮军
汉人封疆
极罕见
大量汉人出任总督巡抚
危机处理
红巾军起义,蒙古军自己打,打不过
太平天国,曾国藩的湘军镇压

核心差异不在文化认同,在权力分配。

清朝虽然核心军权(八旗、禁卫军)不放手,但行政层面给了汉人足够的参与感和上升空间。太平天国打到家门口的时候,曾国藩李鸿章这些汉人愿意替清朝卖命——因为这个体制里有他们的位置。

元朝呢?从头到尾没有给过汉人这个机会。太平天国来了有曾国藩,红巾军来了谁替你打?没有人。蒙古军队自己的战斗力在承平九十年之后早就退化了——骑马射箭的游牧战士变成了大都城里养尊处优的贵族。

────────────────────

核心问题不是"汉化不汉化",是"代理人不够"。

统治一个比你人口多几百倍的族群,数学上只有两条路:

路线 A:深度融合,大量制造本地代理人。让被统治族群的精英进入权力体系,让他们觉得这是"我们的朝廷",愿意替你维护秩序。清朝走的就是这条路。

路线 B:靠中间人管理。找一群既不是你也不是被统治者的第三方,让他们替你管事。元朝走的是这条路——三四十万色目人替几十万蒙古人管理上亿汉人。

问题是:色目人自己也是外来户。他们跟汉人之间没有文化纽带、没有血缘关系、没有共同的历史记忆。色目人管汉人,本质上是外包管理——外包团队对最终用户没有忠诚度,出了事第一反应是保自己。

等天灾一来——黄河决口、瘟疫、财政崩盘——基层直接断裂。包税制(把征税权外包给色目商人)崩溃,底层活不下去,反抗从所有接缝处裂开。

没有曾国藩替你镇压太平天国,因为你从来没给过汉人这个机会

────────────────────

继承制度也是致命伤。

蒙古人没有中原式嫡长子继承制。草原传统里有幼子守灶(最小的儿子继承家业)、宗王资格、忽里台大会承认,再加上军事力量和贵族联盟——制度弹性太大,最后很容易变成谁拳头硬谁上。

忽必烈本人的汗位就是跟弟弟阿里不哥打了四年内战抢来的,法统一直有争议。从忽必烈到末代皇帝妥懽帖睦尔,中间宫廷政变成了常态——元武宗、元仁宗、元英宗、泰定帝、元文宗、元明宗……短短几十年换了一串,其中至少两个是被暗杀的。

中央一乱,地方就失控。没有稳定的继承制度,每一次权力交接都是一次系统重启——而每次重启都可能蓝屏

━━━━━━━━━━━━━━━━━━━━

◆ guest 用户的逆袭

━━━━━━━━━━━━━━━━━━━━

朱元璋。

南人——元朝四等人制度里最低的那一等。如果蒙古人是 root,色目人是 sudo,汉人是普通用户,南人就是 guest。

而朱元璋是 guest 里的 guest。濠州钟离(今安徽凤阳)的赤贫农民,父母兄长饿死,当过乞丐,做过和尚,最后加入红巾军——元朝权力体系最底层的人,用最底层的方式造反。

1368 年,朱元璋北伐,口号八个字: "驱逐胡虏,恢复中华。"

98 年压迫的总清算。蒙古人退回草原,元朝灭亡。

一个 guest 用户,拿到了 root 权限。

────────────────────

但朱元璋拿到 root 之后干了什么?

恢复科举——把被堵了几十年的上升通道重新打通。重建士大夫体系——让读书人重新进入权力核心。这两件事是对元朝的纠偏,没问题。

但接下来的操作就有意思了:

海禁——禁止民间出海贸易。蒙古人打通的海上贸易网络(泉州是 13 世纪世界最大港口之一),关机。

朝贡体制——外国人只能通过官方朝贡来跟中国做生意,民间贸易非法。蒙古帝国搭建的自由贸易网络,格式化。

废丞相——1380 年胡惟庸案之后,朱元璋废除丞相制度,皇帝直接管六部。从秦朝到元朝延续了一千五百年的丞相制度,在他手里终结。

设锦衣卫——皇帝的私人特务机构,监视百官,可以不经司法程序直接抓人审讯。

翻译成程序员的话:guest 用户拿到 root 权限后做的第一件事,是把 sudo 也删了。 不仅不分享权限,连分享权限的机制本身都废掉——以后谁都不能提权,只有我一个人是 root。

讽刺吗?元朝亡于拒绝分享权限。明朝的解决方案是把权限收得更紧——皇帝独揽一切,谁都不信。蒙古人不信汉人,朱元璋不信所有人。

━━━━━━━━━━━━━━━━━━━━

◆ 上都的最后一夜

━━━━━━━━━━━━━━━━━━━━

172 期说元上都是"欧亚大陆的路由器"。174 期说列班·扫马是"路由器上跑的数据包"。

现在讲这个路由器是怎么关机的。

上都其实被烧了两次。

第一次:1359 年 1 月,红巾军。 刘福通的部将关铎、潘诚率军攻入上都,焚毁宫殿官署,占了七天,然后东进辽东——这支军队后来一路打进了高丽,攻占了开城。这是元朝还在的时候,自家后院先着了火。

第二次:1369 年夏,明军。 常遇春率步卒八万、骑士一万攻克上都,俘虏宗王庆生及平章鼎住等官兵万余、马三千匹、牛五万头。红巾军烧剩的废墟,明军又烧了一遍。

两次焚城之间,有一个画面值得记住。

1368 年 9 月 10 日深夜,大都(北京)。徐达的军队已经打到通州,末代皇帝妥懽帖睦尔从健德门连夜出逃,带着太子、皇后、嫔妃和一百来个随从,沿着当年皇帝"两都巡幸"的西路——经昌平、居庸关、怀来、鸡鸣山——往北跑。四天后,徐达从齐化门进入大都。大都没了。

妥懽帖睦尔跑到上都,发现的是这番景象——随行官员刘佶在《北巡私记》中记录:

"上都经红贼焚掠,公私扫地,宫殿官署皆焚毁,民居间有存者。"

宫殿全没了,只剩一些民房。帝国的夏都变成了草原上的难民营。辽东行省丞相也速捐了两万匹布和五千石粮食,朝廷才有了口饭吃。

妥懽帖睦尔在废墟上撑了十个月。期间他派扩廓帖木儿(王保保)反攻大都——也就是《倚天屠龙记》里赵敏她爹——结果被徐达夜袭太原,四万大军全军覆没,王保保只带了十八骑逃走。

1369 年 7 月 16 日,常遇春兵临城下,妥懽帖睦尔提前四天再次出逃,跑到更北的应昌(今内蒙古克什克腾旗)。四天后常遇春进城,上都最后的残骸化为灰烬。

常遇春攻克上都二十天后,在撤军途中暴毙于柳河川(今河北赤城),年仅四十岁。史料说死因是"卸甲风"——大热天卸了盔甲被风一吹,中风而死。朱元璋追封他为 "开平王" ——开平,就是上都的原名。攻城的将军,用被他烧掉的城市命名。

1370 年 5 月,妥懽帖睦尔在应昌病死,终年五十一岁。二十天后明军攻克应昌,蒙古残部逃往漠北和林。

────────────────────

172 期开头我写过:这座城市在 1369 年被明军烧毁后,就变成了内蒙古草原上的一堆土墩子。但它的名字在西方活了 800 年。

现在补上那些土墩子的来历。

朱元璋把蒙古帝国搭建的欧亚网络彻底断开。海禁切断了海上通道,朝贡体制把自由贸易变成了官方垄断,边境管控把陆上通道也收紧了。中国从欧亚局域网的核心节点,重新变成了一个隔离的局域网。

操作系统格式化了。重装了一个汉人皇权版本——科举、理学、礼教、农本,回到宋朝的路线,甚至比宋朝更封闭。

但那 100 年里流过路由器的信息——波斯天文学、阿拉伯工程学、景教十字架、回回炮、元杂剧、青花瓷(钴料从波斯来的)、文人写意画——已经写进了硬盘。

格式化删不干净。

郭守敬的授时历,明朝沿用了 260 年。元杂剧演变成明传奇,最终催生了《牡丹亭》。元四家的写意画风格成了明清文人画的正统。程朱理学经由元代书院传遍南北,成了明清科举的标准答案。

路由器烧了,数据包停了,但数据留在了硬盘里。

━━━━━━━━━━━━━━━━━━━━

参考资料:

  • 萧启庆,《元代的族群文化与科举》
  • 张帆,《元代宰相制度研究》
  • 刘佶,《北巡私记》

━━━━━━━━━━━━━━━━━━━━

// 靳岩岩的 AI 学习笔记 × Claude 的严谨 × Gemini 的浪漫// 2026-05-05

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 20:34:57 HTTP/2.0 GET : https://f.mffb.com.cn/a/491386.html
  2. 运行时间 : 0.114846s [ 吞吐率:8.71req/s ] 内存消耗:4,766.86kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=8c07643ad478f8ece1cc37108978e22d
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000615s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000991s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000347s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000307s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000523s ]
  6. SELECT * FROM `set` [ RunTime:0.000194s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000605s ]
  8. SELECT * FROM `article` WHERE `id` = 491386 LIMIT 1 [ RunTime:0.000616s ]
  9. UPDATE `article` SET `lasttime` = 1783082097 WHERE `id` = 491386 [ RunTime:0.020836s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000400s ]
  11. SELECT * FROM `article` WHERE `id` < 491386 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000585s ]
  12. SELECT * FROM `article` WHERE `id` > 491386 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000397s ]
  13. SELECT * FROM `article` WHERE `id` < 491386 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000888s ]
  14. SELECT * FROM `article` WHERE `id` < 491386 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004367s ]
  15. SELECT * FROM `article` WHERE `id` < 491386 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.015197s ]
0.116371s