\saction{mtools}
\subsubsection{NOME}
mtools - utilitários para acessar discos DOS no Unix. 

 \subsubsection{INTRODUÇÃO 
}
O mtools é uma coleção de ferramentas de domínio público que permite aos 
sistemas Unix manipular arquivos MS-DOS: leitura, gravação e movimentação 
de arquivos em sistemas de arquivos MS-DOS (tipicamente disquetes). Sempre 
que possível o comando tenta simular o comando equivalente no MS-DOS. Por 
outro lado, as restrições do MS-DOS não são implementadas. Por exemplo, 
é possível mover ou renomear subdiretórios. 

Estas ferramentas são suficientes 
para fornecer todo o acesso necessário a sistemas de arquivos MS-DOS. Por 
exemplo, comandos como  mdir a:  funcionam na unidade de disquetes  
a:  sem qualquer montagem ou inicialização prévia (assumindo que o padrão 
 /etc/mtools.conf  está configurado). Com o mtools, pode-se mudar os 
disquetes sem a necessidade de montá-los e desmontá-los. 

 \subsubsection{ONDE OBTER O MTOOLS 
}
     

O mtools pode ser encontrado nos seguintes endereços (e nos seus 
sites espelhos):     http://mtools.ltnb.lu/mtools-3.9.1.tar.gz 

 ftp://www.tux.org/pub/knaff/mtools/mtools-3.9.1.tar.gz 


 ftp://sunsite.unc.edu/pub/Linux/utils/disk-management/mtools-3.9.1.tar.gz 

   
     

Antes de reportar um erro, esteja certo de que ele já não foi corrigido 
nas atualizações Alpha, que podem ser encontradas em:     http://www/poboxes.com/Alain.Knaff/mtools 


 ftp://www.tux.org/pub/knaff/mtools 

        

As atualizações e acertos são 
denominados  mtools- \textit{versão } - \textit{ddmm } .taz , onde versão significa o 
programa base, \textit{dd } o dia  e \textit{mm } o mês. Devido a questões de espaço de armazenamento, 
normalmente estão disponíveis somente a última versão de cada ferramenta. 


Há uma lista de discussão sobre o tema em mtools@tux.org . Por favor, envie 
todos os comunicados de erros para esta lista. Pode-se subscrevê-la enviando 
uma mensagem com 'subscribe mtools@linux.wauug.org' como conteúdo, destinada 
a majordomo@tux.org. Anúncios de novas versões são também enviados para 
a lista, em adição aos realizados nas lista de discussão Linux. Um histórico 
das mensagens está arquivado em http://www.tux.org/hypermail/mtools/latest. 


 \subsubsection{FUNCIONALIDADES COMUNS A TODOS OS COMANDOS }


 \subsubsection{OPÇÕES E NOMES DE ARQUIVOS 
}  Os nomes de arquivos no MS-DOS são compostos por uma letra representando 
o dispositivo seguido por dois pontos, um subdiretório e o nome do arquivo. 
Somente o nome do arquivos é obrigatório, os demais componentes são opcionais. 
Nomes de arquivos sem uma letra de dispositivo referenciam arquivos Unix. 
Nomes de subdiretórios podem utilizar os separadores:' / ' ou ' $\backslash$ '. O uso 
do separador ' $\backslash$ ' ou caracteres de generalização devem estar entre apóstrofos 
a fim de evitar confusões com o ambiente de trabalho. De qualquer forma, 
caracteres de generalização não devem estar entre apóstrofos quando se 
deseje que o ambiente de trabalho \textbf{ expanda  }  o nome do arquivo. 

As rotinas 
de expressões regulares de generalização seguem as regras do estilo Unix. 
Por exemplo, ` * ' equivale à expressão DOS ` *.* '. Os bits de atributos 
dos arquivos (escondido, somente leitura e atributos do sistema) são ignorados 
durante os testes de coincidência de nomes. 

Todas as opções usam o sinal 
 -  (menos), como seu primeiro caracter, diferentemente de  / , utilizado 
no MS-DOS. 

Muitos comandos do mtools permitem como parâmetros, múltiplos 
nomes de arquivos, que não conferem com as convenções MS-DOS, mas que são 
certamente mais amigáveis. 

Muitos comandos do mtools permitem opções que 
os instruam em como lidar com nomes de arquivos distintos. Veja a seção 
Nomes distintos, para maiores detalhes. Todos os comandos aceitam os indicadores 
 -V , o qual apresenta a versão do comando, e muitos aceitam o indicador 
 -v , que aciona o modo ativo de mensagens. Neste modo, os comandos listam 
os nomes dos arquivos MS-DOS sobre os quais eles estão atuando, a menos 
que o contrário seja indicado. Veja a seção Comandos para uma descrição 
das opções específicas de cada comando. 

 \subsubsection{LETRAS DE DISPOSITIVOS }

O significado 
das letras de dispositivos depende da arquitetura de destino. Na maioria 
delas, o dispositivo A significa a primeira unidade de disquetes, dispositivo 
B, a segunda unidade de disquetes (se disponível), dispositivo J é um 
equipamento Jaz, e dispositivo Z significa uma unidade Zip. Nos sistemas 
onde o nome de dispositivo é derivado de identificações SCSI, a unidade 
Jaz é assumida como sendo dispositivo SCSI 4 e o Zip como sendo SCSI 5 
(padrões de fábrica). No Linux, ambos os dispositivos são assumidos como 
estando no segundo dispositivo SCSI (/dev/sdb). As configurações padrão 
podem ser alteradas através do arquivo de configuração (Veja a seção Configuração). 


 \subsubsection{DIRETÓRIO ATUAL DE TRABALHO }     

O comando  mcd  (ifmcdis) é usado 
para estabelecer o diretório atual de trabalho (relativo ao sistema de 
arquivos MS-DOS), sendo que o padrão assumido é  A:/ . Diferentemente 
do MS-DOS, há somente um diretório de trabalho para todos os dispositivos 
e não um por dispositivo. 

 \subsubsection{ESTILO VFAT - ARQUIVOS COM NOMES LONGOS }     


Esta versão do mtools suporta arquivos com nomes longos. Caso um nome de 
arquivo Unix seja muito longo para ser armazenado no formato DOS, ele 
é armazenado como um arquivo de nome longo VFAT, e um nome pequeno de 
acompanhamento é gerado. Este nome curto é o apresentado ao se examinar 
o disco com uma versão anterior a 7.0 do DOS. A tabela a seguir apresenta 
alguns exemplos de nomes curtos: 

    Nome Longo      Nome Ms-DOS      Razão 
da Mudança 

 ---------       ----------      --------------------- 

 istoeumteste    ISTOEU~1        nome de arquivo 
muito longo 

 sandro.nunes    SANDR~1.NUN     extensão muito longa 

 prn.txt 
        PRN~1.TXT       PRN é um nome de dispositivo 

 .abc   	   	 ABC~1  
         nome de arquivos nulo 

 istoéum.tst     ISTO\_UM.TST     caracter 
ilegal 

        

Como se pode perceber, as seguintes transformações decorrem 
da derivação para nomes curtos: \begin{dispitems}
\item [*     ] Caracteres ilegais são substituídos 
pelo traço ( \_ ). Os caracteres ilegais em nomes de arquivos são:  ;+=[]',$\backslash$"*$\backslash$$\backslash$$<$$>$/?:$|$ 
. 
\item [*     ] Pontos extras, que não podem ser interpretados como o nome principal 
ou a extensão, são removidos. 
\item [*     ] Um número  ~ \textit{n } é gerado, 
\item [*     ] O nome 
é abreviado para caber no formato 8+3  
\end{dispitems}


O nome de arquivo inicial no estilo 
Unix (curto ou longo) é também chamado de nome \textit{primário }, e o nome curto 
derivado é chamado de \textit{secundário }.  

 Exemplo:      mcopy /etc/motd a:umnomebemcomprido 


        O mtools cria uma entrada VFAT para umnomebemcomprido e usa UMNOMEBE 
como nome curto; umnomebemcomprido é o nome primário e UMNOMEBE é o secundário. 
     mcopy /etc/motd a:motd 

        Motd atende às limitações do nome 
de arquivos DOS. Então, um nome derivado não é gerado. Neste caso, motd 
é o nome primário e não há nome secundário. 

De forma direta: o nome primário 
é o nome longo, caso ele exista, ou o nome curto caso não haja nome longo. 


Apesar de VFAT ser muito mais flexível que FAT, há ainda alguns nomes 
que não são aceitáveis, mesmo na VFAT. Há ainda alguns caracteres ilegais, 
como ( $\backslash$"*$\backslash$$\backslash$$<$$>$/?:$|$ ), e nomes de dispositivos que são reservados. 

    Nome 
Unix       Nome Longo     Razão da mudança 

 ---------       ----------     ------------------------------ 

 prn         
    prn-1           PRN é um nome de dispositivo 

 ab:c            ab\_c-1 
         caracter ilegal 

        

Como se pode ver, as seguintes transformações 
ocorrem caso um nome longo seja ilegal: \begin{dispitems}
\item [*     ] Caracteres ilegais são substituídos 
pelo traço ( \_ ).  
\item [*     ] Um número  - \textit{n } é gerado. 
\end{dispitems}


\subsubsection{ NOMES DISTINTOS }     


Ao gravar um arquivo em disco, seu nome longo ou nome curto pode colidir 
com um arquivo ou diretório já existente. Isso pode ocorrer com todos os 
comandos que criem novas entradas de diretório, como por exemplo:  mcopy 
,  mmd ,  mren ,  mmove ,  mwrite  e  mread . Quando ocorre uma 
colisão, o mtools pergunta ao usuário o que deve ser feito. E algumas opções 
são ofertadas: \begin{dispitems}
\item [ overwrite    ] Regrava o arquivo existente. Não é possível 
sobrescrever um diretório com um arquivo. 
\item [ rename    ] Renomeia o arquivo 
recém criado. O novo nome do arquivo será solicitado. 
\item [ autorename    ] Renomea 
o arquivo recém criado. Será criado um nome automaticamente, sem qualquer 
solicitação ao usuário. 
\item [ skip    ] Desiste do arquivo corrente e vai para 
o próximo (se houver). 
\end{dispitems}


Para escolher uma dessas opções, deve-se digitar 
a primeira letra da opção na linha de comando. Caso se use uma letra minúscula, 
a ação será aplicada exclusivamente ao arquivo, caso se use uma letra 
maiúscula, a ação será aplicada a todos os arquivos, e não haverá uma 
nova pergunta. 

Pode-se ainda escolher entre as seguintes opções na linha 
de comando, ao se utilizar o mtools: \begin{dispitems}
\item [ -o    ] Regrava os nomes arquivos 
por padrão. 
\item [ -O    ] Regrava nomes secundários por padrão. 
\item [ -r    ] Muda o nome 
primário por padrão. 
\item [ -R    ] Muda o nome secundário por padrão. 
\item [ -a    ] Muda 
automaticamente o nome primário por padrão. 
\item [ -A    ] Muda automaticamente 
o nome secundário por padrão. 
\item [ -s    ] Ignora o nome primário por padrão. 

\item [ -S    ] Ignora o nome secundário por padrão. 
\item [ -m    ] Solicita ao usuário 
a decisão do que fazer com o nome primário. 
\item [ -M    ] Solicita ao usuário 
a decisão do que fazer com o nome secundário. 
\end{dispitems}


Por padrão, é solicitado 
ao usuário, a decisão sobre o que fazer com o nome primário e o nome secundário 
é automaticamente alterado, caso haja colisão de nomes. 

Caso a colisão 
de nomes ocorra em um diretório Unix, o mtools somente pergunta se deve 
sobrescrever ou ignorar o arquivo. 

 \subsubsection{SENSIBILIDADE A MAIÚSCULAS E MINÚSCULAS 
NO SISTEMA DE ARQUIVOS VFAT } 

O sistema de arquivos VFAT é capaz de lembrar 
as maiúsculas e minúsculas de cada sistema de arquivos. Ainda assim, nomes 
de arquivos que diferenciem-se somente por esta diferença, não poderão 
coexistir no mesmo diretório. Por exemplo, caso se armazene um arquivo 
chamado ArquivoNomeLongo em um sistema de arquivos VFAT, o mdir mostrará 
este arquivo como ArquivoNomeLongo e não Arquivonomelongo. Porém ao se 
tentar acrescentar o arquivo ArquivoNomelongo, esse não será aceito, porque 
maiúsculas e minúsculas são ignoradas na geração de nomes curtos. 

O sistema 
de arquivos VFAT permite o armazenamento de maiúsculas e minúsculas no 
byte de atributo, caso todas as letras do nome principal e da extensão 
tenham o mesmo formato. O mtools usa esta informação ao mostrar os arquivos, 
e também para gerar um nome de arquivo Unix ao copiar (com o mcopy) um 
arquivo para um diretório Unix. Isso pode ter resultados inesperados quando 
aplicado a arquivos gravados com uma versão anterior a DOS 7.0. Na verdade 
o antigo estilo de nomes de arquivos mapeia todo o nome do arquivo para 
maiúsculas. Isso é diferente de usar versões antigas do mtools para gerar 
nomes de arquivos Unix em minúsculas. 

 \subsubsection{FORMATOS DE ALTA CAPACIDADE }    
  

O mtools suporta um número de formatos que permitem armazenar mais dados 
em um disco do que o usual. Dada à diferença entre as habilidades de cada 
sistema, estes formatos podem não ser suportados em todos eles. O mtools 
reconhece esses formatos de forma transparente, quando suportados. 

Para 
formatar estes discos, deve-se usar uma ferramenta específica do sistema 
operacional. Para Linux, ferramentas para disquetes podem ser encontradas 
no pacote  fdutils  nas seguintes localizações:      ftp://www.tux.org/pub/knaff/fdutils/. 


  ftp://sunsite.unc.edu/pub/Linux/utils/disk-management/fdutils-* 

      
  

Veja ainda as páginas de manual incluídas nesse pacote para maiores 
informações. Use   superformat  para formatar em qualquer padrão exceto 
XDF, para o qual deve ser usado  xdfcopy . 

 \subsubsection{MAIS SETORES }    

O método 
mais antigo de se colocar mais dados em um disco é o de utilizar mais 
setores e mais trilhas. Apesar do formato padrão de disquetes utilizar 
80 trilhas e 18 setores (em um disco de 3 1/2  polegadas de alta densidade), 
é possível utilizar-se até 83 trilhas (na maioria dos dispositivos) e até 
21 setores.  Este método permite a armazenagem de até 1.743 Kb em disquetes 
de alta densidade de 3 e 1/2 polegadas. Discos com 21 setores são duas 
vezes mais lentos que o padrão de 18 setores, porque os setores são armazenados 
tão próximos que é necessário criar um espaço entre eles. Este problema 
não existe para formatos com 20 setores. 

Este formatos são suportados por 
numerosos utilitários shareware DOS, como por exemplo  fdformat  e  
vgacopy. Em seu infinito afã, Bill Gate\$ acredita ter inventado isso, 
e chamado de  discos DMF, ou  discos formatados Windows. 
Mas na realidade, eles já existem há anos! O mtools suporta estes formatos 
no Linux, no SunOs e ainda em DELL Unix PC. 

 \subsubsection{SETORES MAIORES } Ao se utilizar 
setores maiores é possível ir-se além da capacidade que pode ser obtida 
com setores padrões de 512 bytes. Isso se deve ao cabeçalho do setor. Este 
tem o mesmo tamanho, independentemente de quantos bytes estejam no setor. 
Ou seja, obtém-se algum espaço usando-se \textit{menos}, mas maiores setores. Por 
exemplo, um setor de 4 Kb usa somente um espaço de cabeçalho, onde 8 setores 
de 512 bytes utilizariam oito espaços, para a mesma quantidade de espaço 
útil. 

Este método permite armazenar-se até 1.992 Kb em um disquete de alta 
densidade de 3 1/2 polegadas. 

O mtools suporta estes formatos somente em 
Linux. 

 \subsubsection{2M } 

O formato 2m foi originalmente criado por Ciriaco Garcia de 
Celis. Ele também usa setores maiores que o normal para armazenar mais 
dados no disquete. De qualquer forma, ele usa o formato padrão (18 setores 
de 512 bytes cada) no primeiro cilindro, a fim de tornar estes discos 
mais simples de serem manuseados no DOS. Adicionalmente este método permite 
a utilização de formatos padrões de setor de inicialização, o qual contém 
a descrição de como o resto do disco deve ser lido. 

Por outro lado, esta 
opção de formato do primeiro cilindro pode conter menos dados que as outras. 
Infelizmente, o DOS pode manusear somente discos onde cada trilha contenha 
a mesma quantidade de dados. Isso é resolvido pelo formato 2M ao esconder 
o fato de que a primeira trilha contém menos dados, usando uma \textit{FAT sombra 
 }. (Normalmente, o DOS armazena a FAT em duas cópias idênticas, para segurança 
adicional. O XDF armazena somente uma cópia, e diz ao DOS ter armazenado 
duas. Porém os dados que seriam obtidos na segunda cópia da FAT são salvos). 
Isso significa que \textbf{ nunca se poderá usar um disco 2M para armazenar algo 
diferente de um sistema de arquivos DOS }. 

O mtools suporta este formato 
somente no Linux. 

 \subsubsection{XDF }  

XDF é um formato de alta capacidade usado pelo 
OS/2. Ele pode armazenar até 1.840 Kb por disco. Isso está abaixo dos melhores 
formatos 2M, mas a sua grande vantagem é a velocidade: 600 ms por trilha, 
o que é mais rápido que o formato de 21 setores por trilha, e quase mais 
rápido ainda que o formato padrão de 18 setores. Para poder acessar estes 
discos, assegure-se que o mtools foi compilado com suporte para XDF, e 
configure a variável  use\_xdf  no arquivo de configuração. Veja a seção 
Compilando mtools e variáveis diversas, para maiores detalhes. O acesso 
rápido XDF está disponível somente para kernels do Linux posteriores ao 
1.1.34. 

O mtools suporta este formato somente em Linux. 

 \subsubsection{CÓDIGOS DE SAÍDA 
}Todos os comandos do mtools retornam 0 ao finalizarem normalmente, 1 para 
falhas fatais e 2 para falhas parciais. Todos executam algumas checagens 
de integridade antes de prosseguirem, para estarem seguros de que o disco 
está no formato MS-DOS ou ext2 ou minix. Estas verificações podem rejeitar 
parcialmente discos corrompidos, os quais eventualmente ainda podem ser 
lidos. Para evitar estas checagens configure a variável MTOOLS\_SKIP\_CHECK 
ou a variável do arquivo de configuração correspondente.  \subsubsection{PROBLEMAS }Um 
efeito colateral de não testar o dispositivo adequadamente (quando múltiplas 
capacidades de discos são suportadas), reside em mensagens de erros ocasionais 
do programa de controle do dispositivos. Essas podem ser ignoradas com 
segurança.  

A checagem dos códigos da FAT conflita em discos formatados 
com 1.72 Mb e com Mtools pré 2.0.7. Configure a variável MTOOLS\_FAT\_COMPATIBILITY 
(ou a variável correspondente no arquivo de configuração), variáveis 
globaisis)  para evitar a verificação. 

 \subsubsection{COMO CONFIGURAR O MTOOLS PARA O 
SEU AMBIENTE }
 \subsubsection{DESCRIÇÃO }  

Esta seção explica a sintaxe dos arquivos de 
configuração do mtools. Esses arquivos são chamados  /usr/local/etc/mtools.conf
 e  ~/.mtoolsrc. Caso a variável de ambiente  MTOOLSRC  esteja 
configurada, o seu conteúdo será usado como o nome do terceiro arquivo 
de configuração. Esses arquivos de configuração descrevem os seguintes 
itens: \begin{dispitems}
\item [*  Indicadores e variáveis de configuração global   ] 
\item [*  Indicadores e variáveis por dispositivo  
 ] 
\item [*  Tabelas de tradução de caracteres   ] 
\end{dispitems}


 \subsubsection{LOCALIZAÇÃO DOS ARQUIVOS DE CONFIGURAÇÃO 
}

   

 /usr/local/etc/mtools.conf  é o arquivo de configuração de todo 
o sistema, e  ~/.mtoolsrc é o arquivo de configuração privativa 
do usuário. 

Em alguns sistemas, o arquivo de configuração de todo o sistema 
é denominado  /etc/defaults/mtools.conf. 

 \subsubsection{SINTAXE DO ARQUIVO DE CONFIGURAÇÃO 
GERAL }  

O arquivo de configuração é construído por seções. Cada seção inicia 
com uma palavra chave de identificação, seguida por dois pontos. A seguir 
as variáveis e indicadores são definidos. As variáveis são inicializadas 
da seguinte forma:  nome=valor.  

 Indicadores são palavras chaves sem o 
sinal de igualdade e os valores são intrínsecos à sua presença. Uma seção 
termina no final do arquivo ou onde a seção seguinte começa. 

As linhas 
que começam com o sinal de número ( \# ) são consideradas comentários. 
Caracteres de nova linha são equivalentes a espaço em branco (exceto quando 
finalizarem um comentário). O arquivo de configuração é insensível a maiúsculas 
e minúsculas, exceto para itens entre apóstrofos (como por exemplo nomes 
de arquivos). 

 \subsubsection{VALORES PADRÕES }   Para muitas plataformas, o mtools contém 
um número razoável de padrões pré-construídos internamente para dispositivos 
de disquetes. Normalmente isso não será motivo de preocupação para o usuário, 
caso se deseje somente acessar unidades de disquetes. Por outro lado, arquivos 
de configuração são necessários caso se deseje utilizar o mtools para 
acessar partições de disco rígido e arquivos imagens do DOSEMU. 

 \subsubsection{VARIÁVEIS 
GLOBAIS }        

Variáveis globais devem ser configuradas com 1 ou 0. 

As 
seguintes variáveis globais são reconhecidas: \begin{dispitems}
\item [ MTOOLS\_SKIP\_CHECK    ] Caso 
esteja configurada com 1, o mtools não executa muitas das checagens de 
integridade. Isso é necessário para ler alguns discos Atari que foram desenvolvidos 
com ROM mais recentes e que não serão reconhecidos de outra forma. 
\item [ MTOOLS\_FAT\_COMPATIBILITY 
   ] Caso esteja configurado com 1, o mtools não executa a checagem de tamanho 
da FAT. Alguns discos tem uma FAT maior que a necessária e neste caso serão 
rejeitadas caso esta opção não esteja configurada. 
\item [ MTOOLS\_LOWER\_CASE 
   ] Caso esteja configurada com 1, o mtools lista todos os nomes curtos 
de arquivo que estejam em maiúsculas como minúsculas. Esta funcionalidade 
está disponível para permitir um comportamento consistente com versões 
mais antigas do mtools que não interpretam bits de maiúsculas e minúsculas. 

\item [ MTOOLS\_NO\_VFAT    ] Caso esteja configurada com 1, o mtools gera entradas 
na VFAT para nomes de arquivos que tem nomes mistos, com caracteres maiúsculos 
e minúsculos, mas sempre com caracteres legais no DOS. Isso é útil ao se 
trabalhar com versões DOS que não conseguem lidar com nomes longos de 
VFAT, como por exemplo o FreeDos. 
\item [ MTOOLS\_DOTTED\_DIR    ] No diretório, 
lista o nome curto como um ponto ao invés de espaços separando o nome 
base da extensão. 
\item [ MTOOLS\_NAME\_NUMERIC\_TAIL    ] Caso esteja configurado 
com 1 (padrão), gera sufixos numéricos para nomes longos (~1). Caso esteja 
configurado com 0, somente gera sufixos numéricos se uma colisão de nomes 
ocorrer. 
\item [ MTOOLS\_TWENTY\_FOUR\_HOUR\_CLOCK    ] Caso seja igual a 1, usa a 
notação européia para o horário (24 horas) aos invés da notação Americana/Inglesa 
(12 horas  am/pm). 
\end{dispitems}


Exemplo: Inserindo a seguinte linha no arquivo de configuração, 
instrui o mtools a evitar checagens de integridade:       MTOOLS\_SKIP\_CHECK=1 


        

Variáveis globais podem ainda ser configuradas através do ambiente: 
     export MTOOLS\_SKIP\_CHECK=1 

        

Variáveis de texto globais podem 
ser configuradas para qualquer valor: \begin{dispitems}
\item [ MTOOLS\_DATE\_STRING    ] O formato 
usado para a impressão das datas nos arquivos. Por padrão, igual a dd-mm-aaaa. 

\end{dispitems}


 \subsubsection{INDICADORES E VARIÁVEIS POR DISPOSITIVO }  

 \subsubsection{INFORMAÇÃO GERAL }   

Os indicadores 
e variáveis por dispositivo são descritos em uma seção de dispositivo, 
que começa com:  dispositivo  "\textit{letra\_do\_dispositivo }" : 

Após seguem 
os pares e indicadores de valores de variáveis. 

Este é um exemplo de descrição 
de dispositivo:       drive a: 

     file="/dev/fd0" use\_xdf=1 

        


 \subsubsection{CONFIGURAÇÃO DE GEOMETRIA DE DISCO }       

Informações de geometria descrevem 
as características físicas dos discos. Elas têm três propósitos: \begin{dispitems}
\item [formatação  
 ] As informações sobre a geometria são gravadas no setor de inicialização 
de discos novos. Porém, pode-se informar este parâmetro na linha de comando. 
Veja a seção mformat para maiores detalhes. 
\item [filtros   ] Em alguns Unix há 
alguns arquivos de dispositivos que suportam somente uma geometria física. 
Nestes casos será necessário usar um ou outro arquivo de controle de dispositivo 
para controlar discos de baixa ou alta densidade. A geometria é comparada 
com a informação contida no setor de inicialização para garantir que o 
arquivo de controle é capaz de ler corretamente o disco. Caso a geometria 
seja diferente, a entrada de dispositivo falhará e a próxima entrada no 
disco para  o mesmo dispositivo (de mesma letra) será utilizada. Veja a 
seção de descrições múltiplas para maiores detalhes, no fornecimento de 
diversos parâmetros para o mesmo dispositivo.  
\item [Caso nenhuma informação 
de geometria seja fornecida no arquivo de configuração, todos os discos 
serão aceitos. No Linux (e no Sparc) existem arquivos de controle que suportam 
configuração de geometria, como por exemplo ( /dev/fd0,  /dev/fd1 
 etc), onde os filtros não são necessários. (O mtools ainda faz filtragem 
de arquivos imagens de discos em Linux: isso é executado somente com o 
propósito de testes. Desconheço algum Unix que necessite de filtros atualmente). 
 ] 
\item [Se você não precisa de filtros, mas mesmo assim quer uma geometria padrão 
para a formatação, pode-se desativar os filtros usando o indicador  mformat\_only 
.  ] 
\item [geometria inicial   ] A informação de geometria (caso disponível) pode 
ser usada para configurar a geometria inicial de arquivos configuráveis 
de dispositivos. Ela é usada para ler o setor de inicialização , o qual 
contém a geometria real do disco. Caso nenhuma configuração seja fornecida, 
nenhuma configuração inicial será realizada.  
\item [No Linux, isso não é realmente 
necessário, já que os arquivos configuráveis de dispositivos são capazes 
de auto detectar o tipo do disco (os formatos mais comuns) para ler o 
setor de inicialização.  ] 
\end{dispitems}


Informações incorretas de geometria podem produzir 
erros muito estranhos. Por isso, recomendo a adição do indicador mformat\_only 
na descrição do seu dispositivo, a menos que os filtros ou a geometria 
inicial sejam realmente necessários. 

As seguintes variáveis relacionadas 
com a geometria são aceitas: \begin{dispitems}
\item [ cilindros    ]  

 
\item [  trilhas    ]   O número 
de cilindros. ( cilindros  é a forma preferencial, já que o formato  
 trilhas  é considerado obsoleto). 
\item [ cabeças    ]  O número de cabeças 
(faces). 
\item [ setores    ]  O número de setores por trilha. 
\end{dispitems}


Exemplo: a seguinte 
seção de dispositivo descreve um dispositivo de 1.44 Mb: 

      drive a: 


       file="/dev/fd0H1440" 

       fat\_bits=12 

       cylinders=80 heads=2 
sectors=18 

        

As seguintes descrições de geometria e seus formatos 
resumidos estão disponíveis: \begin{dispitems}
\item [ 1.44m    ] discos de alta densidade de 3 1/2 
 polegadas. Equivale a   fat\_bits=12 cylinders=80 heads=2 sectors=18 
.  
\item [ 1.2m    ] discos de alta densidade de 5 1/4 polegadas. Equivale a   fat\_bits=12 
cylinders=80 heads=2 sectors=15 .  
\item [ 720k    ] discos de dupla densidade 
de 3 1/2 polegadas. Equivale a   fat\_bits=12 cylinders=80 heads=2 sectors=9 
.  
\item [ 360k    ] discos de dupla densidade de 5 1/4 polegadas. Equivale a   
fat\_bits=12 cylinders=40 heads=2 sectors=9 .  
\end{dispitems}


O formato resumido pode 
ser complementado ou sobreposto. Por exemplo,  360k sectors=8   descreve 
um disco de 320 Kb e é equivalente a:  fat\_bits=12 cylinders=40 heads=2 
sectors=8 .  

 \subsubsection{OUTROS INDICADORES }      

Adicionalmente os seguintes indicadores 
estão disponíveis: \begin{dispitems}
\item [ sync    ] Todas as operações de entrada e saída serão 
realizadas sincronamente. 
\item [ nodelay    ] O dispositivo ou arquivo é aberto 
com o indicador O\_NDELAY. Isso é necessário em algumas arquiteturas não 
Linux. 
\item [ exclusive    ] O dispositivo ou arquivo é aberto com o indicador 
O\_EXCL. No Linux, isso assegura acesso exclusivo ao dispositivo de disquetes. 
Em outras arquiteturas e para arquivos comuns, não tem qualquer efeito. 

\end{dispitems}


 \subsubsection{VARIÁVEIS DE USO GERAL }

 

As seguintes variáveis de uso geral para dispositivos 
estão disponíveis. Dependendo do tipo, estas variáveis podem ser configuradas 
para um texto (arquivo, precmd) ou um número (demais variáveis): \begin{dispitems}
\item [ file 
   ]     O nome do arquivo ou dispositivo que contém a imagem de disco. Este 
é um indicador obrigatório e o nome do arquivo deve estar entre apóstrofos. 

\item [ use\_xdf    ]   Caso esteja com um valor diferente de zeros, faz com que 
o disco seja acessado como um disquete XDF, que é um formato de alta capacidade 
usado pelo OS/2. Este indicador é por padrão desligado. Veja a seção XDF 
para maiores detalhes. 
\item [ partition    ]          Indica ao mtools para tratar 
o dispositivo como uma unidade particionada, e para usar a partição informada. 
Somente partições primárias podem ser acessadas usando-se este método, 
elas são numeradas de 1 a 4. Para partições lógicas, usa-se a variável de 
 formato geral  offset . A variável  partition  visa as mídias removíveis 
como Syquests, ZIP drives, e discos ótico magnéticos. Apesar do DOS enxergar 
dispositivos Syquests e discos ótico magnéticos como  disquetes gigantesis 
 os quais não são particionados, OS/2 e Windows NT os tratam como discos 
rígidos, ou seja como dispositivos particionados. O indicador  partition 
 é útil ainda em imagens de discos DOSEMU. Não é recomendado para discos 
rígidos com acesso direto a partições disponíveis através de montagem. 

\item [ SCSI    ]        Quando configurado com 1, esta opção indica ao mtools 
usar o acesso direto a entradas e saídas SCSI ao invés de utilizar as 
chamadas de leituras e gravações no acesso ao dispositivo. Atualmente é 
suportada pelas plataformas HP/UX, Solaris e SunOs.  Isso é necessário, 
porque em algumas arquiteturas, como SunOs ou Solaris, a mídia não pode 
ser acessada usando-se as chamadas de sistema  read  e  write , uma 
vez que o SO espera que elas contenham uma etiqueta de disco específica 
da SUM. 
\item [Como o acesso direto a SCSI sempre usa todo o dispositivo, é necessário 
especificar o indicador "partition" em conjunto.  ] 
\item [Em algumas arquiteturas, 
como Solaris, o mtools necessita de privilégios de superusuário para ser 
capaz de executar a opção  scsi=1 . Caso o mtools tenha sido instalado 
com a identificação de superusuário no Solaris e tente acessar um dispositivo 
Zip/Jaz, ele usará os privilégios de superusuário para abrir o dispositivo 
e utilizar as chamadas de entrada e saída SCSI. Mais comumente, privilégios 
de superusuário são usados somente em dispositivos descritos no arquivo 
de configuração de todo o sistema tais como   ]  /usr/local/etc/mtools.conf, 
e menos naqueles descritos em   ~/.mtoolsrc  ou  \$MTOOLSRC
. 
\item [ privileged    ]   Quando configurado para 1, instrui o mtools a usar 
seus privilégios de identificação de usuário e grupo para abrir o dispositivo 
informado. Esta opção é válida para dispositivos descritos nos arquivos 
de configuração de todo o sistema (tais como  /usr/local/etc/mtools.conf
, e não em  ~/.mtoolsrc  ou  \$MTOOLSRC). Obviamente esta opção 
poderá não ser utilizada se mtools não está instalado com as opções setuid 
ou setgid.  Esta opção tem implicação com 'scsi=1', mas somente para arquivos 
de configuração de todo o sistema. Esta opção pode ser inicializada com 
0, para indicar que o mtools não deve usar seus privilégios em um determinado 
dispositivo mesmo se  scsi=1  estiver configurado. 
\item [O mtools somente necessita 
ser instalado com a opção setuid se forem usadas as variáveis  privileged 
 ou  SCSI . Caso contrário ele também funcionará perfeitamente sem estes 
privilégios.  ] 
\item [ vold    ]   Instrui o mtools a interpretar o nome do dispositivo 
como um identificador de volume ao invés de como um nome de arquivo. O 
identificador vold é traduzido para um nome de arquivo real utilizando-se 
as funções  media\_findname()  e  media\_oldaliases()  da biblioteca 
 volmgt . Este indicador somente estará disponível se a opção   --enable-new-vold 
 for configurada antes da compilação. 
\item [ nolock    ]    Instrui o mtools a 
não usar reserva de arquivos neste dispositivo. Isso é necessário em sistemas 
com semânticas de reserva de arquivos que contenham problemas. De qualquer 
forma, habilitar esta opção torna a operação menos segura em casos onde 
diversos usuários possam acessar o dispositivo simultaneamente. 
\item [ offset 
   ]   Descreve onde, no arquivo, o sistema de arquivos MS-DOS começa. Isso 
é útil para partições lógicas em imagens de disco rígido do DOSEMU ou 
para discos em memória Atari. Por padrão é igual a zero, significando que 
o sistema de arquivos começa no início do arquivo. 
\item [ fat\_bits    ]  O número 
de FAT bits. Pode ser igual a 12 ou 16. Raramente é utilizado e geralmente 
deduzido das informações do setor de inicialização. Por outro lado, descrever 
erroneamente este parâmetro pode ser desastroso, caso um valor inválido 
seja informado. Deve-se usar somente se o mtools obtiver um número inválido 
na auto detecção, ou caso se deseje formatar o disco com um número estranho 
de FAT bits. 
\item [ precmd    ]   Em algumas variantes do Solaris é necessário 
usar 'volcheck -v' antes de abrir um   Dispositivo de disquetes, para que 
o sistema seja notificado de que há um disquete no dispositivo.  precmd="volcheck 
-v"  na cláusula de dispositivo consegue obter o comportamento desejado. 

\end{dispitems}


Somente a variável  file  é obrigatória, os outros parâmetros não necessitam 
ser utilizados. Nestes casos os valores padrões ou auto detectados são 
utilizados. 

 \subsubsection{FORNECENDO MÚLTIPLAS CONFIGURAÇÕES PARA UM DISPOSITIVO }

É possível 
fornecer múltiplas descrições para um dispositivo, sendo que elas serão 
testadas na ordem que forem definidas, até que seja encontrada uma adequada 
ao dispositivo. Descrições podem falhar por várias razões: \begin{dispitems}
\item [1.   ] porque a 
geometria não é adequada, 
\item [2.   ] porque não há nenhum disco na unidade, 
\item [3.  
 ] ou devido a outros problemas. 
\end{dispitems}


Múltiplas definições são úteis ao se usar 
dispositivos físicos que suportam somente uma geometria de disco. Exemplo: 
 

\begin{dispitems}
\item [    drive a: file="/dev/fd0H1440" 1.44m   ]   drive a: file="/dev/fd0H720" 
720k 

        
\end{dispitems}


Esta configuração indica que o mtools deve usar /dev/fd0H1440 
para discos de 1.44m (alta densidade) e /dev/fd0H720 para discos de 720k 
(dupla densidade). No Linux, esta funcionalidade não é realmente necessária, 
porque o dispositivo /dev/fd0 é capaz de administrar qualquer geometria. 


Pode-se ainda usar descrições múltiplas para acessar ambos os dispositivos 
físicos através de somente uma letra de dispositivo: 

      drive z: file="/dev/fd0" 


   drive z: file="/dev/fd1" 

        

Com esta descrição,  mdir z:  acessa 
o primeiro dispositivo físico que contiver um disco. Caso o primeiro esteja 
vazio, então o mtools testará o segundo. 

Ao usar arquivos de múltiplas 
configurações, as descrições de dispositivos nos arquivos informados sobrepõem-se 
às definições usadas anteriormente para os mesmos dispositivos. Para evitar 
isso, pode-se usar  drive+  ou  +drive  no lugar de   drive . A primeira 
adiciona uma descrição ao fim da lista (por exemplo: última tentativa), 
e a outra no início da lista. 

 \subsubsection{TABELAS DE TRADUÇÃO DE CONJUNTOS DE CARACTERES 
}   

Caso você  viva nos Estados Unidos, Europa Oriental ou Austrália você 
não precisa ler esta seção. 

 \subsubsection{POR QUE AS TABELAS DE TRADUÇÕES SÃO NECESSÁRIAS? 
}

O DOS utiliza um mapa de códigos de caracteres diferente do Unix. Caracteres 
com 7 bits têm o mesmo significado, porém os conjuntos de 8 bits são afetados. 
Para tornar as coisas um pouco mais confusas, há diversas tabelas de traduções 
dependendo do país onde se esteja. A aparência dos caracteres é definida 
usando-se páginas de código, que não são as mesmas em todos os países. Por 
exemplo, algumas páginas não contêm caracteres acentuados maiúsculos. Por 
outro lado, algumas páginas de códigos contêm caracteres que não existem 
no Unix, como certos símbolos desenhados ou consoantes acentuadas, usados 
em alguns países do leste europeu. Isso afeta em dois aspectos os nomes 
de arquivos: \begin{dispitems}
\item [Caracteres Maiúsculos    ] Em nomes curtos, somente caracteres 
maiúsculos são permitidos. Isso também vale para caracteres acentuados. 
Por exemplo, se uma página de código não permite caracteres acentuados 
maiúsculos, os acentuados minúsculos serão transformados em maiúsculos 
sem acentos. 
\item [Nomes Longos de Arquivos   ] A Microsoft finalmente começou a 
utilizar um mapa mais padronizado para nomes de arquivos longos. Eles utilizam 
Unicode, que é basicamente uma versão 32 bits do ASCII. Os primeiros 256 
caracteres são idênticos ao ASCII do Unix. A página de código afeta ainda 
a correspondência entre códigos usados em nomes longos e em nomes curtos. 

\end{dispitems}


O mtools considera os nomes de arquivos informados na linha de comando 
como tendo um mapeamento Unix, e converte os caracteres para obter nomes 
curtos. Por padrão, a página de código 850 é usada para mapeamento maiúsculo/minúsculo 
Suiço. Eu escolhi esta página de código, porque é um conjunto de caracteres 
com mais coincidências com os do Unix. Adicionalmente, esta página suporta 
a maioria dos caracteres em uso nos Estados Unidos, Austrália e Europa 
Ocidental. De qualquer forma, é possível escolher um mapeamento diferente. 
Há dois métodos: através da variável  country  ou explicitando as tabelas. 


 \subsubsection{CONFIGURAÇÃO USANDO A VARIÁVEL COUNTRY }

A variável  COUNTRY  é recomendada 
para pessoas que têm acesso a arquivos de sistemas MS-DOS e à documentação. 
Caso você não tenha acesso, sugerimos o uso de tabelas explícitas. 

Sintaxe: 


 COUNTRY=" \textit{País } [,[ \textit{página\_código } ],  \textit{arquivo\_país } ]"  

Isso 
indica ao mtools para usar a tabela de tradução Unix para DOS, que confere 
com a \textit{página\_código }, uma tabela de minúsculas para maiúsculas para o 
\textit{País } e para usar o \textit{arquivo\_país } para obter a tabela. O código country 
é comumente o prefixo telefônico do País. Referências podem ser encontradas 
na ajuda do DOS. Os parâmetros \textit{página\_código } e o \textit{arquivo país } são opcionais. 
Por favor não digite os colchetes, eles somente indicam que os parâmetros 
são opcionais. O arquivo \textit{arquivo\_país } é fornecido com o MS-DOS, e normalmente 
é chamado  COUNTRY.SYS, e armazenado no diretório  C:$\backslash$DOS. 
Em muitos casos ele não será necessário, e as tabelas mais comuns estão 
compiladas com o mtools. Então não se preocupe caso você use uma máquina 
que contenha somente o Unix e ela não tenha esse arquivo. 

Se a \textit{página\_código 
} não for fornecida, um padrão por País é usado. Caso o \textit{arquivo\_país } não 
seja informado, padrões compilados serão usados para a tabela de minúsculas 
para maiúsculas. Isso é útil para outros Unix, distintos do Linux, que 
necessitem do arquivo  COUNTRY.SYS disponível online. 

A tabela de 
tradução Unix para DOS não está contida no arquivo  COUNTRY.SYS, 
então o mtools sempre usa padrões compilados para isso. Portanto, somente 
algumas páginas de código são suportadas. Se a página de código de sua 
preferência está faltando, ou se você sabe o nome do arquivo no Windows 
95 que contém esta página, mande uma mensagem para Alain.Knaff@poboxes.com. 


A variável  COUNTRY  pode ser configurada usando-se os recursos de ambiente. 


 \subsubsection{CONFIGURAÇÃO USANDO TABELAS EXPLÍCITAS }

Tabelas de traduções podem ser 
descritas no arquivo de configuração. Duas tabelas são necessárias: primeiramente 
a de DOS para Unix e depois a tabela de minúsculas para maiúsculas. Uma 
tabela DOS para Unix começa com a palavra chave  tounix , seguida por 
dois pontos e 128 números hexadecimais. Uma tabela de minúsculas para maiúsculas 
começa com a palavra chave  fucase , seguida por dois pontos e 128 números 
hexadecimais. 

A tabela mostra somente as traduções para caracteres cujos 
códigos sejam maiores que 128, porque a tradução para códigos menores 
é muito simples. 

Exemplo:   

     tounix: 

    0xc7 0xfc 0xe9 0xe2 0xe4 0xe0 
0xe5 0xe7  

    0xea 0xeb 0xe8 0xef 0xee 0xec 0xc4 0xc5  

    0xc9 0xe6 
0xc6 0xf4 0xf6 0xf2 0xfb 0xf9  

    0xff 0xd6 0xdc 0xf8 0xa3 0xd8 0xd7 
0x5f  

    0xe1 0xed 0xf3 0xfa 0xf1 0xd1 0xaa 0xba  

    0xbf 0xae 0xac 
0xbd 0xbc 0xa1 0xab 0xbb  

    0x5f 0x5f 0x5f 0x5f 0x5f 0xc1 0xc2 0xc0 
 

    0xa9 0x5f 0x5f 0x5f 0x5f 0xa2 0xa5 0xac  

    0x5f 0x5f 0x5f 0x5f 
0x5f 0x5f 0xe3 0xc3  

    0x5f 0x5f 0x5f 0x5f 0x5f 0x5f 0x5f 0xa4  

    
0xf0 0xd0 0xc9 0xcb 0xc8 0x69 0xcd 0xce  

    0xcf 0x5f 0x5f 0x5f 0x5f 
0x7c 0x49 0x5f  

    0xd3 0xdf 0xd4 0xd2 0xf5 0xd5 0xb5 0xfe  

    0xde 
0xda 0xd9 0xfd 0xdd 0xde 0xaf 0xb4  

    0xad 0xb1 0x5f 0xbe 0xb6 0xa7 
0xf7 0xb8  

    0xb0 0xa8 0xb7 0xb9 0xb3 0xb2 0x5f 0x5f  

  

  fucase: 

  
  0x80 0x9a 0x90 0xb6 0x8e 0xb7 0x8f 0x80  

    0xd2 0xd3 0xd4 0xd8 0xd7 
0xde 0x8e 0x8f  

    0x90 0x92 0x92 0xe2 0x99 0xe3 0xea 0xeb  

    0x59 
0x99 0x9a 0x9d 0x9c 0x9d 0x9e 0x9f  

    0xb5 0xd6 0xe0 0xe9 0xa5 0xa5 
0xa6 0xa7  

    0xa8 0xa9 0xaa 0xab 0xac 0xad 0xae 0xaf  

    0xb0 0xb1 
0xb2 0xb3 0xb4 0xb5 0xb6 0xb7  

    0xb8 0xb9 0xba 0xbb 0xbc 0xbd 0xbe 
0xbf  

    0xc0 0xc1 0xc2 0xc3 0xc4 0xc5 0xc7 0xc7  

    0xc8 0xc9 0xca 
0xcb 0xcc 0xcd 0xce 0xcf  

    0xd1 0xd1 0xd2 0xd3 0xd4 0x49 0xd6 0xd7 
 

    0xd8 0xd9 0xda 0xdb 0xdc 0xdd 0xde 0xdf  

    0xe0 0xe1 0xe2 0xe3 
0xe5 0xe5 0xe6 0xe8  

    0xe8 0xe9 0xea 0xeb 0xed 0xed 0xee 0xef  

    
0xf0 0xf1 0xf2 0xf3 0xf4 0xf5 0xf6 0xf7  

    0xf8 0xf9 0xfa 0xfb 0xfc 
0xfd 0xfe 0xff  

        

A primeira tabela traduz códigos de caracteres 
DOS para caracteres Unix. Por exemplo, o caracter DOS de número 129. Este 
é um u com dois pontos (trema) em cima. Para traduzir para Unix, buscamos 
o caracter número 1 na primeira tabela (1 = 129 - 128), que é igual a 0xfc. 
(cuidado, a numeração começa em zero). A segunda tabela converte minúsculas 
em maiúsculas. O mesmo exemplo de u com trema aponta para o caracter 0x9a, 
que é um u maiúsculo com tremas no DOS. 

 \subsubsection{UNICODE - CARACTERES MAIORES QUE 
256 }Caso o nome de um arquivo do MS-DOS contenha um caracter Unicode maior 
que 256, eles serão traduzidos como sublinhado ( \_ ) ou para caracteres 
aproximados na aparência visual. Por exemplo, consoantes acentuadas são 
traduzidas em maiúsculas sem acentos. Esta tradução é usada no mdir e para 
os nomes de arquivos Unix gerados pelo mcopy. O Linux suporta Unicode, 
mas infelizmente poucas aplicações suportam estes códigos, o que dificilmente 
gera algum problema para o mtools. Mais importante ainda, o xterm não pode 
listar Unicode ainda. Caso haja demanda, pode-se incluir suporte ao Unicode 
nos nomes de arquivos Unix. 

\textbf{Cuidado: } ao apagar arquivos com o mtools, 
o símbolo de sublinhado confere com todos os caracteres que não podem 
ser representados no Unix. Seja cuidadoso com o mdel. 

 \subsubsection{LOCALIZAÇÃO DE ARQUIVOS 
DE CONFIGURAÇÃO }     

Os arquivos de configuração são utilizados na seguinte 
ordem: \begin{dispitems}
\item [1.   ] padrões pré-compilados 
\item [2.   ]  /usr/local/etc/mtools.conf
\item [3.  
 ]  /etc/mtools Esta é uma questão de compatibilidade com versões 
anteriores, e é utilizada somente se  mtools.conf não existir. 
\item [4.  
 ]  ~/.mtoolsrc. 
\item [5.   ]  \$MTOOLSRC (arquivo apontado para a variável 
de ambiente  MTOOLSRC. 
\end{dispitems}


Opções descritas em arquivos posteriores sobrepõem-se 
às descritas em arquivos anteriores. Dispositivos definidos em arquivos 
anteriores persistem se não forem redefinidos em arquivos posteriores. 
Por exemplo dispositivos A e B podem ser definidos em  /usr/local/etc/mtools.conf 
 e os dispositivos C e D podem ser definidos em  ~/.mtoolsrc.  De 
qualquer forma, se  ~/.mtoolsrc também definir A, esta nova descrição 
alterará a descrição de A em  /usr/local/etc/mtools.conf ao invés 
de adicionar-se. Caso se deseje adicionar uma nova descrição a um dispositivo 
já descrito em um arquivo anterior, pode-se usar as palavras chaves  +drive 
 ou  drive+ . 

 \subsubsection{COMPATIBILIDADE COM ARQUIVOS ANTIGOS DE CONFIGURAÇÃO } 
  

A sintaxe descrita aqui é nova e vale para a versão  mtools-3.0 . A sintaxe 
antiga ainda é suportada. Cada linha começando com letra sozinha é considerada 
uma descrição de dispositivo usando o antigo estilo. O estilo antigo e 
o novo podem ser misturados no mesmo arquivo de configuração, buscando 
tornar a atualização mais simples. O suporte ao formato antigo será descontinuado 
em algum ponto do futuro, então, de modo a desencorajar o seu uso, omiti 
sua descrição aqui. 

 \subsubsection{LISTA DE COMANDOS }
  

Esta seção descreve os comandos 
disponíveis no mtools e os parâmetros de linha de comando aceitos por 
cada um deles. Opções que são comuns a todos os comandos do mtools não 
estão descritos aqui. 

 \subsubsection{MATTRIB }      

O  Mattrib   é utilizado para mudar 
os indicadores de atributos de um arquivos MS-DOS, e obedece à seguinte 
sintaxe: 

 mattrib  [ -a$|$+a ] [ -h$|$+h ] [ -r$|$+r ] [ -s$|$+s ] \textit{arquivo\_MS-DOS 
} [ \textit{arquivos\_MS-DOS } ... ] 

Ele adiciona indicadores de atributos a um arquivo 
MS-DOS (com o operador ` + ') ou remove (através do operador ` - '). 

São 
suportados os seguintes bits de atributo: \begin{dispitems}
\item [ a    ] Bit de arquivamento. Usado 
por alguns programas de cópia de segurança para indicar um arquivo novo. 

\item [ r    ] Bit de permissão somente para leitura. Indica que é um arquivo somente 
para leitura. Arquivos com este bit configurado não podem ser apagados 
com o comando  DEL , nem modificados. 
\item [ s    ] Bit de sistema. Usado pelo 
MS-DOS para indicar um arquivo do sistema operacional. 
\item [ h    ] Bit de ocultamento. 
Usado para tornar o arquivo oculto para o comando  DIR . 
\end{dispitems}


O  Mattrib 
 suporta os seguintes indicadores na linha de comando: \begin{dispitems}
\item [ /    ] Recursivo. 
 Lista recursivamente os atributos dos arquivos nos subdiretórios.  
\item [ X 
   ] Conciso. Imprime os atributos sem espaços em branco. Se "/" não for usado, 
ou o \textit{arquivo\_MS-DOS } não contém um caracter de mascaramento, e há apenas 
um parâmetro de arquivo do MS-DOS na linha de comando, somente os atributos 
são mostrados, e não o nome do arquivo. Estas situações são convenientes 
para um script (roteiro). 
\end{dispitems}


 \subsubsection{MBADBLOCKS }

O comando  mbadblocks  é usado 
para pesquisar um disquete MS-DOS e marcar os blocos ruins não usados como 
não utilizáveis. Ele obedece a seguinte sintaxe: 

 mbadblocks  \textit{dispositivo 
} :      

Ele pesquisa um disquete MS-DOS, procurando por blocos defeituosos 
sem uso, os quais são marcados como tais na FAT. Este comando pode ser 
usado após o comando  mformat .  Não é indicado para recuperação de discos 
com muitos erros.  \subsubsection{PROBLEMAS }Este comando deveria (mas ainda não faz) tentar 
recuperar blocos defeituosos que estejam em uso através de leituras repetidas, 
e então marcá-los como defeituosos. 

 \subsubsection{MCD }      

O comando  mcd  é usado 
para mudar o diretório de trabalho do mtools em um disco MS-DOS. Utiliza 
a seguinte sintaxe: 

     mcd [\textit{diretório\_MS-DOS }] 

        

Sem argumentos, 
 mcd  indica o diretório de trabalho e o dispositivo atual. De outra 
forma, ele muda o dispositivo e o diretório de trabalho relativo para 
um sistema de arquivos MS-DOS. 

A variável de ambiente  MD  pode ser 
usada para localizar o arquivo onde o dispositivo e o diretório de trabalho 
atual estão armazenados. O padrão é  \$HOME/.mcwd.  Informações neste 
arquivos com data anterior a 6 horas do horário atual não serão consideradas. 


 Mcd  retorna 0 caso termine com sucesso e 1 em caso de falha. 

Diferentemente 
de versões MS-DOS de  cd ,  mcd  pode ser usado para mudanças para 
outro dispositivo. É aconselhável remover arquivos antigos  .mcwd 
 na saída do sistema. 

 \subsubsection{MCOPY }       

O comando  mcopy  é usado para copiar 
arquivos MS-DOS de e para o Unix. Usa a seguinte sintaxe: 

     mcopy [ 
-tnvmoOsSrRA] \textit{arquivo\_origem } \textit{arquivo\_destino } 

  mcopy [ -tnvmoOsSrRA] 
\textit{arquivo\_origem } [ \textit{arquivos\_origem }... ] \textit{diretório\_destino } 

  mcopy 
[ -tnvm] \textit{arquivo\_origem\_MS-DOS } 

        

Ele copia o arquivo especificado 
para o destino especificado, ou, copia múltiplos arquivos para o diretório 
especificado. A origem e o destino podem ser arquivos do MS-DOS ou do Unix. 


O uso de uma letra de dispositivo nos arquivos MS-DOS, por exemplo 'a:', 
determinam a direção da transferência. Uma designação não informada implica 
em um arquivo Unix cujo caminho começa no diretório atual. Caso uma letra 
de dispositivo seja especificada com nenhum arquivo informado (por exemplo 
 mcopy a: . ), todos os arquivos daquele dispositivo serão copiados. 

Caso 
somente um único parâmetro de origem MS-DOS seja informado (por exemplo 
 "mcopy a:conec.exe"), o diretório atual (` . ') é assumido como destino. 


Um nome de arquivo igual a ` - ' significa a entrada ou saída padrão, dependendo 
de sua posição na linha de comando. 

 Mcopy  aceita as seguintes opções 
na linha de comando:  \begin{dispitems}
\item [ b    ] Modo batch. Otimizada para grandes cópias 
recursivas, porém é menos segura se uma colisão acontece durante a cópia. 

\item [ /    ] Cópia recursiva.  Copia também os diretórios e seus conteúdos. 
\item [ p 
   ] Preserva os atributos dos arquivos copiados. 
\item [ Q    ] Ao copiar múltiplos 
arquivos, sinaliza assim que alguma cópia falhar (por exemplo devido à 
falta de espaço de armazenamento no disco de destino). 
\item [ t    ] Transferência 
de arquivos texto. O  mcopy  converte retorno de linha e nova linha para 
somente nova linha. 
\item [ n    ] Não solicita confirmação ao regravar arquivos 
Unix. O  mcopy  não avisa ao usuário quando estiver regravando um arquivo 
Unix existente. Para inibir o aviso para arquivos DOS, deve-se usar  -o 
. 
\item [ m    ] Preserva a data de modificação do arquivo. Caso o arquivo de destino 
já exista, e a opção  -n  é afetada, pois o  mcopy  perguntará se deve 
sobrescrever o arquivo ou renomeá-lo para um novo arquivo. 
\end{dispitems}


 \subsubsection{PROBLEMAS }
Diferentemente 
do MS-DOS, o operador '+' (anexar) não é suportado. Há porém, uma forma de 
produzir o mesmo efeito:   mtype a:arq1 a:arq2 a:arq3 $>$arq\_unix 

 mtype 
a:arq1 a:arq2 a:arq3 $|$ mcopy - a:arq\_dos 

        

 \subsubsection{MDEL }    

O comando   mdel 
 é usado para apagar arquivos MS-DOS. Sua sintaxe é: 

  mdel  [ -v ] \textit{arquivo\_MS-DOS 
} [ \textit{arquivos\_MS-DOS } ...  ]  

Ele remove arquivos de sistemas de arquivos MS-DOS. 


É solicitada uma confirmação antes de remover um arquivo com permissões 
somente de leitura.  \subsubsection{MDELTREE }     

O comando  mdeltree  é usado para 
apagar diretórios e arquivos MS-DOS. Sua sintaxe é: 

  mdeltree  [ -v 
] \textit{diretório\_MS-DOS } [\textit{diretórios\_MS-DOS }...]    

Ele remove um diretório e todos 
os arquivos e subdiretórios que ele contenha em um sistema de arquivos 
MS-DOS. Um erro ocorre caso o diretório a ser removido não exista.  \subsubsection{MDIR 
}    

O comando  mdir  é usado para listar um diretório MS-DOS. Sua sintaxe 
é: 

 mdir  [ -w ] \textit{diretório\_MS-DOS } 

 mdir  [ -f ] [ -w ] [ -a ] 
\textit{arquivo\_MS-DOS } [ \textit{arquivos\_MS-DOS }...]  

Ele lista o conteúdo de um diretório 
MS-DOS. 

São suportadas as seguintes opções nas linhas de comando:  \begin{dispitems}
\item [ / 
   ] Recusiva, similar ao -s no DOS. 
\item [ w    ] Opção ampla. Com esta opção, o  
mdir  lista os nomes de arquivos através da página sem mostrar os tamanhos 
e datas de criação. 
\item [ a    ] Lista também os arquivos ocultos. 
\item [ f    ] Rápido. 
Não tenta descobrir o espaço livre. Em discos grandes, descobrir o espaço 
livre em disco pode tomar um tempo considerável, uma vez que toda a FAT 
é lida e pesquisada. O indicador  -f  não executa este passo. Este indicador 
não é necessário para sistemas de arquivos com FAT32, os quais armazenam 
os tamanhos explicitamente. 
\end{dispitems}


Um erro ocorrerá se um componente do caminho 
não for um diretório. 

 \subsubsection{MDU }     

O  Mdu  é usado para listar o espaço 
ocupado por um diretório, seus subdiretórios e arquivos. É similar ao comando 
 du  no Unix. A unidade usada é um dispositivo. Use o comando minfo para 
descobrir o tamanho do dispositivo.  

 mdu  [ -a ] [ \textit{arquivos\_MS-DOS } 
... ] \begin{dispitems}
\item [ a    ] Todos arquivos. Lista também o espaço ocupado por arquivos individuais. 

\item [ s    ] Lista apenas o espaço total, não informa os detalhes de cada subdiretório. 

\end{dispitems}


 \subsubsection{MFORMAT }    

O comando  mformat  é usado para adicionar um sistema de 
arquivos MS-DOS para um disquete com formatação de baixo nível. Sua sintaxe 
é: 

  mformat  [ -t  \textit{cilindros }] [ -h  \textit{cabeças }] [ -s  \textit{setores }] [ 
-l  \textit{nome\_do\_volume }] [ -F ] [ -I  \textit{versão\_do\_sa }] [ -S  \textit{código\_do\_tamanho 
}] [ -2  \textit{setores\_na\_trilha\_0 }] [ -M  \textit{tamanho\_do\_setor\_do\_programa }] [ 
-a ] [ -X ] [ -C ] [ -H  \textit{setores\_ocultos }] [ -r  \textit{setores\_raiz }] [ 
-B  \textit{setor\_de\_inicialização }] [ -k ] \textit{unidade: }    

Este comando adiciona 
um sistema de arquivos MS-DOS mínimo (setor de inicialização, FAT e diretório 
raiz) num disquete que já foi formatado em baixo nível pelo Unix.  

As seguintes 
opções são suportadas: (S, 2, 1 e M podem ser usadas caso a cópia do mtools 
utilizada tenha sido compilada sem a opção USE\_2M ).  \begin{dispitems}
\item [ t    ] O número de 
cilindros. 
\item [ h    ] O número de cabeças (lados). 
\item [ s    ] O número de setores 
por trilha. Caso a opção 2M seja informada, um setor de 512 bytes é usado 
em trilhas genéricas (menos na cabeça 0 trilha 0). Caso a opção 2M não 
seja informada, fornece o número de setores físicos por trilha (que devem 
ser maiores que 512 bytes). 
\item [ l    ] Uma etiqueta opcional para o volume. 

\item [ S    ] O código de tamanho, ou seja o tamanho do setor é igual a 2 $\char94{}$ (código 
de tamanho + 7). 
\item [ 2    ] Formato 2M. O parâmetro para esta opção descreve 
o número de setores na trilha zero, cabeça zero. Esta opção é recomendada 
para setores maiores que o normal. 
\item [ 1    ] Não utiliza o formato 2M, mesmo 
que a geometria atual do disco seja 2M. 
\item [ M    ] Tamanho do setor. Este parâmetro 
descreve o tamanho do setor em bytes usado pelo sistema de arquivos MS-DOS. 
Por padrão é o tamanho do setor físico. 
\item [ a    ] Caso esta opção seja informada, 
um número de série no estilo Atari é gerado. O Atari guarda o número de 
série na etiqueta OEM. 
\item [ X    ] Formata o disco como um XDF. Veja a seção 
XDF para maiores detalhes. O disco tem inicialmente que ser formatado com 
o utilitário xdfcopy do pacote fdutils. 
\item [ C    ] Cria um arquivo imagem de 
disco para instalar o sistema de arquivos MS-DOS. Obviamente isso não tem 
aplicação em dispositivos físicos como  disquetes ou partições de disco. 

\item [ H    ] Número de setores escondidos. Este parâmetro é útil para formatar 
partições de disco rígidos, que não estão alinhadas nos limites dos cilindros 
(ou seja a primeira cabeça na primeira trilha não pertencem à partição, 
mas contém uma tabela de partições). Neste caso o número de setores escondidos 
é em geral o número de setores por cilindro. Esta facilidade não está completamente 
testada. 
\item [ n    ] Número de série. 
\item [ F    ] Formata a partição como FAT32 (experimental). 

\item [ I    ] Configura a identificação da versão\_do\_sa (versão do sistema de 
arquivos) ao formatar um dispositivo com FAT32. Para verificar a identificação, 
execute minfo em um dispositivo com uma FAT32 existente, e mande-me um 
email para que eu possa incluir isto nas versões futuras do Mtools. 
\item [ c 
   ] Configura o tamanho de dispositivos (por setor). Caso o tamanho dos dispositivos 
possa gerar uma FAT maior que o seu número de bits, o mtools automaticamente 
incrementa o número de  dispositivos, até que a FAT seja pequena o suficiente. 

\item [ r    ] Configura o tamanho do diretório raiz (por setores). Somente aplicável 
a FATs de 12 e 16 bits. 
\item [ B    ] Usa o setor de inicialização arquivado em 
um arquivo ou dispositivo informado, ao invés de usar o seu próprio. Somente 
o campo de geometria é atualizado para conferir com os parâmetros do disco 
de  destino. 
\item [ k    ] Mantém o setor de inicialização existente tanto quanto 
for possível. Somente o campo geometria é atualizado para conferir com 
os parâmetros do disco de destino. 
\end{dispitems}


Para formatar um disquete com uma densidade 
diferente da padrão, deve-se fornecer (no mínimo) os parâmetros de linha 
de comando que informam as diferenças em relação ao padrão. 

O  mformat 
 retorna 0 quando finalizado com sucesso, e 1 quando houver alguma falha. 


Este comando não grava informações de blocos ruins na FAT. Para tanto deve-se 
usar o comando  mkmanifest .  \subsubsection{MKMANIFEST }  

O comando  mkmanifest  é 
usado para criar um ambiente de trabalho (lista de empacotamento) para 
restaurar nomes de arquivos Unix. Sua sintaxe é:  

 mkmanifest  [ \textit{arquivos 
} ] 

Ele cria um ambiente de trabalho que auxilia na restauração de nomes 
de arquivos Unix que foram alterados pelas restrições de nomes do MS-DOS, 
cujas restrições são: nomes limitados a 8 caracteres, extensões com 3 
caracteres, somente maiúsculas, sem nomes de dispositivos, e sem caracteres 
ilegais.  

Esse comando é compatível com os métodos usados em   pcomm, 
arc,  e  mtools  para mudar nomes de arquivos válidos no Unix,  adequando-os 
às limitações do MS-DOS. Este comando somente é útil se o sistema de destino 
que lerá o disquete suportar nomes longos VFAT.  

 \subsubsection{EXEMPLO }Caso se deseje 
copiar os seguintes arquivos Unix para um disquete MS-DOS (usando o comando 
 mcopy ). 

      very\_long\_name 

   2.many.dots 

   illegal: 

   good.c 

   prn.dev 


   Capital 

        

 Mcopy  converte os nomes para: 

      very\_lon 

  
 2xmany.dot 

   illegalx 

   good.c 

   xprn.dev 

   capital 

        

O comando: 
    mkmanifest very\_long\_name 2.many.dots illegal: good.c prn.dev Capital 
$>$manifest 

       pode produzir o seguinte resultado:       mv very\_lon 
very\_long\_name 

   mv 2xmany.dot 2.many.dots 

   mv illegalx illegal: 

   mv 
xprn.dev prn.dev 

   mv capital Capital 

        

Note que "good.c" não requer 
qualquer conversão, então ele não é listado na saída.  

Supondo-se que estes 
arquivos foram copiados de um disquete para outro sistema Unix, e se deseja 
retornar os arquivos para o seu formato original. Caso o arquivo "manifest" 
(a saída capturada acima) fosse enviado com os arquivos, ele poderia ser 
usado para converter os nomes de arquivos.  

 \subsubsection{PROBLEMAS }

Os nomes curtos 
gerados por  mkmanifest  seguem as convenções antigas (do Mtools -2.0.7) 
e não as do Windows 95 e Mtools-3.0. 

 \subsubsection{MINFO }   

O comando  minfo  lista 
os parâmetros de um sistema de arquivos MS-DOS, tais como número de setores, 
cabeças e cilindros. Imprime ainda uma linha com o comando mformat, a qual 
pode ser usada para criar um sistema de arquivos DOS similar em outra 
mídia. Esta funcionalidade porém não funciona com mídias 2m ou Xdf, e com 
sistema de arquivos DOS 1.0  

  minfo  \textit{dispositivo }:    

Este comando suporta 
a seguinte opção:  \begin{dispitems}
\item [ v    ] Imprime uma listagem em hexadecimal do setor 
de inicialização, em adição às demais informações.  
\end{dispitems}


 \subsubsection{MLABEL }   

O comando 
 mlabel  adiciona uma etiqueta de volume ao disco. Sua sintaxe é:  

  
mlabel  [ -vcs ] \textit{dispositivo }:[\textit{novo\_nome }]    

Ele lista a identificação 
do volume atual, caso esteja presente. Caso \textit{novo\_nome } não seja informado, 
e nem  c  ou    s  estejam configuradas, será solicitado ao usuário 
a nova identificação do volume. Para apagar a identificação atual, basta 
pressionar Enter quando for solicitada a informação.  

Deve-se ter cuidado 
ao se criar uma identificação de volume MS-DOS. Caso uma etiqueta inválida 
seja informada, o  mlabel  efetuará a alteração (e a nova etiqueta será 
apresentada caso o modo ativo de mensagens esteja configurado). O comando 
retorna 0 em caso de sucesso e 1 em caso de falha.  

São suportadas as seguintes 
opções:  \begin{dispitems}
\item [ c    ] Apaga uma identificação existente, sem solicitar confirmação 
ao usuário.  
\item [ s    ] Lista a identificação existente, sem solicitar confirmação 
ao usuário.  
\end{dispitems}


 \subsubsection{MMD }     

O comando  mmd  é usado para a criação de um subdiretório 
MS-DOS. Sua sintaxe é:  

 mmd  [ -voOsSrRA ] \textit{diretório\_MS-DOS } [ \textit{diretórios\_MS-DOS 
}... ] 

Este comando cria um novo diretório em um sistema de arquivos MS-DOS. 
Caso o diretório já exista ocorrerá um erro.  

 \subsubsection{MMOUNT }    

O comando  mmount 
 é usado para montar um disco MS-DOS. Está disponível somente no Linux, 
e somente tem utilidade se o kernel do SO permitir a configuração da geometria 
de disco. Sua sintaxe é:  

 mmount  \textit{dispositivo\_MS-DOS } [\textit{argumentos\_do\_mount 
}] 



 Esse comando lê o setor de inicialização de um disco MS-DOS, configura 
a geometria do disco MS-DOS e finalmente monta o dispositivo, passando 
os  argumentos\_do\_mount  para o comando  mount.   Caso nenhum argumento 
seja especificado, o nome do dispositivo é usado. Se o disco estiver protegido 
contra gravação, é  montado automaticamente com permissões de somente 
leitura.  

 \subsubsection{MMOVE }   

O comando  mmove  é usado para mover ou renomear 
um arquivo ou subdiretório MS-DOS existente. 

  mmove  [ -voOsSrRA ] \textit{arquivo\_origem 
} \textit{arquivo\_destino }  mmove  [ -voOsSrRA ] \textit{arquivo\_origem } [ \textit{arquivo\_origem 
}... ] \textit{diretório\_destino }    Esse comando move ou renomea um arquivo ou diretório 
MS-DOS existente. Diferentemente da versão MS-DOS de   MOVE , ele é capaz 
de mover diretórios. 

 \subsubsection{MPARTITION }    

O comando   mpartition   é usado 
para criar sistemas de arquivos MS-DOS como partições. Este comando objetiva 
ser usado em sistemas não Linux, isto é, em sistemas onde não estejam 
disponíveis fdisk e acesso fácil a dispositivos SCSI. Este comando funciona 
somente em dispositivos onde a tabela de partições está configurada.  

 
 mpartition   -p  \textit{dispositivo },  mpartition   -r  \textit{dispositivo }, 
 mpartition   -I  \textit{dispositivo },  mpartition   -a  \textit{dispositivo }, 
 mpartition   -d  \textit{dispositivo },  mpartition   -c  [ -s  \textit{setores 
}] [ -h  \textit{cabeças }], [ -t  \textit{cilindros }] [ -v  [ -T  \textit{tipo }] [ -b  e \textit{começo 
}] [ -l  tamanho] [ -f ]     

São suportadas as seguintes opções: \begin{dispitems}
\item [ p 
   ] Lista uma linha de comando para recriar a partição no dispositivo. Nada 
é apresentado se a partição do dispositivo não for definida, ou alguma 
inconsistência for detectada. Caso o modo de mensagens ativa ( -v ) esteja 
configurado, imprime a tabela de partições.  
\item [ r    ] Remove a partição descrita 
em \textit{dispositivo }. 
\item [ I    ] Inicializa a tabela de partições e remove todas 
as partições.  
\item [ c    ] Cria a partição descrita em \textit{dispositivo }. 
\item [ a    ] Ativa 
a partição, ou seja, torna-a inicializável. Somente uma partição pode ser 
inicializável de cada vez.  
\item [ d    ] Desativa a partição, ou seja, torna-a 
não inicializável.  
\end{dispitems}


Caso nenhuma opção seja informada, as configurações 
atuais são listadas.  

Para a criação de partições, as seguintes opções 
estão disponíveis:  \begin{dispitems}
\item [ s \textit{setores }    ] Número de setores por trilha da partição 
(a qual é também o número de setores por trilha de todo o dispositivo). 
 
\item [ h \textit{cabeças }    ] O número de cabeças da partição (a qual é também o número 
de cabeças para todo o disco). Por padrão, a informação de geometria (número 
de setores e cabeças) é obtida através de outras entradas existentes na 
tabela de partições ou deduzida a partir do tamanho.  
\item [ t \textit{cilindros } 
   ] O número de cilindros da partição (e não o número de cilindros de todo 
o dispositivo).  
\item [ b \textit{começo }    ] Deslocamento inicial da partição, em setores. 
Caso não seja especificado, mpartition iniciará a partição no início do 
disco (partição número 1) ou imediatamente após o final da partição anterior. 
 
\item [ l \textit{tamanho }    ] O tamanho da partição, em setores. Caso o final não seja 
dado, mpartition deduz o tamanho a partir dos setores, cabeças e cilindros. 
Caso estes não sejam fornecidos, ele dará à partição o maior tamanho possível, 
considerando o tamanho do disco e o início da próxima partição.  
\end{dispitems}


As seguintes 
opções estão disponíveis para todas as operações que modifiquem  a tabela 
de partições:  \begin{dispitems}
\item [ f    ] Normalmente, antes de gravar qualquer alteração 
na partição, mpartition executa certas checagens de consistência, como 
sobreposição e alinhamento adequado das partições. Caso alguma destas checagens 
falhar, a tabela de partições não será alterada. A opção  -f  permite 
que estas checagens sejam evitadas.  
\end{dispitems}


As seguintes opções estão disponíveis 
para todas as operações:  \begin{dispitems}
\item [ v    ] Junto com  -p , lista a posição atual 
da tabela de partições (sem qualquer alteração), ou apresenta a posição 
após a execução de alguma alteração.  
\item [ vv    ] Caso o modo de mensagens 
ativas seja ativado duas vezes, mpartition apresentará uma imagem em formato 
hexadecimal da tabela de partições, durante o processo de leitura e gravação 
da tabela.  
\end{dispitems}


 \subsubsection{MRD }      

O comando  mrd  é usado para remover um subdiretório 
MS-DOS. Sua sintaxe é:  

  mrd  [ -v ] \textit{diretório\_MS-DOS } [ \textit{diretórios\_MS-DOS 
}... ]    

Ele remove um diretório de um sistema de arquivos MS-DOS. Um erro 
ocorrerá caso o diretório informado não exista ou esteja vazio.  

 \subsubsection{MREN 
}   

O comando  mren  é usado para renomear ou mover um arquivo ou subdiretório 
MS-DOS existente. Sua sintaxe é:  

  mren  [ -voOsSrRA ] \textit{arquivo\_origem 
} \textit{arquivo\_destino }    

Ele renomeia um arquivo em um sistema de arquivos 
MS-DOS.  

No modo de mensagens ativas, o  Mren  lista o novo nome do arquivo, 
caso o nome fornecido seja inválido.  

Caso a primeira sintaxe seja usada 
(somente um arquivo fonte), e o nome de destino não contenha quaisquer 
barras ou vírgulas, o arquivo (ou subdiretório) é renomeado no mesmo diretório, 
ao invés de ser movido para o diretório atual, o diretório definido por 
 mcd  , assim como poderia ser no uso do  mmove . Diferentemente da 
versão MS-DOS do comando  REN ,  mren  pode ser usado para renomear 
diretórios.  

 \subsubsection{MSHOWFAT }   

O comando  mshowfat  é usado para mostrar a 
entradas de FAT para um arquivo. Sua sintaxe é: 

  \$ mshowfat arquivos 
  

 

 \subsubsection{MTOOLSTEST }    

O comando  mtoolstest  é usado para testar os arquivos 
de configuração dos arquivos do mtools. Para acioná-lo basta digitar  mtoolstest 
 sem qualquer argumento. O  mtoolstest  lê os arquivos de configuração 
do mtools, e lista as configurações na saída padrão. A saída pode ser usada 
como um arquivo de configuração por si só (apesar de provavelmente querer-se 
retirar as cláusulas redundantes). Pode se utilizar este programa para 
converter antigos arquivos de configuração para formatos atualizados.  


 \subsubsection{MTYPE }

O comando  mtype  é usado para listar o conteúdo de arquivos 
MS-DOS. Sua sintaxe é:  

  mtype  [ -ts ] \textit{arquivo\_MS-DOS } [ \textit{arquivos\_MS-DOS 
}... ]    

Os arquivos do MS-DOS são listados na tela.  

Adicionalmente às opções 
padrão, o  Mtype  permite as seguintes opções na linha de comando:  
\begin{dispitems}
\item [ t    ] Visualização de arquivo texto. O  Mtype  converte retornos de 
linha e alimentação de linha em alimentação de linha somente.  
\item [ s    ] É 
retirado o bit de mais alta ordem dos dados.  
\end{dispitems}


Esse comando pode ser usado 
para estabelecer o dispositivo e o diretório atual de trabalho (relativo 
ao MS-DOS). De outra forma, o padrão será:   A:/ . 

O  mtype  retorna 
0 ao finalizar com sucesso , 1 em algum erro fatal e 2 em caso de falha 
parcial.  

Diferentemente da versão MS-DOS de  TYPE ,  mtype  permite 
múltiplos argumentos.  

 \subsubsection{MZIP }         

O comando  mzip  é usado para permitir 
comandos específicos em discos ZIP  em sistemas Solaris ou HPUX. Sua sintaxe 
é: 

  mzip  [ -epqrwx ]    

Esse comando permite as seguintes opções 
na linha de comando: \begin{dispitems}
\item [ e    ] Ejeta o disco.  
\item [ f    ] Força a ejeção mesmo 
que o disco esteja montado (deve ser informado em conjunto com  -e ). 

\item [ r    ] Protege o disco contra gravações.  
\item [ w    ] Remove a proteção à gravação. 
 
\item [ p    ] Senha de proteção à gravação.  
\item [ x    ] Senha de proteção.  
\item [ u   
 ] Remove a proteção temporariamente até que o disco seja ejetado. O disco 
começa com permissão para escrita, e quando for ejetado volta ao estado 
anterior. 
\item [ q    ] Solicita informações.  
\end{dispitems}


Para remover a senha, configurada 
em um dos modos sem senhas   -r  ou  -w : o mzip solicitará a senha 
e após permitirá o acesso ao disco. Caso a senha tenha sido esquecida, 
a saída será uma formatação de baixo nível do disco (usando a configuração 
do BIOS do adaptador SCSI).  

As ferramentas Zip comercializadas com o dispositivo 
também disponibilizam funções de proteção através de senhas. No MS-DOS ou 
no MAC, esta senha é automaticamente removida uma vez que o Ziptools seja 
instalado. A partir de vários artigos postados na Usenet, aprendi que a 
senha para o disco de ferramentas é   APlaceForYourStuff  . O Mzip conhece 
esta senha e tenta como primeira alternativa, através do comando  mzip 
-w z: , o qual destrava o disco de ferramentas, e formata em um formato 
especial, utilizável tanto em PCs como em Macs. No PC, os arquivos do Mac 
aparecem como arquivos ocultos chamados \& partishn.mac.  Caso eles 
sejam apagados pode-se obter aproximadamente 50 Mb de espaço utilizado 
pelo sistema de arquivos Mac.  

 \subsubsection{XCOPY }   

O programa  xcopy  é usado para 
se copiar recursivamente um diretório para outro. Sua sintaxe é: 

  xcopy 
 \textit{diretório\_origem } \textit{diretório\_destino }    

Caso o diretório de destino não 
exista, ele é criado. Caso ele exista, os arquivos do diretório de origem 
são copiados diretamente nele, e nenhum subdiretório chamado \textit{diretório\_origem 
} é criado, como em  cp -rf . 

 \subsubsection{PROBLEMAS }

Este comando é bastante problemático. 
Uma implementação mais adequada deve provocar um novo trabalho de partes 
significativas do mtools, mas isso não é possível no momento. O maior problema 
desta implementação é que ela é ineficiente em algumas arquiteturas (diversas 
chamadas sucessivas ao mtools, o que pode superlotar o cache do programa). 
 

 \subsubsection{INDICADORES DE COMPILAÇÃO }
    

Para compilar o mtools, inicialmente deve 
ser acionado  ./configure  antes de  make . Em adição ao padrão  de 
indicadores  autoconfigure , há dois indicadores específicos para arquiteturas 
distintas:  \begin{dispitems}
\item [ ./configure --enable-xdf    ]  

 
\item [  ./configure --disable-xdf   ] Habilita 
o suporte a discos XDF. Por padrão estará ativo. Veja a seção XDF para maiores 
detalhes.  
\item [ ./configure --enable-vold    ]  

 
\item [  ./configure --disable-vold   ] Habilita 
o suporte a vold em plataformas Solaris. Quando utilizado em conjunto com 
vold, o mtools pode usar diferentes arquivos de dispositivos para o acesso 
direto.  
\item [ ./configure --enable-new-vold    ]  

 
\item [  ./configure --disable-new-vold   
] Habilita o novo suporte a vold para Solaris. Esta opção deverá trabalhar 
mais tranqüilamente do que o antigo suporte.  
\end{dispitems}


 \subsubsection{VEJA TAMBÉM }
\textbf{mattrib,} \textbf{mbadblocks,} 
\textbf{mcd,} \textbf{mcopy,} \textbf{mdel,} \textbf{mdeltree,} \textbf{mdir,} \textbf{mdu,} \textbf{mformat,} \textbf{mkmanifest,} \textbf{mlabel,} \textbf{mmd,} 
\textbf{mmount,} \textbf{mmove,} \textbf{mrd,} \textbf{mread,} \textbf{mren,} \textbf{mtoolstest,} \textbf{mtype} e \textbf{mwrite.}  
