孙权、刘备、曹操都想据汉中。汉中(今陕西南郑),地处益州之北,扼益州咽喉,入蜀必经之路,历代兵家必争之地。刘备入蜀之前,张鲁为汉宁太守,雄踞汉中已三十多年。
张鲁,字公祺,沛国丰(今江苏丰县)人,祖父张陵,客居于蜀,学道鹄鸣山中,“造作道书以惑百姓,从受道者出五斗米”,因而人称其教为“五斗米道”。张陵死后,其子张衡行其道。以符水咒说疗病。衡死,衡子张鲁继续行其道。
史载,张鲁母有姿色,兼挟鬼道,往来益州牧刘焉家。刘焉遂任张鲁为督义司马,与别部司马张修共同率兵掩袭汉中太守苏固,断绝斜谷之路。张鲁既得汉中,遂即杀了张修而并其众,成了汉中的统治者。刘焉死后,子刘璋代立,因鲁不顺服,刘璋杀死张鲁的母亲及全家。张鲁、刘璋遂不两立。
张鲁据汉中,以鬼道教民,自号“师君”。学道者,初来皆名“鬼卒”;受道已信(深)者,号“祭酒”。祭酒各领部众,部众多者为治头大祭酒。五斗米道的教义,主要有三点,一是要求做人诚实,“皆教以诚信不欺诈”,如果生病,要求病人自我反省有没有做错事,即“自首其过”;主张买卖公平。二是各祭酒“皆作义舍”,义舍内备有义米、义肉,行路人可以根据自己的饭量“量腹取足”。据说,如果取之过量,鬼道会使其生病的。三是“犯法者,三原,然后乃行刑”。“原”是赦免的意思。就是说,对犯法的人可以赦免三次,如果仍无悔意,再按律处以相应的刑事处罚。张鲁据汉中全以五斗米道教民、驭众,因此“不置长吏,皆以祭酒为治”。张鲁的统治,深得百姓拥护,所以“民夷便乐之”,使他能够“雄踞巴、汉垂三十年”。史载,汉末,朝廷对张鲁束手无策,“力不能征,遂就宠鲁为镇民中郎将,领汉宁太守,通贡献而已”。
对于张鲁之汉中,孙、刘、曹三家均欲得之。在东吴,周瑜曾献计“取蜀而并张鲁”;孙权曾表示愿与刘备一起取蜀,提出了所谓“先取刘璋,进讨张鲁”的主张,遭到刘备的拒绝。
刘璋居益州而让刘备入蜀托孤的一个重要原因,也是试图利用刘备击败张鲁,从而据有汉中以求自强。他听说曹操将讨张鲁,内怀恐惧,一步走错上了张松、法正的当,迎刘备入蜀托孤。如前所述,刘璋使刘备击张鲁,但刘备的真正目标是取益州,而不是汉中,所以兵扎葭萌,驻军不前,“厚树恩德,以收众心”。
刘备破蜀取刘璋代为益州牧后,应该尽快图谋汉中,但刘备并没有那样做,让曹操抢了先,坐失得汉中良机,可谓痛惜万分,刘备没有赶在曹操征服张鲁之前取得汉中,一方面其对于汉中的重要性认识不足;另一方面也是为了应付孙权谋夺荆州的缘故。
曹操亲征张鲁,军至阳平关(今陕西勉县西)。张鲁闻知屏障之险阳平关失陷,就失去信心,准备投降。部下阎圃也积极促其投降,但觉得时机还不成熟,因对张鲁说,现在被迫归降,功必轻,“不如依杜渡,赴朴胡(杜渡、朴胡均巴中少数民族头领)相拒,然后委质,功必多”。投降也要掌握“火侯”,这是阎圃的主意。张鲁接受了阎圃的意见,“乃奔南山,入巴中”。走前,部属想烧掉全部宝货仓库,张鲁阻止大家说:“本欲归命国家,而意未达。今之走,避锐锋,非有恶意。宝货仓库,国家之有。”于是,“封藏而去”。曹操率军开进南郑,见府库封藏完好,特别高兴,对张鲁特别有好感,又知张鲁本有归顺之意,遂派人前去“慰喻”。十一月,张鲁觉得投降时机已成熟,便尽携全家及其余众出降。曹操拜张鲁为镇南将军,待以客礼,封阆中侯,并封其五子及阎圃等皆为列侯。
就在张鲁“走入巴中”而准备归降曹操之时,刘备已同孙权达成妥协,分三郡地予吴,解决了与孙权的争执问题。从南郡、公安等地引军回到江州(今重庆)。偏将军黄权对刘备讲了汉中的重要性:“若失汉中,则三巴不振,此为割蜀之股臂也。”刘备这才有点着急了,于是立即以黄权为护军,率领诸将迎接张鲁。据《华阳国志·汉中志》说:“(建安)二十年,魏武帝西征鲁,鲁走巴中。先主将迎之,而鲁功曹阎圃说鲁北降归魏武:‘赞以大事,宜附托;不然,西结刘备以归之。’鲁勃然曰:‘宁为曹公作奴,不为刘备上客。’遂委质魏武。”所以,刘备派去迎接的军队尚在途中的时候,张鲁已经回到南郑,投降了曹操。黄权顺手牵羊顺路出击少数族领袖朴胡、杜渡等部,取得一些胜利。刘备因为对汉中的重要性认识不足,才坐失得汉中良机。失去汉中,对刘备而言,应该是一笔重大损失。