はじめに
こんにちは!現在IT専門学校で3年生をやっている「Nue」と申します。
皆さんは普段、どんな環境で開発をしていますか?
「とりあえずWindowsにWSLを入れて使っている」「学校の授業指定だからVirtualBoxを使っている」という学生さんや初学者の方、かなり多いのではないでしょうか。
私も最初はまさにその一人でした。しかし、WSL特有の謎のもっさり感、原因不明のネットワークエラー、Windowsのアップデートに伴う環境破壊などに徐々にフラストレーションが溜まり……。
「もう嫌だ!本当のLinux環境で、ストレスなく開発がしたい!」
そう決心した私は、現在WindowsとLinux (Fedora) のデュアルブート環境を構築し、開発はすべてLinux (Fedora) のネイティブ環境で行うという最高に快適な生活を送っています。
この記事は、以下のような方に向けて書きました。
- WSLや仮想マシンの「微妙な使いづらさ」から抜け出したい人
- Windowsでの開発になんとなく息苦しさを感じている人
- エンジニアを目指していて、もっと自由で快適な環境を求めている人
IT専門学生のリアルな体験談として、Linuxネイティブ環境への移行を迷っている方の背中を少しでも押せれば嬉しいです!
なぜLinux(Fedora)に移行しようと思ったのか?
結論から言うと、「Linuxの圧倒的な利便性と、すべてを自分でコントロールできる自由度に惚れ込んでしまったから」 です。
移行の大きなキッカケになったのは、LPICレベル1の取得でした。
試験勉強を通じて、Linuxのディレクトリ構造(FHS)やコマンドの仕組み、権限(パーミッション)の概念を深く知っていくうちに、「あれ、Linuxって開発環境としてめちゃくちゃ理にかなってないか?」と感動したのを覚えています。
- パッケージ管理ツールの楽さ
- 設定ファイル(テキストベース)の透明性
- 何でもコマンドライン一つで完結できるスタイリッシュさ
特に私が選んだFedoraは、最新の技術やパッケージがいち早く導入されるディストリビューションです。また、エンタープライズ領域で主流のRHEL(Red Hat Enterprise Linux)の上流にあたるため、将来サーバーエンジニアを目指す上でも、今のうちにRed Hat系に慣れておくのは戦略的にアリだと考えました。
この快適さとメリットを知ってしまったら、もうWSLや仮想マシンの上には戻れませんでした。
究極のジレンマ:なぜ「完全移行」ではなく「デュアルブート」なのか?
ここで一つの疑問が生まれると思います。
「そんなにLinuxが最高なら、Windowsを完全に消し去って乗り換えればいいのでは?」と。
おっしゃる通りです。エンジニアとしての理想を言えばそれが一番カッコいいでしょう。
しかし、私がWindowsを残し、あえて「デュアルブート」という面倒な道を選んだ理由は、非常にシンプルかつ切実です。
「Windowsでしか動かないPCゲームを、絶対に諦めたくなかったから!!!!」
はい、これに尽きます(笑)。
近年はSteamのProtonなど、LinuxでWindowsゲームを動かす技術が驚異的に進化していますが、対戦ゲームで必須となる「アンチチートツール」がLinux上で弾かれてしまうことが多々あります。
「開発は最高のネイティブ環境(Linux)でゴリゴリやりたい。でも、休日のゲーム(Windows)も絶対に捨てたくない。」
この等身大のわがままを満たす最適解が、デュアルブートでした。OSを物理的に切り替えることで、頭のスイッチも切り替わるメリハリがついて、個人的には大正解の選択だったと思っています。
実際に移行して最高だったこと
1. 圧倒的な起動の速さと「謎の重さ」からの解放
ネイティブでインストールしたLinuxは、とにかく起動が爆速です。Windowsのバックグラウンド更新による「謎の重さ」からも解放され、Dockerコンテナの立ち上がりも非常にスムーズ。「待たされるストレス」が激減しました。
2. 自分だけの「最強の環境」を組み上げる快感
UIからターミナルの挙動まで、自分の思い通りにカスタマイズできます。
例えば、私が .bashrc に設定しているお気に入りのエイリアスと関数を紹介します。
# ~/.bashrc
# パッケージの更新をサクッと終わらせる (Fedoraのdnfコマンド)
alias sysup='sudo dnf upgrade --refresh'
# ディレクトリ移動と同時に中身を確認する(これ本当に便利です)
function cdls() {
cd "$1" || return
ls -la
}
# 開発後の後片付け。不要なDockerコンテナを一掃する (※取り扱い注意!)
alias dockerclean='docker rm -f $(docker ps -aq)'
逆に辛かったこと・ぶつかった壁
もちろん、バラ色のことばかりではありません。自由であるということは、それだけ 「自己責任」と「学習」が伴うということです。
-
ブート(起動)の仕組みの理解
GRUB(ブートローダ)の設定や、UEFI/BIOSの仕組みについて深く理解する必要がありました。初期設定でミスをしてWindows側が起動しなくなり、冷や汗をかきながらスマホで復旧方法を調べたのは良い思い出です。 -
「Cドライブ」という概念からの脱却
Windowsの「ドライブ」という概念を捨て、/(ルート)を頂点とした単一の木構造の中に各パーティションを「マウント」するという概念を理解するまでは少し時間がかかりました。
これから挑戦する方へ
パーティション操作やブートローダの設定は、一歩間違えると既存のWindowsデータが消えるリスクになります。作業前には必ず重要なデータのバックアップを取りましょう!
まとめ
WindowsからLinux(Fedora)へのネイティブ移行は、確かに初期の学習コストがかかります。しかし、それを補って余りあるほどの 「快適でストレスフリーな開発体験」と「OSの深い知識」 をもたらしてくれました。
もし今、WSLや仮想環境のもっさり感に少しでもストレスを感じているなら。
もし今、「もっとLinuxの深い部分に触れてみたい」という好奇心があるなら。
ぜひ思い切って、デュアルブート環境でネイティブなLinuxの世界に飛び込んでみてください。きっと、エンジニアとして一回り成長できる、新しくて自由な世界が広がっているはずです!
最後まで読んでいただき、ありがとうございました。