Much research has been conducted on energy efficient cache buffer management for disk based storage systems. Some of them use greedy prefetching technique to artificially increase disk idle intervals if there are a large number of known future requests. However, this might result in sub-optimal solution by not exploiting the relationship between I/O access pattern (sequential/random) and application pattern (CPU required for computing time). In a CPU-bound application, by explicitly taking into account this relationship it may reduce energy conservation by up to 50% and increase power cycle number by 100% compared to an existing efficient prefetching scheme without this consideration. In this paper, we consider the tradeoff between disk power consumption, performance guarantee and disk reliability all together by proposing a Disk characteristic based Power-Optimal Prefetching (DiscPOP) scheme. Specifically, we make two contributions: (i) A theoretical model is conducted to analyze energy-efficient cache buffer management in disk I/O system and it is formulated as an optimization problem. We have shown it can be solved via an Integer Linear Programming (ILP) technique. (ii) We propose a simple Divide-and-Conquer based offline algorithm named Greedy Partition (GP) to divide the problem into several small ones and solve them separately via an ILP solver. We use trace-driven simulations to evaluate our proposed scheme. The results show GP outperforms the traditional aggressive prefetching by up to 29.2% more disk energy conservation and 20.6% power cycle reduction.