東漢末年,宦官和外戚爭權奪利,使得社會不安定,加深了人民的痛苦。而且,從漢和帝劉肇的時候起,全國各地接連不斷地鬧水災、旱災和蝗災。農民實在沒有活路了,隻好離開家鄉,四處逃亡,形成了一群一群的流民。流民四處乞討,餐風宿露,餓死凍死的很多,連首都洛陽的街頭,也經常可以看到凍餓而死的流民的屍體。當農民被逼得走投無路的時候,他們終於被迫打出了造反的旗號,開始聚眾起義。
從漢安帝劉祜在位的時候起,小規模的農民起義已時有發生。到昏庸透頂的漢靈帝劉宏在位的時候,終於爆發了一次波瀾壯闊的黃巾大起義。
黃巾大起義是張角領導的。張角是巨鹿(今河北省平鄉縣西南)人,太平道的首領。太平道是道教的一派,他們信奉中黃太一之神,以道家秘作《太平清領書》作為他們的經典,宣傳“黃天太平”思想,認為隻有到了太平的時代,人們才能不愁吃穿,過無憂無慮的日子。張角本人懂點醫道,常常免費給農民治病,病治好了,他就勸人家參加太平道。窮苦農民為了擺脫眼前困苦的生活,把張角看成是自己的救星,都紛紛信奉太平道,張角的信徒越來越多。在青、徐、幽、冀、荊、揚、兗、豫八州(即今山東、河北、河南、湖北、湖南、江西、安徽、江蘇一帶),太平道的信徒很快就發展到幾十萬人。
張角派弟子去把信徒們組織起來,把八個州的信徒組織成為三十六方,大方一萬多人,小方六七千人,每一方都指派一名首領去領導,叫做渠帥。三十六個渠帥都聽張角統一指揮。張角還製定了“蒼天已死,黃天當立,歲在甲子,天下大吉”的十六字起義口號。“蒼天”是指東漢,“黃天”是指起義軍是創造的天下,甲子是年號,就是漢靈帝中平元年(公元184年)。他們預定在這一年的三月五日,八個州同時發動起義。張角還叫人在首都洛陽地方州郡官府的門上,用白土寫上“甲子”二字,標明這些官府衙門到時候都將改變主人,借以鼓舞人心。
張角手下最得力的弟子是大方渠帥之一的馬元義。他經常到首都洛陽聯係,傳達張角的命令。張角叫他先把荊州、楊州兩地的信徒幾萬人調到鄴城(今河南省安陽市北)集中,作為起義軍的主力,以便配合首都附近各州郡的起義軍進攻洛陽。
在預定的起義日期前一個月,濟南的起義軍中出了一個名叫唐周的叛徒,他寫信給政府告密。起義的消息泄露了。東漢政府建捕了馬元義,在洛陽當眾把他殺害。在洛陽受牽連被害的有一千多人,起義者的鮮血染紅了洛陽街頭。東漢政府還下令搜捕張角。張角得知消息以後,連夜派人趕到通知各地的信徒,叫他們立即發動起義。
叛徒的告密雖然打亂了起義的日程,使得起義軍犧牲了一個重要領袖和一千多名戰士,但是並不能撲滅起義的烈火。各地的太平道信徒早已組織起來,有了充分的準備。接到張角的命令以後,三十六方立即同時發動起義。起義軍用黃巾裹頭,作為“黃天”的標誌,因此被稱為黃巾軍。張角自己稱為天公將軍,他的兩個弟弟張寶和張梁稱為地公將軍和人公將軍。他們三個人共同指揮起義軍的戰鬥。