The invention relates to a preparation method of a long-acting inner wall cleaning agent for a crude oil storage tank, and belongs to the technical field of chemical engineering cleaning agents. The method comprises the steps that a sulfuric acid solution, a polyethylene oxide-polypropylene oxide segmented copolymer, urotropine, o-xylene thiourea, sodium molybdate, triisopropanolamine, isobornyl methacrylate, benzoic acid and olive oil macrogol ester are heated and then mixed to be uniform, and a first mixture is obtained; a corrosion inhibitor and a thickening agent are added in the first mixture, heated and mixed to be uniform, and a second mixture is obtained; an anion surface active agent and paraffin emulsion are added into the second mixture, heated and then mixed under the high-speed dispersion condition, and a cleaning agent is obtained. According to the cleaning agent, the problem that iron sulfide surface depositions and corrosion are generated by a sulfur compound in the crude oil storage tank can be solved, and the cleaning agent has the effect of resisting rust in a long-acting mode.