Existem, pelo menos, duas coisas que isso poderia ser. O mais provável é que ps
tenha um alias para ps -A
(ou ps a
; o a sem o - resulta em comportamento semelhante a -A) no fedora; o que explicaria o formato de saída.
Em cada sistema, digite which ps
, que revelará quais aliases, se houver, estão sendo chamados em vez do executável diretamente.
Você pode ignorar todos os aliases chamando o caminho completo do programa (por exemplo, /bin/ps
ou iniciando o comando com um entrelinha '\', por exemplo, \ps
.
A coisa muito menos provável é que as duas distros tenham compilado ps com diferentes flags (resultando em comportamento diferente). Acabei de checar o ps no fedora 23, e a saída padrão é a mesma que você está recebendo do ubunutu, então eu acho que você tem um apelido.
O alias é provavelmente definido no arquivo ~ / .bashrc; embora outros locais sejam possíveis. Você pode ver os aliases em seu ambiente atual digitando alias
sem argumentos no terminal.
Atualização:
Como não são alias, outra coisa (para indicar o óbvio) é modificar o comportamento. Aqui estão algumas coisas para olhar para descobrir o que é isso:
Em cada sistema, execute-os em um ambiente 'limpo':
env -i ps
e veja se o comportamento muda. Se isso acontecer, então sabemos que é um ambiente que muda isso.
em cada sistema, digite o seguinte comando:
ps --info
Veja se o campo personality=0x
é diferente de zero, o que pode alterar a saída. Observe quaisquer outras diferenças dessa saída; publique-as se não conseguir decodificar o significado da diferença.
Para ver se algo está refundindo ps
, execute o seguinte no bash shell em cada:
set -x
ps -a
Você deve ver algo como:
+ps -a
ecoou; se você ver alguma outra coisa, por exemplo +ps aux
, então isso causaria isso. Isso geralmente é feito por um alias, mas pode ser uma função.
Você pode desativar o spam baseando-se em set +x
Em cada máquina, verifique se o binário é um link simbólico para outra coisa e se há algo estranho acontecendo (provavelmente no fedora que / usr / bin / ps é um link sym para / bin / ps)
ls -alt /bin/ps
ls -alt /usr/bin/ps
Tente
type ps
Em cada máquina; os resultados devem ser os mesmos, se não responder com os resultados.
Existem algumas variáveis ambientais que podem modificar o comportamento de ps; para ver este tipo man ps
; eles estão no fundo. digite env
em cada sistema operacional e veja se algum está definido; você pode grep para eles:
env | grep 'CMD_ENV\|PS_PERSONALITY\|_XPG'
Existem outros; veja a página do manual para adicioná-los à consulta, caso eles não retornem nada ou para descobrir o que a configuração significa para ps
.
Entrando nas ervas daninhas aqui, mas se ainda não tiver nada, verifique os cabeçalhos dos arquivos binários em cada um deles:
readelf -h /bin/ps
Se nada disso mostrar diferenças, você pode copiar o arquivo / bin / ps para o outro SO e fazer uma comparação:
cmp -b /bin/ps /path/to/copy/of/ps
Isso produzirá todos os bytes que diferem entre os dois arquivos. Os valores reais não importam; apenas o número de diferenças.
Eles serão diferentes; se é apenas um par de bytes diferença que seria apenas o campo gcc NT_GNU_BUILD_ID, que é único para cada construção, mesmo arquivos idênticos. Se eles não são substancialmente diferentes do que é um comportamento ambientalmente influenciado, e eu não consigo mais pensar em verificar.