由已知 $ba_n - 2^n = (b-1)S_n$ ①
当 $n=1$ 时,$ba_1 - 2 = (b-1)a_1$,解得 $a_1 = 2$。
当 $n \ge 1$ 时,有 $ba_{n+1} - 2^{n+1} = (b-1)S_{n+1}$ ②
② - ① 得:$b(a_{n+1} - a_n) - (2^{n+1} - 2^n) = (b-1)a_{n+1}$
整理得:$b a_{n+1} - b a_n - 2^n = b a_{n+1} - a_{n+1}$
即 $a_{n+1} = b a_n + 2^n$ ③
(Ⅰ)当 $b=2$ 时,由 ③ 得 $a_{n+1} = 2a_n + 2^n$。
设 $c_n = a_n - n \cdot 2^{n-1}$,则
$c_{n+1} = a_{n+1} - (n+1)2^n = (2a_n + 2^n) - (n+1)2^n = 2a_n - n \cdot 2^n = 2(a_n - n \cdot 2^{n-1}) = 2c_n$
又 $c_1 = a_1 - 1 \cdot 2^0 = 2 - 1 = 1 \neq 0$。
故数列 $\{ a_n - n \cdot 2^{n-1} \}$ 是首项为 1,公比为 2 的等比数列。
(Ⅱ)当 $b=2$ 时,由(Ⅰ)知 $a_n - n \cdot 2^{n-1} = 1 \cdot 2^{n-1}$,
所以 $a_n = (n+1)2^{n-1}$。
当 $b \neq 2$ 时,设 $a_{n+1} + \lambda \cdot 2^{n+1} = b(a_n + \lambda \cdot 2^n)$,
展开得 $a_{n+1} = b a_n + (b\lambda - 2\lambda)2^n = b a_n + \lambda(b-2)2^n$。
对比 ③ 式 $a_{n+1} = b a_n + 2^n$,可得 $\lambda(b-2) = 1$,即 $\lambda = \frac{1}{b-2}$。
所以 $a_{n+1} + \frac{1}{b-2}2^{n+1} = b(a_n + \frac{1}{b-2}2^n)$。
令 $d_n = a_n + \frac{1}{b-2}2^n = a_n - \frac{1}{2-b}2^n$,
则 $\{d_n\}$ 是公比为 $b$ 的等比数列。
首项 $d_1 = a_1 - \frac{1}{2-b}2^1 = 2 - \frac{2}{2-b} = \frac{4-2b-2}{2-b} = \frac{2(1-b)}{2-b}$。
所以 $d_n = d_1 \cdot b^{n-1} = \frac{2(1-b)}{2-b} b^{n-1}$。
即 $a_n - \frac{1}{2-b}2^n = \frac{2(1-b)}{2-b} b^{n-1}$,
解得 $a_n = \frac{1}{2-b}2^n + \frac{2(1-b)}{2-b}b^{n-1}$。
综上所述:
$a_n = \begin{cases} (n+1)2^{n-1}, & b=2 \\ \frac{1}{2-b}2^n + \frac{2(1-b)}{2-b}b^{n-1}, & b \neq 2 \end{cases}$