Чтобы восстановить базу данных PostgreSQL из файла бэкапа с расширением `.tar`, действительно используется утилита `pg_restore`. Однако вами указан неправильно имя базы данных в команде. Вы упомянули, что создали пустую базу данных с именем `testdb`, но в команде вы указали `-d client03`, из-за чего восстановление идет в другую базу данных. Кроме того, параметр `-W` не требуется, если вы уже заходите под пользователем, который имеет пароль в .pgpass или если используете метод аутентификации, не требующий пароля.
Для корректного восстановления данных в базу `testdb`, ваша команда должна выглядеть примерно так:
```sh
pg_restore -c -U postgres -d testdb -v "/path/to/your/someFile.tar"
```
Если необходимо ввести пароль, вы будете предложены ввести его в процессе выполнения команды. Параметры команды означают следующее:
- `-c` — предписывает утилите очистить (удалить) объекты базы данных, прежде чем перезаписывать их.
- `-U` — указывает им пользователя, от имени которого производится восстановление.
- `-d` — указывает имя базы данных, в которую будет восстанавливаться бэкап.
- `-v` — активирует подробный вывод информации о процессе восстановления.
Проверьте также, что права доступа и имя базы данных указаны правильно. Если есть какие-либо ошибки в процессе восстановления, они будут отображаться в подробном выводе, который вы включили через `-v`. В случае, если утилита не выдаёт ошибок и объекты в базе данных не создаются, возможно, проблема заключается в самом файле бэкапа (он может быть пустой или поврежден).
Убедитесь, что файл резервной копии валиден и содержит данные. Вы можете проверить содержимое резервной копии при помощи команды:
```sh
pg_restore -l "/path/to/your/someFile.tar"
```
Эта команда выведет список объектов базы данных, содержащихся в бэкапе, если файл неповрежденный и содержит данные.