(1)解:∵f(x)=lnx-x+1 (x>0)
∴f′(x)=
,1?x x
∴当0<x<1时,f′(x)>0,x>1时,f′(x)<0,
∴f(x)≤f(1)=0,∴f(x)的最大值为0;
(2)解:?x1∈(0,+∞),总存在x2∈[1,2]使得f(x1)≤g(x2)成立,
等价于f(x)max≤g(x)max,
由(1)知f(x)max=0,
当a≤0时,g(x)=x3-ax在x∈[1,2]时恒为正,满足题意.
当a>0时,g′(x)=3x2-a,
令g′(x)=0,解得x=±
,
a 3
∴g(x)在(-∞,-
),(
a 3
,+∞)上单调增
a 3
若
≤1即0<a≤3时,g(x)max=g(2)=8-2a,∴8-2a≥0,∴a≤4,∴0<a≤3
a 3
若1<
≤2即3<a≤12时,g(x)在[1,
a 3
],[
a 3