Create an Oracle 10g database on your Linux server, export your Oracle9i database, FTP the .dmp file over to the Linux server and import it into your newly created database.
Create Table As Select (CTAS) via a database link
Create an Oracle 10g database on your Linux server and create a database link from the Oracle 10g database to the Oracle9i database. Run 'create table as select …' statements to create your tables with the data in the Oracle 10g database. Remember to also create any required indexes, constraints and referential integrity.
Use Oracle 10g cross-platform transportable tablespaces
Because your source server is Windows 2003, you can install Oracle 10gR2 on your Windows server, upgrade your database in place and then use the new cross-platform transportable tablespaces feature to move your database to your Linux server. Both Windows and Linux are supported platforms (you can query the view V$TRANSPORTABLE_PLATFORM to see supported platforms) and they are of the same endianness (little endian) so there is no need to convert the tablespaces being transported.
To read more about the cross-platform transportable tablespace feature, download the Oracle Database Administrator's Guide 10g (release 10.2) from Oracle Technology Network.
You should also review the Oracle Database 10g Release 2 (10.2) Upgrade Guide.
Dig Deeper on Oracle database export, import and migration
Related Q&A from Maria Anderson
I'm getting errors while installing the Database Configuration Assistant. Continue Reading
I have been trying to install Oracle 8.1.7 on SUSE Linux 9.0 and got the error: "Error in invoking target install of makefile /opt/oracle/...../*.mk." Continue Reading
Can I use /var/opt/oracle/oratab to specify listener information? Continue Reading