質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

9回答

20663閲覧

【インフラ?】自宅サーバOSは何が良い?

nnahito

総合スコア2004

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

1グッド

4クリップ

投稿2017/02/07 08:36

プログラミングとは関係ありません。

自宅サーバをたてて、インフラの勉強がてら簡単なサービスを作ってみようと思っているのですが、
サーバOSは結局、何が良いのでしょうか?

有名所で言えば、CentOSかな?と思っていたら、
友人から、Ubuntu serverと言うものを勧められ、今はとりあえずUbuntu serverでサーバを立てています。
(Apacheが、もともとMacでしか触ったことがないので、すごく使いにくく感じます。)
そして、大学ではCentOSを使っています。

このあたり、今までノータッチだったので、いまいち知識がありません。
セキュリティ面であったり、利用のしやすさなどからでは、CentOSか、Ubuntu Serverか、その他のOSでは何が良いのでしょうか?
用途によって変わったりするのでしょうか?

ご存じの方がいらっしゃいましたら、ご教示頂けますと幸いです。

以下、参考にしたサイト様の一部

この記事はコメント部分を見てみると、いまいち参考にならないらしいですし……
Cent OS派が多いのか?


この記事によると、Debianが良いとのこと……Debian本体か、派生のUbuntuの方が良いのかな?


ここではCentOSを押していますね。


上記の参考にしたサイト様のように、ちょっと意見がバラバラです……

Magkinh👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikedas

2017/02/07 13:34

「サービス」と言ってもいろいろありますが、どういう用途を考えていますか。
guest

回答9

0

インフラ関係です。

どっちがいいかは好みですが、両方覚えておきましょう。
Ubuntu(Debian系)とCentOS(RHEL系)ではオペレーションが異なってきます。
また、バージョンによっても違いがあるので、全ての差分も吸収しておくことをお勧めします。

以下、一例です。

■パッケージ管理コマンドの違い
Debian: apt
RHEL: yum

■パッケージ名の違い(例:開発パッケージxxx)
Debian: xxx-dev
RHEL: xxx-devel

■パッケージインストール時の動作違い
Debian: インストール後、大抵のサービスは自動起動
RHEL: インストール後、サービスは手動起動

■Apacheをインストールする場合のコマンド例
Debian: apt install apache2
RHEL: yum install httpd

■Apacheのインストールディレクトリ構成
Debian:

/etc/apache2/ apache2.conf conf-available/ conf-enabled/ envvars magic mods-available/ mods-enabled/ ports.conf sites-available/ sites-enabled/

RHEL:

/etc/httpd/ conf/ conf.d/ logs -> ../../var/log/httpd modules -> ../../usr/lib64/httpd/modules run -> ../../var/run/httpd

■cronプロセス名
Debian: cron
RHEL: crond (REHL7はcronie)

また、GUIは使わないようにすることをお勧めします。(そもそもインストールしない)
GUIを使っても、結局xtermでコマンドを入力するだけです。

最後に、Apacheについてはリリース当初より使っていますが、未だに分かりにくいです。
Nginxのほうが設定がすっきりしていて分かりやすいです。
デフォルトの設定でも一般的にNginxのほうがパフォーマンスがでます。
チューニングをしっかりやればApacheが勝るという記事をどこかで見かけましたが、チューニングに費やすコストでサーバをスケールしたほうが安上がりだなと思いました。

投稿2017/02/08 00:09

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:16

ご回答ありがとうございます。 正直、ド素人なもので違いが本当に分かっていません…… (インフラレベルは、Hello Worldをどう書くか調べている段階ぐらい) >どっちがいいかは好みですが、両方覚えておきましょう。 そうですね、最終的にはプロジェクトに合わせて取捨選択出来るようにはなりたいです。 >■パッケージインストール時の動作違い たしかにこれはなんとなく経験あります! 自動起動はありがたいです。 >また、GUIは使わないようにすることをお勧めします。(そもそもインストールしない) Linuxコマンドもnoobなので、最初はGUIで勉強したいですが… 最初からCUIのほうがいいのでしょうか? >Nginxのほうが設定がすっきりしていて分かりやすいです。 Nginx……よく聞きますね…… ちょっと興味があるので、触ってみようと思います!
moonphase

2017/02/08 06:02

> Linuxコマンドもnoobなので、最初はGUIで勉強したいですが… > 最初からCUIのほうがいいのでしょうか? 環境次第ではないでしょうか。MacまたはWindowsが手元にあり、Webブラウジングしながら作業できるならCUIのみでいいでしょうし、1台しかなく、そこにUbuntuやCentOSを入れて使いたいならGUIあったほうが便利かなと。 おすすめはVirtualBox+VagrantをMacなりWindowsなりにインストールして使ってみるのがいいかもしれません。 実際に運用しているサーバはGUIがインストールされてないほうが多いです。 RHEL系のAmazonLinuxの最近のディストリビューションではそもそもGUIがパッケージに含まれてなかったりします。
nnahito

2017/02/09 06:19

ご返信ありがとうございます。 複数台PCを持っているのですが、アカウントの作成などがまだ分かっていないので、ひとまずGUIを入れております。 >VirtualBox+Vagrant VirtualBoxは知っておりましたが、Vagrantは知りませんでした。 勉強させていただきます。 ありがとうございます
guest

0

ベストアンサー

インフラ担当(メインはNWですが)です。

はっきり言ってしまうと、
Ubuntuだろうが、CentOSだろうが、RHELだろうが、
やることは一緒なので、
スペック的(あんまり変わらない)に、
用途的(Webアプリケーションなのか、コンバーターなのか)に、
プロジェクト(開発内容)的に適したものを自分で調べて
選択してみるのがいいかもしれません。
(的外れな回答かもしれませんが)

私は、個人でCentOS、Ubuntu、Solaris10、Linuxmintを勉強がてら操作しています。
なので、どれが一番いい!とははっきりいえませんが、
インフラであれば、色々なOSに触れて、どこがどれと一緒なのかを把握しておくのがいいと思います。

経験をしてみたいということでしたら、OSをぶっ壊すつもりで色々作業してみるのがいいかもしれません。
(但し、個人で使う予定の場合のみ)

余談ですが、
私はインフラで使うOSはUbuntuが多いです。
理由は、使ってるユーザーが比較的に多く、
コンフィグや、バグの修正方法などが多く出回っているためです。(大体英語ですが)

(参考追記)
現場で使用しているものがアドバイスになればなあということで追加しました。

在庫管理システム(WEBアプリケーション)
言語:ASP.MVC
サーバーOS:WindowsServer

メールサーバー
サーバーOS:RHEL

通信保守・管理システム(WEBアプリケーション) 
言語:C,Perl,ASP MVC,Java,etc...
サーバーOS(複数)
Solaris10(大規模の場合)
WindowsServer(オフィス製品と連動する場合)
CentOS(小規模の場合)

他にも色々ありますが、割愛させていただきます。

投稿2017/02/08 00:51

編集2017/02/08 02:52
Rayla_Purateado

総合スコア97

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:19

ご回答ありがとうございます。 インフラはほぼ触ったことのないnoobなので、これからどんどん勉強していきたいと思っています。 >インフラであれば、色々なOSに触れて、どこがどれと一緒なのかを把握しておくのがいいと思います。 そうですね、最終的にはプロジェクトに合わせて取捨選択できればいいなと思っています。 >理由は、使ってるユーザーが比較的に多く、 >コンフィグや、バグの修正方法などが多く出回っているためです。(大体英語ですが) 英語を除けば、たしかに修正方法が多いのはありがたいです。 >プロジェクト(開発内容)的に適したものを自分で調べて >選択してみるのがいいかもしれません。 これの調べ方、と言うものが分かりません。 例えば、Webサービスであれば、Apacheなどが動けば問題ない……と思っていますが、 それは間違いなのでしょうか? >経験をしてみたいということでしたら、OSをぶっ壊すつもりで色々作業してみるのがいいかもしれません。 これはたしかにそのとおりだと思います。 大学のCentOSは、セットアップをミスって7回動作停止させました……
Rayla_Purateado

2017/02/09 02:11 編集

弾丸出張に行っており確認遅れました(そんな情報要らない) >>プロジェクト(開発内容)的に適したものを自分で調べて >>選択してみるのがいいかもしれません。 >これの調べ方、と言うものが分かりません。 >例えば、Webサービスであれば、Apacheなどが動けば問題ない……と思っていますが、 >それは間違いなのでしょうか? サーバー系OSはそれぞれ特化した部分が実際にあります。 (まあ、そこまでやるっていうとかなり特殊なケースか優秀な人が設計をやるとかのケースですが) 大容量のNASにDBを導入して、ロードバランサで振分て(以下略 のようなことをする場合は、 Solarisや、RHELなどを使います。 これはチューニング(カスタマイズ)をしやすく、デバイスドライバの制約が緩い為です。 また、インフラ側と切り離しで開発側(プログラムを作る人たちの方)のことを考えてOSも選ばなければいけません。 (まあ、全てC言語でやってくれればこちら側は楽できるんですけどね!(愚痴) 今はさほど差はないですが、実はこの言語は対応していません!なんていうOSがあるので、 設計段階で、開発側の言語がこれ!と決まった段階で、 そのままで動くのか、動かなければモジュールを入れなければいけないのか、完全に対応していないのかを確認して、大丈夫であれば、そのまま使い、駄目であれば、設計責任者に殴りこみに行きます(これが俗に言う仕様変更) 今は .NET Core(?)なんてものが出てますが、そんなものがなかったときは、ASP(Windows言語)は全てWindowsServerでないと動かないというのが普通でした。 また、最近の傾向では、OSが変わるたびに、業務アプリケーションのバージョンをあげなければいけないというのが、無駄に予算がかさむということで、 WEBアプリケーションで業務アプリを実行させるようにしたいという要望が増えています。 この場合、お客さんは基本的にオフィス製品(エクセルとか)を使って印刷などをする場合、 製品はMicrosoftで統一します。(Excelへ出力などがあるため) その場合、UbuntuなどのLinux/Unix系統のOSですと、アウトプットのプログラムを開発側に依頼しなければいけないので、 (そんなことをお願いすると、殴り飛ばされます) 工程・手数や、互換性の問題を減らすためにWindowsServerを選択するということをします。 という感じで、そういった特化した部分を調べ、作る環境に合わせて、何が一番臨機応変に対応できるかということを考えながら、OSを選択するっていう感じですね。 なので、 Webサービスが動けば問題ないんじゃない? アパトム(Apache+Tomcat)が動けばいいんじゃない?(WEBシステムの組み合わせ) WebLogic+JBOSS+Apacheが動けばいいんじゃない?(WEBシステムの組み合わせ) という考えでいると、地獄を見ます。(経験談)
nnahito

2017/02/09 06:29

お忙しい出張お疲れ様です。 その中での、ご返信ありがとうございます。感謝です! >サーバー系OSはそれぞれ特化した部分が実際にあります。 なるほど、「環境に合わせて」というのはこれですね…… >また、インフラ側と切り離しで開発側(プログラムを作る人たちの方)のことを考えてOSも選ばなければいけません。 これもそうですね…… 確かに、今私が遊びで作っているPHPのWebアプリケーションも、開発のMacとWindowsはPHP5系、 UbuntuServerはノリと勢いでPHP7系を入れました…… いや、絶対やったらあかんやろこれ…… (遊びなので許される無謀) >今は .NET Core(?)なんてものが出てますが、そんなものがなかったときは、ASP(Windows言語)は全てWindowsServerでないと動かないというのが普通でした。 .NET Core……ASP……何となく聞いたこと有りますが、触ったことはないですね…… その辺も詳しくなりたいなぁ……(決まった就職先では、PHPエンジニアになる予定なので、インフラは触らない気はしますが……知識は欲しい) WindowsServer、便利らしいですね。お金かかるので触ったことはないですが…… >また、最近の傾向では、OSが変わるたびに、業務アプリケーションのバージョンをあげなければいけない これはApple製品的な意味ででしょうか? あまり、PHPやperlなどはある程度互換性があると言う認識でいます。 (特にWindowsの互換性はすごい……XP時代に組んだBASICのソフトが未だに動く……) >Webサービスが動けば問題ないんじゃない? >アパトム(Apache+Tomcat)が動けばいいんじゃない?(WEBシステムの組み合わせ) >WebLogic+JBOSS+Apacheが動けばいいんじゃない?(WEBシステムの組み合わせ) >という考えでいると、地獄を見ます。(経験談) 貴重な体験談を教えていただきありがとうございます。 インフラを用意するには、企画書、仕様書が揃ってないといけないということがわかりました。 後、専門知識と…… 色々失敗しながらやっていきたいと思います。 ありがとうございます
Rayla_Purateado

2017/02/09 06:41

>>また、最近の傾向では、OSが変わるたびに、業務アプリケーションのバージョンをあげなければいけない >これはApple製品的な意味ででしょうか? ちょっとあれな話になってしまいますが、 基幹系の業務システムとかは、Windowsアプリケーション(.NET Frameworkが出る前のもの)のバージョンが古かったり、オフィスのバージョンが古かったりとして、 サポートを受けることが出来なくなってしまいます。 企業とかにとっては、それは非常にまずいことなので、 オフィスなら2003から2013、VB6.0で作ったアプリケーションなら、.NET 4.5まで引き上げるはめになります。 OSもXPからWin10まででしょう(これはひどい) そうなった場合、動かなくなるのがほとんどですので、 唯一影響を受けないのが、ブラウザで表示するものですので、 企業はコストがかさむアプリよりも、ブラウザで作業するようにしてしまおうと動いているわけです。 (ぶっちゃけ、機材代は初期費用だけが関門です)
guest

0

目的が「インフラの勉強」なら、何でも良いような気がします。
学校で使っているものに合わせる方が学習し易いのでは?

導入OSは要件によって変わります。
インストールするものも変わります。
導入したいアプリケーションの親和性や信頼性などで
取捨選択していきます。

ApacheではなくてIISでないとだめだという条件がもし
付いたら、CentOSかUbuntu Serverのどっちにしようか?
って悩みますか?

仰る通り用途によって変わり、条件によって変わります。

投稿2017/02/07 09:05

Rikimaru

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:03

ご回答ありがとうございます。 >導入OSは要件によって変わります。 まだ勉強を始めようと思った、本当の初心者なので、これがよく分かりません。 初心者が勉強するには、何処をどう確認するのがベターなのでしょうか?
guest

0

どうせやるなら、大学で使っているのと違うものを経験してみてはどうでしょうか。同じLinuxといってもCentOSとubuntuではずいぶん勝手が違うと思います (sudoを使うのがデフォルトになってたりとか) が、OSの世界にはそれ以上の多様性があります。

CentOSがRed Hat Enterprise Linuxのバイナリ互換なクローンであることはご存知だと思いますが、Fedoraはそれの開発版です。Fedoraに取り入れられた新機能の多くがRHELに、そしてCentOSに取り入れられます。要は、新しい機能をいち早く使えるということです。インストールはCentOSなどと同様に簡単です。

Linuxではありません。Unix直系のディストリビューションであるBSDの一つです。Linuxに比べて堅牢な印象を与える作りです。セキュリティや基礎技術の開発で実績があり、かつてIPv6の実装では一番先行していました (というか、このOSでの実装が他の手本になりました)。こういうOSですから、少しの準備をするだけでOS全部を一からコンパイルしなおすこともできます。OSというのは、どこかからパッケージをダウンロードしてきてインストールするものではなく、自分で作れるものなのです。ただまあ、一番最初はメディアからインストールしますけれども。インストールは簡単です。

BSDでフリーなものとしてはほかに、NetBSDやOpenBSDなどもあります。

これもLinuxではありません。Unix直系のOSの一つです。かつては「Unix」と言えばSolarisのことを指す、という人もいたくらいで、そのさまざまな機能がほかのUnixやLinuxに取り入れられています。インストールは (以下略)。

フリーなOSではありません。非商用の個人用途なら無料でつかえますが、現在は、最新のセキュリティパッチを入手するにはライセンスを購入しなければならなくなっています。とは言ってもコンパイラなどは付属しているので開発はできますし、ちょっとした実験程度なら十分使えます。

あと、何か思い出したら追記する (かも)。

投稿2017/02/07 14:59

編集2017/02/07 15:45
ikedas

総合スコア4227

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:11

ご回答ありがとうございます。 正直、ド素人なもので、あげていただいたOSのうち、1つしか分かりませんでした。 (インフラレベルは、Hello Worldをどう書くか調べている段階ぐらい) >どうせやるなら、大学で使っているのと違うものを経験してみてはどうでしょうか。 たしかにそうですね…… 勉強なので、違ったものの動作で遊ぶと言うのもありかもです!
ikedas

2017/02/08 05:53

誰でも最初は素人です。何度も何度もインストールしたり設定したり、うまくいかなくて最初からやり直したりするのが、おぼえるには一番の早道です。ちなみに、他の人がやっていないものができるようになると、いばれます。 がんばって下さい。
nnahito

2017/02/09 06:17

ご返信ありがとうございます。 いろいろやってみようと思います! ありがとうございます!
guest

0

Linuxとは違いますが、私は昔(20年ぐらい前)からFreeBSDです。
・・・と言っても個人的なHTTPサーバとDBサーバにしか使っていませんが、下記を参考に
FreeBSD プロジェクト
FreeBSDサーバー構築マニュアル
FreeBSD
FreeBSDとはLinuxの一種ではないのですか?
FreeBSDとは

投稿2017/02/07 10:09

編集2017/02/07 10:11
cateye

総合スコア6851

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:05

ご回答ありがとうございます。 FreeBSD…… さくらのレンタルサーバで使われているやつですね! 名前は聞いたことがあります! 派生の、Nas4Freeは使ったことがありますが…… 完全NASサーバ向けのものでしたねw Linux……Unix?のコマンドも全然わからないので、CUI操作だけとなると今は少し厳しいです……
guest

0

私もまったく同じ理由でサーバー用途に使うLinuxを何にするか迷ったことがありますが、最終的にはシェアがダントツで日本語の情報も豊富なUbuntu Serverに決めました。当然CentOSも候補に挙げて試してみましたが、パッケージのバージョンが若干古いような印象を受けました(本家RHELの更新を受けてCentOSを更新しているからでしょうか)。

投稿2017/02/07 13:59

catsforepaw

総合スコア5938

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:07

ご回答ありがとうございます。 >最終的にはシェアがダントツで日本語の情報も豊富なUbuntu Serverに決めました そうなのですね! CentOSのほうが、シェが多い印象を受けていました……
catsforepaw

2017/02/08 04:19

日本だとCentOSのシェアが多いようですが、世界的にはUbuntu Serverが多いようです。だいぶ前のことなので何をどう調べたのか忘れてしまいましたが、確かVPSのインスタンス数の推移を表すグラフか何かでUbuntu Serverが他を引き離して一番多かったのを覚えています。 どちらも商用利用で十分な実績があるのでセキュリティ面などは特に問題視していませんでした。
guest

0

サーバー用途はCUIで起動すべきだと主張があります。
不要なプロセスが上がっているとセキュリティホールになる可能性があるからです。
またトラブルシューティングにいらん労力を掛ける羽目になります。
でも、学習用途ではどうでしょうか。
CUIなら、CentOSかUbuntuも大して変わりません。
アップデートがyumかapt-getになる程度だと思います。
正直、悩むほどの差はないでしょう。

投稿2017/02/07 11:08

mike2mike4

総合スコア891

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:07

ご回答ありがとうございます。 Linuxのコメンドをまだ全然しらないので、GUI操作で勉強したいと思っています。 >正直、悩むほどの差はないでしょう。 そうなのですね……ありがとうございます。
guest

0

aptが好きかyumが好きか... それが問題だ!
私はapt Ubuntu派です。CUIのサーバーです...

投稿2017/02/07 09:29

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:04

ご回答ありがとうございます。 シンプルで面白かったですw >aptが好きかyumが好きか... それが問題だ! まだ本当に始めたばかりなので、違いが分かりません…… ubuntuのほうが、ソフトが多いと言うことを聞きましたが、そういうことでしょうか? Linuxのコマンドも全然知りませんし……(必要に要応じて調べて、勉強しています
guest

0

基本的には自分で使いやすい方を使うのが良いと思います。
CentOSもUbuntuもLinuxなので、セキュリティの面ではどちらもあまり変わらない気がします。

GUIで操作したいのであれば「Ubuntu」
コンソールしか使わないのであれば「CentOS」
という感じになるかと思います。

最後に、自分の今までの経験ですが、ネットで情報を探そうとするとCentOSの方が情報が多い気はします。

投稿2017/02/07 08:46

koichi-ezato

総合スコア237

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/02/08 04:01

ご回答ありがとうございます。 >GUIで操作したいのであれば「Ubuntu」 >コンソールしか使わないのであれば「CentOS」 こちらは何故でしょうか? 一応、両方にGUIがあると思いますが……CentOSはセキュリティのアップデートが遅いから(という噂を聞いた)からでしょうか?
koichi-ezato

2017/02/08 05:21

自分が使った感覚ですが、Ubuntuの方がGUIでの操作がしやすかった覚えがあるからです。 CentOSの場合はGUIでも結局コンソールでほとんど操作してた記憶があります。 ただ、これはあくまで私の主観ですので、質問者様の好みでどちらを使うか決めた方が良いと思いますよ。
nnahito

2017/02/09 06:16

ご返信ありがとうございます。 確かにCentは、毎回Rootに入らないとほとんど作業できなかったりと面倒ですね…… Ubuntu Serverは少しゆるい感じがします。 ありがとうございます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問