Se você está falando sobre sistemas de arquivos ext4, é baseado no tamanho do sistema de arquivos. O padrão é 1 inode por 16.384 bytes. Mais informações em Archwiki - ext4 - bytes por razão de inode
Observe que essa proporção pode ser revisada no momento da criação do sistema de arquivos, consulte man de página para mkfs.ext4
Para resolver as edições subsequentes da pergunta, onde você adicionou algumas perguntas:
Where does that 983040 come from?
Ele vem do tamanho do sistema de arquivos. 1 inode por 16.384 bytes de sistema de arquivos, por padrão.
Can we increase/decrease it?
Sim, mas não é fácil. Faça backup do sistema de arquivos, recrie o sistema de arquivos usando o argumento "-i bytes por inode" na página man. Restaure o conteúdo do sistema de arquivos.
Within what limits?
Como mostrado na man page, bytes-por-inode não deve ser definido para menos que o tamanho do bloco, caso contrário você provavelmente terá mais inodes do que poderia ser usado. Como Stéphane Chazelas aponta, arquivos vazios, dispositivos, fifos, sockets, symlinks curtos consomem um inode, mas não consomem um bloco.
Você realmente precisa criar mais de 887.357 arquivos adicionais no sistema de arquivos raiz?