In recent years, several classes of codes are introduced to provide some fault-tolerance and guarantee system reliability in distributed storage systems, among which locally repairable codes (LRCs for short) play an important role. However, most known constructions are over large fields with sizes close to the code length, which lead to the systems computationally expensive. Due to this, binary LRCs are of interest in practice.In this paper, we focus on binary linear LRCs with disjoint repair groups. We first derive an explicit bound for the dimension k of such codes, which can be served as a generalization of the bounds given in [11], [36], [37]. We also give several new constructions of binary LRCs with minimum distance d = 6 based on weakly independent sets and partial spreads, which are optimal with respect to our newly obtained bound. In particular, for locality r ∈ {2, 3} and minimum distance d = 6, we obtain the desired optimal binary linear LRCs with disjoint repair groups for almost all parameters.which is also called as Singleton-like bound since it degenerates to classical Singleton bound when r = k. Later, in [7], [19], the bound (1) is generalized to vector codes and nonlinear codes. Although it certainly holds for all LRCs, it is not tight in many cases. The tightness of the bound (1) is studied in [28], [34].We say an LRC is d-optimal if it satisfies bound (1) with equality for given n, k and r. For the case (r + 1)|n, d-optimal LRCs are constructed explicitly in [32] and [25] by using Reed-Solomon codes and Gabidulin codes respectively. However, both constructions are built over a finite field whose size is an exponential function of the code length n. In [30], for the same case (r + 1)|n, the authors construct a d-optimal code over a finite field of size sightly greater than n by using "good" polynomials. This construction can be extended to the case (r + 1) ∤ n with the minimum distance d ≥ n − k − ⌈ k r ⌉ + 1 which