Mostrando postagens classificadas por relevância para a consulta macOS. Ordenar por data Mostrar todas as postagens
Mostrando postagens classificadas por relevância para a consulta macOS. Ordenar por data Mostrar todas as postagens

ZSH se tornará o terminal de comandos padrão do MacOS X

ZSH como terminal de comandos padrão do MacOS X
ZSH como terminal de comandos padrão do MacOS X
 De acordo com informações publicadas no dia 03 Junho de 2019 pela própria Apple em seu site oficial, o ZSH passará a ser  terminal de comandos padrão do MacOS X a partir da versão Catalina que ainda está em beta e disponível somente as pessoas que fazem parte do grupo de desenvolvedores da Apple.
curso-linux-da-migração-a-administração-do-sistema-operacional
CLIQUE AQUI, VENHA APRENDER LINUX COMIGO E TORNE-SE UM VERDADEIRO PROFISSIONAL.
 Durante um bom tempo, o terminal de comandos utilizado no MacOS X foi o Bash, o mesmo utilizado por padrão em quase todas as distribuições Linux. Não somente o Bash mas outras ferramentas também eram adotadas fortemente pela Apple como o GCC e outras ferramentas Free Software e de código aberto (a Apple mesmo mantem sua parte Open Source com as suas contribuições).

 Com a atitude tomada pela FSF de processar ao menos 12 empresas por ano e sendo uma delas a Cisco (na qual a Apple acabou presenciando tudo), a Apple começou a tomar cuidado e a se prevenir de futuros problemas sendo ela a pioneira a financiar o LLVM. Informações tais como essa já foram relatadas em outros vídeos no meu canal; um desses pode ser conferido no Muito além do GNU - toybox.


 Tanto o ZSH quanto o Bash já vem disponível no Mac OS (sendo o Bash o padrão de uso até a versão Mojave). Mas agora é anunciado que o próximo lançamento do MacOS terá como padrão o terminal de comandos ZSH. No mesmo artigo é explicado que é possível alterar entre terminais nas versões anteriores do sistema operacional.
ZSH no Mojave
ZSH no Mojave
 É; o ZSH ganhando cada vez mais espaço. Eu venho apresentando outras ferramentas que não são do GNU e suas características; elas estão presentes no Linux há longa data e ficaram ofuscadas entre muitos usuários e profissionais de linux simplesmente pela paixão sobre software livre.

 Se você realmente quiser ser um profissional de Linux, o meu concelho a você é focar em ferramentas de forma imparcial e profissional; essa vai ser a sua chave para o sucesso. Agora, se você quiser defender uma paixão, aí já outra história. E para terminar este artigo de forma que possa conhecer mais sobre o ZSH, deixo aqui o vídeo que faz parte da série Muito além do GNU. Sucesso a todos:

Ampere nas envolvidas com Steam

Ampere nas envolvidas com Steam

Ampere nas envolvidas com Steam


 Recentemente postei que a Oracle está migrando de X86 para ARM da empresa Ampere. Devido a sua eficiência energética esses processadores permitirão a Oracle expandir seu data center e poder concorre com outras empresas em vários outros serviços com a sua novem. Não somente a eficiência energética, mas os processadores da Ampere permitem também melhor desempenho.


 Mas hoje estamos aqui para falar da empresa Ampere que esta trabalhando para que Steam Linux seja compatível com seus processadores de 192 núcleos. Sim, há mais ou menos um mês a Ampere publicou em seu Github o repositório Steam-on-Ampere. Não se trata de código fonte e sim de um how to explicando como executar Steam em seus processadores através do Box86/Box64

 Bom, neste exato momento você deve estar pensando que então trata-se de emulação e eu vou ter que dizer que você está certo. O Box86 é um emulador que permite rodar aplicações x86 em processadores ARM. Nesse momento deve existir a critica na cabeça de todos, o que é natural, mas o problema está mais vinculado a ferramenta Steam do que aos processadores da Ampere. Ao longo do tempo a ferramenta Steam foi acumulando muito código legado para se manter funcionando; é necessário por exemplo instalar suporte a arquitetura i386 (32 bits) na sua distribuição mesmo ela sendo x86 de 64 bits. No caso dos processadores da Ampere ocorrem a problema similar, só que em arquitetura (o que pode ocorrer no steam sendo executado em qualquer ARM. Nesta documentação, a Ampere exibe prints que evidenciam que é necessário instalar as duas dependências mencionadas neste artigo.




 Basicamente é o mesmo processo utilizado pela Apple chamado carbonização que permitiu o MacOS X desenvolvido para X86 executar suas aplicações na arquitetura PowerPC e hoje de x86 para o Apple Silicon que pode ser conferido neste meu vídeo quando eu digito o comando file no kernel do MacOS X e é possível constar o suporte das arquiteturas X86 e PowerPC. Por este motivo que conseguir executar o MacOS Leopard na arquitetura PowerPC sendo que o Leopard foi projetado para Macs da arquitetura X86.


 Outra característica do processo de carbonização é utilizar a ferramenta Rosetta, que nada mais é do que simplesmente emulação. Então, fazer adoção da mesma estratégia que Apple é algo que pode levar a Valve a melhorar sua ferramenta ao longo do tempo (assim torcemos). Há um bom tempo um desenvolvedor do Clear Linux vem trabalhando para porte Steam para 64, mas já se passaram ao menos sete anos e ainda nada de steam 64 bits para nenhum sistema operacional.


 Os testes foram feitos no Ubuntu como pode ser vista nas imagens e é recomendado instalar o box86 dos repositórios de Itai Nelken. Para o Box64 devem ser instalados os repositórios de um cara chamado Ryan Fortner. Depois, é só executar o steam, selecionar o proton e vida que segue.
GitHub da AmpereComputing: Steam-on-Ampere

airyxOS: Um clone do macOS?

airyxOS: Um clone do macOS?

airyxOS: Um clone do macOS?

 Na Segunda Feira eu fiz uma live tratando de um suposto clone do MacOSX que recebeu o nome de airyxOS. Então nesta live tratamos o que esse sistema operacional realmente é, sua proposta, seu design como modelo de kernel, sistemas de arquivos que possui suporte, init system utilizado pelo sistema, GUI, como rodará as aplicações do MacOSX, arquitecturas que possui suporte, se está funcionando e muito mais. Valeu a pena fazer esta live.




NTFSv3 para Linux

NTFSv3 para Linux
NTFSv3 para Linux
  
    Noticiei o lançamento do kernel 5.14 e, além de não ter visto adicionarem suporte as novas plataformas da AMD, outro recurso que tive noticias que não tive noticias de sua adoção é o sistema de arquivos NTFS3. Em Setembro de 2020 Konstantin Komarov da Paragon Software anunciou que estaria  trabalhando no desenvolvimento do sistema de arquivos NTFSv3 para Linux. Não é nenhuma novidade que o Linux já possui suporte a NTFS (algo que já via na época que utilizava o Kurumin (não me lembro qual versão) e o Fedora 6  facilmente). Tanto é que eu já fiz benchmarks duas vezes; uma vez em 2015 aqui no blog e outro no meu canal em 2018 (pretendo fazer mais no futuro, mas por ora não).


    O que se nota no NTFS em ambos os benchmarks é uma diferença enorme de sua melhoria. Mas por que a Paragon Software decidiu então desenvolver sua própria versão de NTFS sendo que já possuímos NTFS no Linux? Bom, o maior motivo pode ser conferido em sua FAQ, está relacionado a desempenho. O NTFS que utilizamos no Linux (chamado NTFS-3G e que é desenvolvido pela Tuxera) é na verdade um filesystem in userspace que também conhecemos abreviadamente como FUSE, uma interface simples para exportar um sistema de arquivos virtual para o kernel Linux que, apesar do NTFS-3G funcionar bem, já é conhecido entre nós que o FUSE sofre de perda de desempenho. É o mesmo caso que ocorreu com o ExFat (e o Vfat) que também rodavam via FUSE e que depois que a Microsoft disponibilizou sua especificação técnica, pudemos ver lançamento do kernel com suporte nativo ao ExFat. Foi pensando nisso que a Paragon desenvolveu sua própria versão do NTFSv3 que é realmente um driver. 
    A ASUSD-Link, CorsairBelkin e NETGEAR também já apresentaram relatórios de melhor qualidade em seus serviços e produtos com Linux e que dependem do NTFS. A FixMeStick, a AJA Video e a Wester Digital apresentam seus casos de estudos sobre os produtos da Paragon.


    Mas essa não é sua única vantagem; o NTFSv3 também oferece acesso total a volumes NTFS e o HFS+, melhor integridade, proteção de dados, facilidade de instalação, 
melhor interoperabilidade entre outros sistemas operacionais e dispositivos (seja entre Android, Windows, Macbook, iPad, notebooks Linux, Chromebook e etc),   suporte aos kernels Linux (do 2.6.36 a acima do 5.12.x), distribuições mais recentes e suporte a SMP do kernel. Há uma tabela comparativa de recursos dos sistemas de arquivos desenvolvidos pela paragon para Windows, Linux, MacOSX, iOS UEFI e QNX que pode ser conferida clicando aqui, ou baixando PDF. Seu NTFS acaba apresentando melhores recursos para Linux:

tabela comparativa de sistemas de arquivos entre sistemas operacionais.
tabela comparativa de sistemas de arquivos entre sistemas operacionais.

    O NTFS da Paragon está sob licença EULA (mesmo assim, está disponível o seu código fonte) e há duas edições disponíveis para download:
Diferença de recursos entre a versão free e a profissional do NTFS da Paragon.
Diferença de recursos entre a versão free e a profissional do NTFS da Paragon.

DESVANTAGENS DO NTFS

    Eu já ouvi afirmarem que "para debater assuntos e termos técnicos, é necessário que a Microsoft disponibilize seu código fonte"; o que eu acho uma extrema de uma tolice (não acredito em software livre a troco de nada). É possível sim debater assuntos técnicos sobre ferramentas sem a necessidade de código fonte, alias, muitos dos que brigam para que as empresas disponibilizem seus códigos fonte, nem sabem ler e muito menos contribuem. Então vamos a analise técnica; nem tudo são as mil maravilhas e o NTFS também possui suas limitações. Já me perguntaram o que eu acho do NTFS e isso virou tema de um vídeo. Acho que o NTFS um sistema de arquivos rico e pobre ao mesmo tempo (rico em recursos e pobre em sua execução).

    Vemos na versão Free do NTFSv3 em limitações que:
  1. Arquivos criptografados não possuem a capacidade de serem descriptografados.
  2. Somente stream de dados é copiado durante a operação de cópia
  3. Hard links e symlinks são copiados como arquivos, sem informações de link. 
    Há uma informação interessante na Wikipedia que diz que "Se usado em uma mídia removível, ela pode se corromper mais facilmente; Não é possível otimizar para remoção rápida".  Isso é realmente verdade (ao menos nas versões atuais tanto do Windows quanto no NTFS-3G que usamos no Linux) e relatei isso em um vídeo:


    A vantagem de se ter NTFS no Linux é que pode ocorrer de certas aplicações que foram desenvolvidas primeiramente para Windows (ou serem aplicações somente para Windows) serem escritas com base em recursos do seu sistemas de arquivos. Isso acaba facilitando muito o trabalho tanto para os desenvolvedores quanto sysadmins e até usuários finais. Na FAQ do Wine é mencionado que "nem todos os sistemas de arquivos / drivers possuem suporte a todos os recursos do Fat32 ou do NTFS. Um exemplo é que driver do NTFSv3 não possuem suporte a shared-write mmap, um recurso que não pode ser emulado e é utilizado por aplicações assim como a Steam." Ou seja, até mesmo entre NTFS e NTFSv3 há seus conflitos (o que não é um caso de se estranhar, já vimos casos assim como é caso que ocorreu no MacOS X).

NTFSv3 da Paragon sendo instalado no Ubuntu.
NTFSv3 da Paragon sendo instalado no Ubuntu.

    Com a crescente adoção de Linux se tornando cada vez mais forte, acabamos vendo a Microsoft portando suas ferramentas para Linux, desenvolvendo novas ferramentas também pensando no Linux e até mesmo abrindo alguns de seus códigos fonte (confira aqui algumas destas noticias). Não vai ser estranho acabarmos vendo a Microsoft sacrificando o Windows para em seu lugar construir um sistema operacional Linux com as aplicações do Windows e assim ela ter o melhor dos dois mundos para o seu publico (já vimos a Microsoft fazer isso com o windows phone que em seu final era uma versão de Android com a cara do Windows phone e a Apple sacrificar o MacOS para colocar em seu lugar o NextSptep com a Cara do MacOS). 

03 - Bê-A-Bá Terminal MacOS


Nosso 4º vídeo sobre Terminal no sistema MacOS, mesmo que no título esteja o número 3.  Se você está acompanhando desde a 1º videoaula, você sabe o porque ou...

... está vendo esse tutorial/vídeo por primeiro, saiba que temos alguns outros onde eu falo sobre "PWD, CD, MKDIR". Aqui, clique ai embaixo que você já vai aprender rapidinho.

00 - Comandos Básicos No Terminal

Nesse vídeo vamos passar desde comandos que servem para mostrar algumas informações do sistema como comando de criação de pacotes.

Testamos a nova versão do toybox e veja o que descobrimos.

bug-no-toybox-tar
Bug no comando toybox tar
 Pouco mais de três meses e meio depois do lançamento da versão 0.8.0, é lançada a nova versão. toybox é terminal de comandos desenvolvido exclusivamente para Linux combinando muitos comandos comuns no Linux em um único binário assim como o Busybox; porém possuindo código mais limpo, mais simples, mais claro e mais fácil de manter. Com o tempo a comunidade. Com o tempo, a comunidade FreeBSD decidiu portá-lo; o que acabou dando origem a versão para MacOS X também. Está sob licença cláusula zero da BSD (0-BSD) e é compatível com a POSIX-2008 e o padrão LSB4.1.
curso-linux-da-migração-a-administração-do-sistema-operacional
CLIQUE AQUI, VENHA APRENDER LINUX COMIGO E TORNE-SE UM VERDADEIRO PROFISSIONAL.
 Quando lancei o primeiro vídeo no canal, o toybox era adotado no Adnroid 7 e no Tizen. Desde então os comandos do toybox vem ganhando mais espaço no POSIX-2008/SUSv4, no Linux Standard Base, no buildroot, na klibc (que já teve vídeo no canal), no Nash do Fedora, no Beatiebox do FreeBSD, no BsdBox, e vários outros projetos que podem ser conferidos o Use Case do toybox (clicando aqui).

 O que eu percebo é que o toybox acabará substituindo o Busybox assim como o Linux substituiu o Minix e o Neo Vim anda substituindo o Vim; isso acaba sendo uma lei natural. Mas encontrei um pequeno bug nele e quis compartilhar essa com vocês:

 Ok, reportado o bug a comunidade, agora é esperar pois eles andam bem ocupada com outros trabalhos (talvez mais importantes) no projeto como várias correções na versão do MacOS, na parte de uso de CPU do comando top, e remoção de getprop, setprop, start e stop do toybox, melhorando os nomes dos sinais do comando kill, na parte de variáveis e mais outras partes (aqui dei mais um trabalho para eles; ou talvez adiantei o trabalho deles).




00 - Bê-a-bá Terminal no MacOS


Faaaaaaaala galera, beleza? Depois de um um bom tempo sem postar, essa semana postei um vídeo básico de comandos no Terminal, usando o sistema operacional MacOSda Apple.

Uma das coisas que eu sempre utilizo no meu dia a dia são alguns comandos no Terminal. Quando comecei a usar sistemas Linux, tive aquele primeira impressão de todo usuário recente quando está pela primeira vez no Terminal. Mas com o tempo, praticando, você se acostuma e quase faz todo o processo de instalação, configurações e resoluções de problema no Terminal.

Mesmo mudando de distribuição ou de "sistema operacional" no caso do vídeo, vemos a utilidade ao menos aprender alguns comandos básicos.

Se você é um usuário recente e está querendo aprender a mexer no Terminal, mesmo utilizando MacOS ou Linux (Ubuntu, Debian, Mint...) este vídeo irá te dar caminho.

Lançado toybox 0.8.5

Lançado toybox 0.8.5
Lançado toybox 0.8.5

    No dia 19/05/2021, após seis meses do ultimo lançamento, é lançada a versão 0.8.5 do terminal de comandos toybox. Toybox é um terminal de comandos que combina utilitários de comandos Linux em um único executável sob licença 0-BSD. É um terminal pequeno, rápido, poderoso e que o projeto visa substituir o Bash.

    Podem parecer poucas novidades nesta versão se analisarmos somente quais os novos comandos que ele trás, porém ele recebeu trinta commits adicionando novos recursos ao toysh como funções do shell, variáveis locais, job control está a meio caminho andado, suporte trace e a set builtin.

    Foram adicionados os comandos  pwgen, base32, unicode, o readelf foi promovido (saindo de pendente e ainda recebeu hardened contra invalid input) e o sha3sum agora é carregado por padrão no defconfig (que pode ser conferido no meu vídeo dando uma olhada no toybox).


    O comando chsh não foi promovido devido fazer parte de um grupo de comandos que serão promovidos juntos (os comandos useradd, userdel, groupadd e groupdel).

    Vários comandos receberam novas opções como o file que agora reconhece o novo formato de binários XML do Android (que também recebeu hardened contra invalid input); o devmen agora trabalha em modo nommu; o df -a passou a exibir  sistemas de arquivos sobremontados; o test -k verifica sticky bit. Há um pequeno erro no comando test que não aparecem as opções ao executar test --help e que neste caso funcionará somente com a opção antiga (help test). Se bem que o próprio comando do gnu (man 1 test) não exibe nenhuma informação quando digitado test --help e sim através do help test. Então o test do toybox está dentro dos mesmo padrões.


    A opção -t foi adicionada aos comandos install, cp e mv e a opção -u ao cp e ao cpio; o comando find -executable verifica se possuímos permissão de execução (evitando problemas com o SELinux por exemplo); o date recebeu vários recursos (--iso, %:z formato da saída, e --utc como um sinônimo para -u); o sed recebeu a opção s///x; unidades a saída do comando ulimit, modo de cor ao comando hexedit (que agora é o padrão) e foi adicionado um portability.h para o comando df interpretar o statvfs do MacOS.

    Além de já ter sido portado para FreeBSD e para o MacOS, agora é possível também criar binários toybox para o OpenBSD (utilizando o mesmo comando make freebsd_defconfig).

    O toybox ainda recebeu várias correções de bugs e limpezas e sua biblioteca também recebeu novos recursos. O projeto disponibiliza o prebuilt de binários estáticos e também Imagens do mkroot possíveis de bootar através do QEMU (utilizando o kernel vanilla linux-5.12, exceto para a arquitetura s390 que depende de outro patch)

    O toybox já está em torno 80% pronto, ainda dependendo de certos ajustes e recursos como $((math)), history/editing interativo e um monte de testes. Para chegar a versão 1.0, Rob Landley criou uma campanha no Patreon para que financiem a equipe (clique aqui para conferir a campanha).

01 - Bê-a-bá Terminal no MacOS


Neste segundo vídeo, dando continuidade vamos aprender mais alguns comandos úteis na linha de comando.

Se você está vendo esse tutorial pela primeira vez, clique abaixo para assistir o primeiro vídeo onde eu explico outros comandos que não foi abordado neste vídeo.

00 - Comandos No Terminal MacOS

Não se preocupe se você estiver usando um sistema Linux, em uma distribuição Ubuntu, Debian, Mint, o importante é você ter um Terminal Bash instalado, coisa que hoje em dia a maioria já vem instalada.

Então vamos para mais um vídeo ...

 

Marcadores

A pior história sobre Linux que já ouvi (6) A.I (2) ambiente gráfico (19) AMD (14) analise (10) Andriod (16) android (7) Apple (1) arm (5) artigo (5) aws (1) bc (23) benchmark (6) BetrFS (1) blackhat (1) BSDs (34) btrfs (32) bugs (2) Caixa de Ferramentas do UNIX (18) canonical (1) canto do Diego Lins (2) certificações Linux (7) Código Fonte (53) comandos (33) comp (1) compressores (9) consoles (1) container (8) CPU (19) cracker (1) criptografia (5) crowdfunding (9) cursos (24) daemons (14) Debian (31) desempenho (2) desenvolvimento (104) desktop (19) DevOps (3) DevSecOps (4) dic (1) Dica de leitura (91) dica DLins (2) dicas do Flávio (27) Dicas TechWarn (1) diet libc (4) diocast (1) dioliunx (3) distribuições Linux (14) Docker (13) DragonflyBSD (24) driver (2) dropbear (3) ead Diolinux (2) edição de vídeo (5) embarcados (1) EMMI Linux (4) emuladores (9) endless (5) English interview (3) Enless OS (2) entrevista (17) espaço aberto (82) evento (6) facebook (1) Fedora (11) filesystem (82) financiamento coletivo (2) fork (4) fox n forests (4) FreeBSD (21) Funtoo Linux (13) games (95) garbage collector (1) gerenciadores de pacotes (4) glaucus (8) GOG (3) google (9) gpu (3) hacker (2) hardware (104) hash (1) helenos (3) I.A (1) init system (13) Intel (15) inteligencia artificial (2) IoT (1) ispconfig (1) jogos (39) kde (1) kernel (142) lançamento (64) leis (1) LFCS (1) libs (2) licenças (10) Linus (16) linus torvalds (2) Linux (194) linux foundation (3) linux para leigos (1) live (4) lkgr (1) LPI (8) LTS (1) Mac (1) machine learning (1) matemática (9) mesa redonda (27) microcontroladores (1) microsoft (6) microst (1) muito além do GNU (180) musl (3) não viva de boatos (9) navegadores (5) NetBSD (7) newlib (1) nim (12) nimlang (4) nintendo (1) novatec (17) novidades (1) nuvem (1) o meu ambiente de trabalho (3) off-topic (12) ONLYOFFICE (5) open source (85) OpenBSD (8) OpenShift (1) oracle (1) os vários sabores de Linux (46) padrim (2) palestras e eventos (5) partições (6) pentest (8) performance (1) pipewire (1) plan9 (3) playstation (1) processadores (30) professor Augusto Manzano (11) Programação (72) promoção (1) propagandas com Linux (8) ps4 (1) real-time. (1) Red Hat (23) redes (4) resenha nerd (4) Resumo da Semana do Dlins (2) resumo do Tux (19) retrospectiva Linux (1) risc-V (14) RISCV (13) rtos (1) runlevel (2) rust (16) Sega (1) Sega Saturn (1) segurança digital (28) servidor web (2) servidores (3) shell (11) shell script (8) sistema operacional (25) skarnet (2) smartphones (3) Software livre e de código aberto (150) sorteio (3) Steam (10) Steam no Linux (8) supercomputadores (4) suse (7) systemd (9) terminal (90) terminal de comandos (21) toca do tux (1) toybox (30) tutorial (6) Tux (3) ubuntu (1) unboxing (7) UNIX (17) UNIX Toolbox (13) vartroy (1) vga (1) virtualização (3) vulnerabilidade (7) wayland (5) web (1) whatsapp (1) whitehat (1) Windows Subsystem for Linux (2) wine (14) WoT (1) yash (1) ZFS (16) zsh (3)