This is an eigenvalue problem.
Let's apply a Galerkin scheme: We fix a finite dimensional space of functions, pick a basis $u_0, u_2,\dotsc,u_{n}$ and define the matrices
$$A_{ij} = \int_0^1 \!\!\!\!\int_0^1 u_i(x) \, k(x,y) \, u_j(y) \, \operatorname{d}\! x \, \operatorname{d}\! y$$
and
$$M_{ij} = \int_0^1 \!\!\!\!\int_0^1 u_i(x) \, u_j(y) \, \operatorname{d}\! x \, \operatorname{d}\! y,$$
where $k(x,y) = \frac{1}{|x-y|^{2/3}}$. Afterwards, we we solve the generalized eigensystem
$$ (A - \lambda) \, f = 0.$$
Depending on the basis you chose, you will get different methods. I guess trigonometric polynomials or Chebyshev polynomials should work fine with superior accuracy. I'll make it quick and dirty and use continuous piecewise-linear functions with respect to a grid $0 = t_0 < t_1 < \dots < t_n = 1$.
This is how we can assemble the matrices:
n = 1000;
xlist = Subdivide[0., 1., n];
M = SparseArray[{
Band[{1, 1}] -> 2./(3. n),
Band[{2, 1}] -> 1./(6. n),
Band[{1, 2}] -> 1./(6. n)
}, {n + 1, n + 1}, 0.];
M[[1, 1]] = 1./(3. n);
M[[n + 1, n + 1]] = 1./(3. n);
kernel = 1./(DistanceMatrix[xlist, xlist]^(2/3) + IdentityMatrix[n + 1, SparseArray])
- IdentityMatrix[n + 1, SparseArray];
A = M.kernel.M;
We could use
{λ,U}=Eigensystem[{A,M}];
to solve the eigenvalue problem, but it takes rather long. Faster is this:
{λ, U} = Eigensystem[kernel.M];
A plot of the eigenfunctions for the eight highest eigenvalues can be obtained with
ListLinePlot[U[[1 ;; 8]]]
