With rapid growth of content demands, device-to-device (D2D) content sharing is exploited to effectively improve the service quality of users. Considering the limited storage space and various content demands of users, caching schemes are significant. However, most of them ignore the influence of the asynchronous content reuse and the selfishness of users. In this work, the user preferences are defined by exploiting the user-oriented content popularity and the current caching situation, and further, we propose the social-aware rate, which comprehensively reflects the achievable contents download rate affected by the social ties, the caching indicators, and the user preferences. Guided by this, we model the collaborative caching problem by making a trade-off between the redundancy of caching contents and the cache hit ratio, with the goal of maximizing the sum of social-aware rate over the constraint of limited storage space. Due to its intractability, it is computationally reduced to the maximization of a monotone submodular function, subject to a matroid constraint. Subsequently, two social-aware collaborative caching algorithms are designed by leveraging the standard and continuous greedy algorithms respectively, which are proved to achieve different approximation ratios in unequal polynomial-time. We present the simulation results to illustrate the performance of our schemes.