西晉時(shí)期,大量游牧民族內(nèi)遷,主要有匈奴、羯、氐、羌以及鮮卑五族,史稱(chēng)“五胡。”這些外族被世族收作奴婢,這些內(nèi)遷的外來(lái)民族在八王之亂后趁機(jī)舉兵,造成五胡亂華的局面。
太康元年(280年),西晉滅亡東吳,統(tǒng)一中國(guó)。不久,晉王朝內(nèi)部矛盾激化,宗室諸王爭(zhēng)權(quán)奪位,戰(zhàn)禍連年,天災(zāi)不斷,疾疫流行,賦斂如故,大量被迫淪為流民,不斷爆發(fā)反晉起義。
元康二年,匈奴人郝散起兵攻上黨(今山西潞城東北);兩年后,其弟度元聯(lián)合馮翊、北地等郡的馬蘭羌、盧水胡起兵反晉,秦(治今甘肅甘谷東)、雍(治今西安西北)二州氐、羌數(shù)十萬(wàn)民眾紛起響應(yīng),共推氐帥齊萬(wàn)年為帝。先后攻打天水、略陽(yáng)、始平、武都、陽(yáng)平諸郡,晉軍“諸將覆敗相繼”。后晉廷遣積弩將軍孟觀率京師宿衛(wèi)軍前往鎮(zhèn)壓,起義失敗,齊萬(wàn)年被俘。從此,遍及各地的流民大起義此起彼伏。這時(shí)期國(guó)內(nèi)主要矛盾從漢族統(tǒng)治階級(jí)內(nèi)部轉(zhuǎn)化為漢族統(tǒng)治階級(jí)與割據(jù)的少數(shù)民族分裂勢(shì)力之間的矛盾。并且從從晉懷帝永嘉元年的307年到311年五年中連續(xù)遭受旱災(zāi)、蝗災(zāi)等嚴(yán)重自然災(zāi)害、統(tǒng)治階級(jí)內(nèi)部的矛盾等因素影響,使內(nèi)遷割據(jù)都城附近的匈奴集團(tuán)占領(lǐng)洛陽(yáng),晉懷帝被匈奴軍隊(duì)俘虜,并且在次年遇害。
永寧元年(301年)十月,略陽(yáng)?(巴氐)人李特、李雄領(lǐng)導(dǎo)秦、雍六郡流民在益州(治今成都)起義。時(shí)關(guān)中干旱,連年饑荒,六郡漢、氐、羌、密等各族民眾10余萬(wàn)人經(jīng)漢川流入巴蜀地區(qū)就食。當(dāng)?shù)毓俑破绕浞掂l(xiāng),激起流民起義,屢敗晉軍,攻占廣漢,進(jìn)圍成都(今屬四川)。李特與蜀人約法三章,賑貸貧人,得到益州民眾的支持。后李特戰(zhàn)死,其弟李流和其子李雄繼續(xù)領(lǐng)統(tǒng)義軍,于晉太安二年(303年)閏十二月,逐走晉益州刺史羅尚,攻下成都。翌年,李雄稱(chēng)成都王,后稱(chēng)帝,建成國(guó)。至成玉恒四年(338年)四月,李驤(李特弟)之子李壽即位,改國(guó)號(hào)為漢。秦、雍六郡流民起義,是西晉末年流民起義中規(guī)模最大的一次。李雄建立的成漢政權(quán),共存在44年之久,直至成漢嘉寧二年(347年),為東晉都督荊、司等六州諸軍事桓溫率軍消滅。
太安二年(303)五月,晉廷急征荊州壯勇赴益州,遭到荊州民眾的強(qiáng)烈反抗。曾任澤區(qū)吏的義陽(yáng)(今河南信陽(yáng)西北)蠻民首領(lǐng)張昌,在安陸(今湖北云夢(mèng))石巖山聚眾起義,荊地區(qū)的流民和逃避戍役的丁壯紛紛參加。張昌立山都縣(今湖北谷城東南)吏丘沈?yàn)樘熳?,自為相?guó)。趁晉廷諸王爭(zhēng)奪朝權(quán)之機(jī),分兵四出攻城略地。南破武昌(今湖北鄂州)、長(zhǎng)沙、湘東(郡治酃縣,今湖南衡陽(yáng)市)、零陵;東攻弋陽(yáng)(今河南潢川西);北克宛(今河南南陽(yáng)市)、襄陽(yáng),殺西晉都督荊州諸軍事新野王司馬歆。部將石冰和封云率領(lǐng)東路義軍,攻占江(治今南昌)、揚(yáng)(治今南京)二州。其勢(shì)力迅速擴(kuò)大到荊、江、徐(治今江蘇徐州)、揚(yáng)、豫(治今河南淮陽(yáng))五州的大部地區(qū)。同年七月,西晉荊州刺史劉弘調(diào)集大軍圍攻張昌,起義軍被晉將陶侃率部擊敗。次年八月,張昌被俘殺。荊州流民起義遂被鎮(zhèn)壓。
永嘉四年九月,雍州部分民眾流移至宛縣一帶就食、晉廷逼令流民歸還故里,遭到流民強(qiáng)烈反抗。京兆人王如在宛乘勢(shì)發(fā)動(dòng)起義,南安人龐定、馮翊人嚴(yán)嶷、京兆人侯脫等各率眾響應(yīng),聚至四五萬(wàn)人,于漢、沔及襄、陽(yáng)一帶,屢敗晉軍。王如自稱(chēng)大將軍,領(lǐng)司、雍二州牧。王如乘漢鎮(zhèn)東大將軍石勒率部進(jìn)至宛縣,借機(jī)與其聯(lián)結(jié)消滅異己,最后他也被石勒擊敗,永嘉六年投降晉揚(yáng)州刺史王敦,被殺。
西晉永嘉五年元月,巴蜀流民數(shù)萬(wàn)家為避戰(zhàn)亂,流亡到荊、湘地區(qū)。湘州刺史荀眺欲盡誅流民,四、五萬(wàn)家流民憤而皆反,共推蜀人杜弢為主。杜弢自稱(chēng)梁、益二州牧,領(lǐng)湘州刺史,率眾攻占長(zhǎng)沙,生擒荀眺。攻克零陵(今屬湖南)、桂陽(yáng)(今湖南郴州),又東擊武昌(今湖北鄂州)、襲沔陽(yáng)(今湖北沔陽(yáng)西南),占據(jù)豫章(今南昌),屢敗晉軍。建興三年(315年),晉瑯玡王司馬睿遣征南將軍王敦、荊州刺史陶侃集結(jié)大軍,圍攻杜弢,義軍將士死傷甚眾,部將王真降晉。杜弢突圍逃遁,死于途中。
在北方中原爆發(fā)的多起民眾起義中石勒和王彌領(lǐng)導(dǎo)的山東、河北起義影響最大。永興二年(305年)七月,石勒同馬牧帥汲桑率數(shù)百騎參加公師藩在趙(今晉冀豫部分地區(qū))、魏(今冀魯豫部分地區(qū))的反晉起義。不久,公師藩兵敗被殺。永嘉元年三月,石勒和汲桑再度起義。五月,攻占鄴城(今河北臨漳西南),殺晉新蔡王司馬騰。八月,在東武陽(yáng)(今山東朝城西)為晉兗州刺史茍唏部所敗,汲桑被殺,石勒往投漢王劉淵。光熙元年(306年)三月,東萊郡(治今山東掖縣)大族王彌參加怰縣令劉伯根率萬(wàn)人反晉起義。后劉伯根戰(zhàn)死,王彌繼統(tǒng)其眾,轉(zhuǎn)戰(zhàn)于今河北、山東、安徽、河南等地,有眾數(shù)萬(wàn)。永嘉二年五月,兵臨洛陽(yáng)(今洛陽(yáng)東北),使晉廷“京邑大震,宮城門(mén)晝閉”。后被晉司徒王衍率大軍擊敗,王彌率余部投奔劉淵。