自分も完全にはLinuxのサウンド関係を把握してる訳ではないんですが、自分のマシンにLinuxをインストールして音が出なかったとき右往左往しながら色々やって直したときのメモです。
結論からいうと、多分ですが、自分のマシンにはTVカードが刺さっていて、これは使ってなかったんですが、こいつのせいでサウンド関係のカーネルモジュールがうまく読み込まれなかったようです。
とりあえずもし音がならない場合は以下のことを調べるといいです。
・lspci | grep audioをして自分のマシンのサウンドボードが認識されているか確かめる。
・alsaconf(debian等)、system-sound-config(fedora等)を実行して、サウンドボードが認識されているか確かめる。
・lsmodして読み込まれているモジュールを確認し、modinfoでそのモジュールが本当に必要なのかを確認する。いらないなら/etc/modprobe.d/blacklistにいれてしまう。(自分の場合はこのやりかたで直りましたが、もっとましな方法があるのかもしれません。)
モジュールに関してはカーネルモジュール覚書に少し書いています。