SSブログ

LinuxをWindowsで始める 7 [Linux]

前にLinux初心者用の本を勧めようとしてなかったのですが、よくよく考えてみるとLinux初心者に良い本がありました。このブログと重なるところも多いのですが、通読するとかなりの事を覚えられると思います。ただリファレンスとしてはそんなに便利ではないですが、それはWebで一覧表などを見れば済む話です。なわけでご紹介。


まんがでわかるLinux シス管系女子 (日経BPパソコンベストムック)

まんがでわかるLinux シス管系女子 (日経BPパソコンベストムック)

  • 作者: Piro(結城洋志)
  • 出版社/メーカー: 日経BP社
  • 発売日: 2015/02/18
  • メディア: 単行本



まんがでわかるLinux シス管系女子(日経BP Next ICT選書)

まんがでわかるLinux シス管系女子(日経BP Next ICT選書)

  • 出版社/メーカー: 日経BP社
  • 発売日: 2015/02/18
  • メディア: Kindle版



まんがでわかるLinux シス管系女子2(日経BPパソコンベストムック)

まんがでわかるLinux シス管系女子2(日経BPパソコンベストムック)

  • 作者: Piro(結城洋志)
  • 出版社/メーカー: 日経BP社
  • 発売日: 2015/12/09
  • メディア: 単行本



まんがでわかるLinux シス管系女子 2(日経BP Next ICT選書)

まんがでわかるLinux シス管系女子 2(日経BP Next ICT選書)

  • 出版社/メーカー: 日経BP社
  • 発売日: 2015/12/09
  • メディア: Kindle版


日経Linuxかなんかで連載していましたが、一番まともで硬派な連載だったと思います。というか日経Linux自体が軸がぶれまくっている雑誌で、唯一ブレてない連載がこの本の元の連載でした。

女の子が主人公なのに硬派かよと言われるかもしれませんが、内容はわりと質実剛健です。日経Linuxで買った時に読んだだけで全部読んだわけじゃないですけど、図示して分かりやすくしているだけで中身は技術書そのものです。

ただシス管系と銘打たれているだけあって、システム管理でどちらかというと開発というより運用やネットワーク系に近いところを扱っている気がしました。なので開発バリバリやりたいぜという人にとってはちょっと知らなくてもいいこともあるかもなぁというところがあるかもしれません。とはいえ、知っていて損はないので通読をお勧めします。マンガだから比較的しんどくないし。


開発系の情報はわりとWebに転がっているので、ググれば済むことも多いですが、なんか一冊通しで何かをしている本は持っていると入りやすいですね。何とかを作るとか、最終目的がはっきりしていて興味が持てそうなものが良いと思います。ただあまりハードルが高すぎない事が重要でしょう。

いきなりディープラーニングがなんちゃらとかもいいと思いますが、ディープラーニングの本質とプログラミングの内容が絡んできてしまうと、どっちが引っかかっても先に進めなくなるので、Webで何とかとか自分が使ったことのあるサービスの縮小版を作ったりするのが良いでしょう。

それよりか自分に有益なものを作ってみた方が良い気はしますね。とはいえ、初めは思いついてもできないとか、できる事が思いつかないとかあると思うので、一通り本をなぞってみるのが良いと思います。そこから改造したりして勉強するのがセオリーかもしれません。





今回は前回で確認したWebサーバの使い方をやっていきたいと思います。前回Apacheを入れたのでそれをそのまま使っていきます。とはいえ前回入れていない人はいると思うので初めからやっていきます。

Bash on Windowsに入ってApache2を入れてデーモンを立ち上げます。コマンドは二つで済みます。

sudo apt install apache2
sudo service apache2 start


前は
sudo /etc/init.d/ apache2 start
で起動していたのになぜ違う、と思う人もいるかと思います。

違う理由は以下にあるのですが、指定された方法があればそっちを使った方が良いでしょう。
https://www.mk-mode.com/octopress/2014/04/08/linux-difference-of-service-start/

プロセスを見るとapache2のデーモンが立ち上がっているのが分かります。
$ ps ax
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:00 /init
    2 tty1     Ss     0:01 -bash
  342 ?        Ss     0:00 /usr/sbin/apache2 -k start
  345 ?        Sl     0:00 /usr/sbin/apache2 -k start
  346 ?        Sl     0:00 /usr/sbin/apache2 -k start
  409 tty1     R      0:00 ps ax


以下のURLでIEやFirefoxなどのブラウザでサンプルページがすでに見えます。
 http://localhost
もう立ち上がってはいるものの自分が示したいものは示せていません。

Linuxの設定ファイルは大抵/etcディレクトリにあります。それをエディタで編集して挙動を変えるわけですね。/etc/apache2 に各種設定ファイルがあります。公開されるディレクトリは/var/www/html にあるのですが、その設定は/etc/apache2/sites-available/000-default.conf に書いてあります。

<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        #ServerName www.example.com

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

色々書いてありますが、DocumentRootのところが公開されるディレクトリであることが分かります。ここの部分を変更すれば、指定のディレクトリを公開できるわけです。少し変えてみましょう。

sudo vi /etc/apache2/sites-available/000-default.conf

で編集をかけます。

DocumentRoot /var/www/html

DocumentRoot /var/www/html/test
に変更して保存します。

この場合、この行をコピペして元の行の行頭を#でコメントアウトして、コピーした行を編集するという方法を採ると、後々元に戻したい場合に非常に便利です。書く量の多さという点でもコピペした分楽できます。

更に今設定したディレクトリに新しいページを作ります。
cd /var/www/html/
sudo mkdir test
cd test
sudo vi index.html

適当にHTMLのページを書いて保存します。ただ日本語で「ほげほげ」と書いただけのファイルでもとりあえずは問題ありません。
sudo service apache2 restart

でデーモンを再起動してあげると、公開されるディレクトリも変わって、http://localhost を見ると上で作ったHTMLファイルが差し替えられて表示されます。「ほげほげ」と普通に出てくるかもしれませんし、ブラウザによっては文字化けして日本語が上手く出てこないかもしれません。

このようにして設定を変えて、その設定に沿ってリソースを用意するという操作がLinuxの基本操作になってくると思います。そのためには/etc のファイルとエディタと仲良くなっておく必要があります。とはいえ設定をいちいち覚えておくことは頻繁にやらない限りは現実的に無理なので、何かを見ながら設定という事になりますね。

次はBoWで作ったテキストファイルをWindowsエディタで開いたり、WindowsでLinux用のテキストファイルを作ったりしたいと思います。

タグ:Linux入門
コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0