大韓民国観察記Neo

韓国の、どうでもいい、重箱の隅をつつくブログ。

Linuxを使うメリット

システム:Fedora30

Fedoraでは、root使用禁止という変な仕様がデフォルトになっているので、「$ sudo passwd」コマンドでrootパスワードを発行し、rootを使えるようにする一手間が必要。

 

f:id:sirius-B:20191215061243j:plain


Linuxを使うメリット。
それは、圧倒的なウイルス耐性。
ブログ運営とか、ネットアクセスが多い人にとって、この安心感は何物にも代え難い。
やばいサイトにヒットしても、ウイルス感染を気にしないで済むのはうれしい。
安心していろんなサイトを見れる。

なぜ、圧倒的なウイルス耐性があるのか
ネットの説明では、単純にLinuxの普及率が低いからウイルス感染が少いだけと、さも知ったふうに書いてあるサイトが多い。
だが、そんなこと書く人は、実際にLinuxをバリバリ使っているとはとても言い難い。
なぜLinuxが安全かは、Linux上でgccを使ってソフトを作ってみれば一発で分かる。

Windowsなら、ライブラリーをスタティックリンクしたバイナリープログラムなら、どのマシーンでも問題なく動くが、Linuxだとまともに動かない。
いちいちソースコードを持って来て、マシーンごとにコンパイルしなおさないとまともに動かない。
こうなると、ライブラリーをスタティックリンクする意味すらない。
デバイスドライバーを作る側としてはこれは本当に困ったことで、Linux用のドライバーを作ると、企業秘密が白日の下に曝け出されてしまう。
Linuxお断りのコンピューター周辺機器が多いのもこれが理由である。

これはLinuxの最大にして致命的な欠陥であるが、こと、対ウイルスに関して言えば、最大の防御策として機能してしまっている。

ウイルスは、ライブラリーをスタティックリンクしたバイナリープログラムだから、Windowsではバリバリ暴れ回ることができても、Linuxだとまともに動かない。

Linuxのユーザーの多くは、マシーンに最適化されたバイナリーにこだわる人が多い。
そこで、Linuxのインストールでは、わざわざソースコードコンパイルして、ターゲットマシーンごとにバイナリーを変えてくるという技を使ってくる事が多い(もちろん完全自動でやってくれるのだけれど)。
ソースコードレベルでは、どのパソコンにインストールされているLinuxでも互換性はあるが、バイナリーはマシン毎に全然違うということが普通にある。

ソースコードを送り付けてgccを使って自動的にコンパイルするウイルスを作れば、Linuxでも動くようにできるが、ターゲットマシーンにウイルスに必要なライブラリーがインストールされている保証はないし、ソースコードは、極めて容易に危険なコードかどうかスキャンが可能である。

ウイルスにとってLinuxは非常に都合の悪いシステムなのである。

そのほかのメリット

画像処理系ソフトが無料
GIMP(ペイント系画像処理ソフト)が高性能なのに無料。
Inkscape(PDF編集にも対応したドロー系画像処理ソフト)が高性能なのに無料。

Libre Officeが使える
Microsoft Officeと比べれば、Libre Officeは、社会的に認知されていない分、たいしたことはない。
が、Libre Office Drowは別。
ドロー系画像処理ソフトという位置付けなのだが、DTPソフトとしての使い勝手が抜群に良い。

プリントは一旦PDF出力するのが吉
Linuxは、もともとPostscriptで印刷出力を行う仕様。
一般プリンターへ出力する場合は、PostscriptをCupsドライバーで再変換する関係で、印刷品質が落ちることがよくある。一旦PDF出力してからWindowsで印刷かけたほうがきれいにできたりする。
PostscriptもPDFもアドビの規格なので双方相性がよい。
LinuxのPDF出力は綺麗。

完全64ビット対応
Windowsでは、バイナリー互換性を確保するために、未だ多くのモジュールが32ビットで動いている。
Linuxの世界では、バイナリー互換性は最初から存在しない。
だからバイナリー互換性を確保する意味がない。
マシーンに最適化されたバイナリーにこだわる人が多いので、インストールするとき、わざわざソースコードコンパイルして、ターゲットマシーンごとにバイナリーを変えてくるという技を使ってくる事が多い(もちろん完全自動でやってくれるのだけれど)。
gccが64ビットに対応していれば、インストールされるモジュールはすべて64ビットになる。
通常gccは、マシーンのCPUを判別して、個別のCPUに最適化されたバイナリーを出力してくるので、WindowsLinuxで共通で使えるソフトの場合、Linuxで動かした方がはるかに速く動く。