Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Ubuntu 最初の開発環境設定 / 入門者へのTip

More than 1 year has passed since last update.
  • Ubuntu 14.04 LTS 基準で作成しましたが、最新Verでも適用可能な話だと思います。

最近転職をして、開発環境がMacからUbuntuに変わりました。
Ubuntuは初めてだったので調べたら、意外と「Ubuntu はじめて」的な記事が少なくて、最初は慣れるまでちょっと戸惑ったので、そんな感じの記事を自分で書くことにしました。

特にQiitaに書くほどの大した内容でもないですが、自分用のメモとして記載しておきます。

Ubuntuが初めてな人に「これくらい知っとけ・やっとけ」というのが、今回の趣旨であります。

■ はじめてUbuntuを触った感想

UIと使い方は、Macに近いです。しかし、ショートカットキーだけはWindowsに近いです。
開発でmac使ってた人ならすぐ慣れると思います。

しかし、Mac, Windowsと違って、いろいろ自前で設定する必要がある

これはUbuntuが開発者向けのOSで、一般人には使えないと思う点ですね。

例えば、OSを日本語にしたり、日本語のキーボードをいれるだけでもCommand入力が必要です。
いろんな設定がGUIベースでできなくて、Terminal(シェル)を使う回数が増えました。
ソフトをinstallするときもShellを使う時が多いです。
そしてそのソフトのショートカットを作るときもShellを使います。

直感的なGUIに慣れている今どきの人にはかなり不便です。
Mac, Windowsと比べると、OSがケアしてくれる範囲が大変狭まった感じですね。
大概のことは、自力でやるか他社ソフトに任せろというのがUbuntuの政策です。。

なので、Terminalを開くコマンドをよく使います。

- 「ctrl + alt + t」: Terminalを起動します

シェルからソフトをインストールするときは、[sudo apt-get install アプリ名] を使います。
macでのhomebrewが、ubuntuでは apt-getになった感じですね。

■ Terminal(シェル)を見やすく格好良くする

上で言ったようにubuntuではシェルを使う機会も増えますが、defaultのままでは、色がついてなくて見にくいし、補完機能も弱いので、カスタマイズしたほうが絶対に良いです。
シェルを磨けば、作業効率とやる気が上がるし、周りが見た時もなんだかスマートに見えます。

お前らのターミナルはダサい!(https://qiita.com/kinchiki/items/57e9391128d07819c321)

この記事がBravo素晴らしい!ので、この記事を読んで下さい。

僕はこの記事通りに、zsh, PURE, oh-my-zshを入れています。

こんな感じになります。(画像は上のリンクのものです)

  • 本来ならchshコマンドを使って、デフォルトの起動シェルを変更するのですが、僕のUbuntuでは効果がなかったので、TerminalのProfile設定で、Custom commandに「zsh」を入れて対応しました。 また、各プラグインのインストールは、Qiitaの記事よりは、各公式ページから最新情報をみてインストールして下さい。

Terminalを綺麗にしたら、git, zshに便利なAliasを設定するのも忘れないで下さい。
(もちろんgit, zshをインストールしていることが前提です)

Zsh, Gitの設定 (Aliasなど)

僕の設定を載せておきます。
この辺は検索したらもっと便利なaliasがいっぱい出てきます。

~/.gitconfig

...(中略)...
[alias]
    # いい感じのグラフでログを表示
    graph = log --graph --date=short --decorate=short --pretty=format:'%Cgreen%h %Creset%cd %Cblue%cn %Cred%d %Creset%s'
    # 上の省略形
    gr = log --graph --date=short --decorate=short --pretty=format:'%Cgreen%h %Creset%cd %Cblue%cn %Cred%d %Creset%s'
    st = status
    cm = commit
    # Untracked filesを表示せず,not stagedと,stagedだけの状態を出力する
    stt = status -uno
    # 行ごとの差分じゃなくて,単語レベルでの差分を色付きで表示する
    difff = diff --word-diff
    co = checkout
[color]
    ui = always
[merge]
    ff = false
[pull]
    ff = only

~/.zshrc

...(中略)...
alias ls='ls -CF'
alias ll='ls -AlFh --show-control-chars --color=auto'
alias la='ls -A'
alias l='ls -CF'
alias gg='git graph'

■ Work Space Switcher を有効にする

Work space switcerは、MacでのMission Control (操作スペース)と似たような機能で、複数のウィンドウを分ける機能です。
Macでは操作スペースが横方向(Horizontal)でしか増えないですが、Ubuntuでは縦方向(Vertical)でも切り替えができます。
OSの設定で簡単に追加できます。

■ Launcherを自動でオフにする, Ubuntu版コントロールパネルをインストールする

Ubuntuでランチャーは、MacのDock, Windowsのタスクバーに該当するものです。画面左に固定で表示されて実行中のプログラムが見れるバーです。
MacやWindowみたいに画面の下に表示されるなら良いですが、画面の横なので、ちょっと邪魔に感じることがあります。
しかし自動で消える機能すらUbuntuではdefaultでは提供してくれないので、自分でなんとかしないと行けないです。
OSの設定ファイルをvimなどで修正する方法もありますが、アプリで設定できたほうが良いですね。
"Unity Tweak Tool"を入れましょう。
Windows/Macのコントロールパネルに普通にありそうな設定・機能をまとめたソフトです。
Ubuntuのコントロールパネル的なものですね。

インストールは、コマンド上で行います。

sudo apt-get install unity-tweak-tool
  • 他にも、Ubuntu tweak という同じようなソフトが有名らしいです。

■ Disk, Partition 管理アプリ

Macのディスクユーティリティに該当するソフトウェアが、Ubuntuの標準ソフトにはありません。
Partitionを統合・分解したい時に、Unix系OSに詳しい人なら、Commandでゴニョゴニョ書いて設定できると思いますが、
初心者はググらないとできないし、リスクもあるので、簡単に設定できるソフトをインストールしたほうが良いです。

  • gnome-disks
  • gparted

この2つのソフトがお勧めです。
詳細は検索してください!

■ 複数のHDDを1つのPartitionで使う

Windows/Macではできるか分からないですが、Ubuntuでは、2つの物理HDDがあったとしても、OS上で1つみたいに使うことができます。
そうすると、HDDが別々だということを意識せずにrootディレクトリの容量が増やすことができるので、CUIを多く使うUbuntuでは使い勝手がよくなります。

「LVM 拡張」というものなので、興味があれば検索してください。

僕は拡張して使っていますが、良いと思っています。ただシャットダウンして電源を入れた時のブーティング時間がかなり長くなった気がします。

ちなみに、普通に違うドライブ(パーティーション)でよい場合は、上で紹介したgpartedかgnome-disksで設定可能です。

■ WindowsのノートPCも併用していて不便な時

僕みたいに、開発では Ubuntuマシンで, 他の業務では Windowsを使う人もいると思いますが、
もしUbuntu上でWindowsを操作できたら、1つのモニター・マウス・キーボードを使って、2つの端末が操作できるので便利ですよね。
実はそれができます。

UbuntuからRemminaというソフトを使うと、Ubuntu上でWindowsをつなげて遠隔操作することができます。

このリンクに詳しく方法が書いてあります。
https://www.milkmemo.com/entry/remote_desktop_ubuntu_win

僕はこんな感じに、両方のOSを使っています。解像度が長いのはモニター2台を使ってるからです。

左がUbuntu環境 / 右がWindows環境です。
modified_scrshot2.png

1つのマウス、キーボードで操作しています。
Copy/Pasteも対応してくれていて、WindowsでコピーしたものをUbuntuで貼り付けすることができます。

■ アプリの強制終了

WindowsやMacだと、ctrl+alt+delなどで、タスクを強制終了することができますが、
Ubuntuでは、これもCUIでやる必要があります。

  • Ctrl + Alt + F1でCUIモードに切り替える
  • top コマンドで、終了したいプロセスを見つける
  • kill  コマンドで強制終了する
  • Ctrl + Alt + F7 でGUIモードに戻る

ただUbuntuの安定性が思ったより高く、ソフトを強制終了する場合はほぼありませんでした。

■ その他、おすすめのソフト

  • GIMP : 画像編集
  • GitKraken: SourceTreeの代用品です。GitはCommandでも問題ないですが、Diffを確認したりGraphみたり、GUIのほうが圧倒的に見やすい時もあります。 (他にもgit-gui, gitg、git-cola, SmartGit, GitEyeなど、色々ソフトがあります)
  • Compiz: OSの面白いアニメーション効果を与えるソフト。自分は使ってないですが、こういうカスタマイズ好きな人は見て下さい。

■ 最後に...

Ubuntuで開発をして感じたことは、Ubuntuも十分に使えるOSではありますが、開発者にはやはりMacで作業したほうが一番良いということです。
Ubuntuに特に大きな不便とか不満は全くないです。OSの安定性も高いし、普通に使えます。
ただし、やっぱり可能ならMacで開発したいですね。
結論は、「Ubuntuは貧乏開発者にとってのMacである」と!

solmin719
韓国出身の外国人労働者(笑)で、主にAndroidアプリを開発しています (2015~)
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away