debugging techniques in linux