I blog about how to query records followed by users in Chatter last year. I get another requirement recently if it is possible to mass follow users to a record or user. YES, it is possible. We can use the same way as my previous blog above for this purpose.
Use Data Loader to create new records in the EntitySubscription object.
Only 2 fields you need to put in the CSV file:
1. ParentId : user / record to follow
2. SubscriberId: follower
You can use the same way to mass unfollow, this is the same with mass delete records in EntitySubscription object, but make sure you prepare the data correctly in CSV file, you just need to provide EntitySubscription Id.
Note: one user only can follow a maximum of 500 records (include users), see this document. But, you can request Salesforce support to increase this limit.