Hibernate is an Object Relational Mapping framework.
LINQ is an implementation of functional programming principles in imperative languages. It facilitates declarative programming, where developers can say what they want to do, rather than how they want it done, leaving the compiler to decide the best way to do it. It's a massive paradigm shift in programming languages and will enable all sorts of future good stuff like many-core parallelism without the need for understanding threadpools and such.
What you've done is, you've focused on the LINQ to SQL technique of wrapping the database objects in code objects in order that the LINQ framework can access the database. That's a very, very small part of LINQ, and it's really a library for LINQ, rather than part of it. You could do LINQ to Hibernate if you wanted to.
ADO.NET Entity Framework, which is due later this year,
is similar (i.e. an alternative ) to Hibernate, but it brings some extra goodies to the party that make it a very attractive alternative.