269年,晋武帝任命将领胡烈为秦州刺史;胡烈到任后使用高压手段镇压鲜卑人。
270年,河西鲜卑人秃发树机能不满秦州刺史胡烈的残暴统治,起兵反晋。
魏晋之际,大量的鲜卑人向凉州迁徙,秃发氏就是其中最为著名的一支。秃发是拓跋的另一种叫法,秃发树机能是秃发氏的首领。
这次叛乱的发生表面上是鲜卑人不满晋朝官吏的统治,实际上是少数民族内迁人数过多,追求自身民族利益,与汉人政权产生了矛盾。秃发树机能起兵反晋后,秦州刺史胡烈立即率军前去镇压,双方在万解堆(今甘肃靖远县西)交战。
都督雍、凉诸军事的扶风王司马亮派遣部将刘旂前去援助胡烈,但刘旂采取观望态度,一直逡巡不前,眼看着晋军大败,胡烈被杀。司马亮主动向朝廷承担了追责,后被免去职务。
司马炎刚登基不久,立足未稳,边境就发生叛乱,这是他不能容忍的。他很快就派将领石鉴负责讨伐秃发树机能。
石鉴下令让秦州刺史杜预进攻鲜卑人,杜预却认为鲜卑人刚打胜仗,士气正盛,晋军的粮草还很缺乏,应当集中力量运输草料和粮食,等到春天再出兵进讨。石鉴上书朝廷,指责杜预没能准备好军用粮草,使杜预被撤职查办。事后石鉴亲自率军与秃发树机能作战,结果被击败。
秃发树机能趁势进攻金城(今甘肃兰州),凉州刺史牵弘出金城与之作战。
凉州氐、羌、匈奴各族百姓对牵弘的统治早已不满。秃发树机能率军到达金城附近后,各族百姓纷纷响应,一同进攻晋军,将牵弘围困在了青山(今甘肃省环县西)。秃发树机能率部对青山发起进攻,歼灭了晋军,杀死了牵弘。
秃发树机能在金山(今甘肃省山丹县南)又击败了继任凉州刺史苏愉。西北各族响应秃发树机能的人越来越多,秃发树机能的队伍扩充后超过了二十万。
连战连捷的秃发树机能开始轻视晋军,结果很快就付出了惨重的代价,在对战晋朝将领司马骏时遭遇了惨败,战死三千多人。秃发树机能被迫将自己的儿子送到了晋朝作人质。
晋军紧接着对叛军发动新一轮进攻,晋将文鸯援助司马骏攻打秃发树机能,取得大胜,战后各族二十几万人向晋军投降,叛军实力大减。
为了扭转颓势,秃发树机能率军直接攻打凉州治所武威,以打破晋军的包围,隔绝晋廷和河西的联系。秃发树机能的部将若罗拔能在武威大破晋军,杀死了凉州刺史杨欣。叛军占领了凉州全境。
当时晋武帝准备南下进攻东吴,想尽早结束西北的战事,抽调兵力参加灭吴之战,于是派遣将领马隆前往凉州全面负责凉州战事。
在晋武帝的支持下,马隆不仅能够自行招募士兵,还得到了大量精良的武器装备和物资。马隆率军到达凉州后,制作了战车——“扁箱车”,在战车上修建了木屋。士兵们倚靠这些战车与秃发树机能作战,利用弓弩大量杀伤敌军。面对晋军的进攻,秃发树机能的部队伤亡惨重,节节败退。
马隆到了武威后,数位鲜卑首领率众归降。马隆率领晋军和部分鲜部队与秃发树机能再次交战,大败叛军,成功斩杀秃发树机能。至此,叛乱终于被平定。
