Fedora27Workstationで仮想マシンの作り方

仮想マシンを作成するソフトとしてデフォルトで「Boxes」があるが、今回は「virt-manager」を使用する方法を紹介する。
$sudo dnf -y install virt-manager libvirt-daemon-config-network
上記のようにコマンドを打つと「仮想マシンマネージャー」がインストールされる。仮想マシンの作成、実行、削除、全てこのGUIで実行できる。

欲を言うと、ディスクの差分などは、コマンドで行うことになる。次にディスク関連のコマンドを書くとする。
ディスクの作成
$sudo qemu-img create -f qcow2 image.qcow2 40G
差分イメージを作る
$sudo qemu-img create -b org.qcow2 -f qcow2 diff.qcow2
差分イメージのマージ
$sudo qemu-img commit -f qcow2 diff.qcow2
イメージの圧縮
$sudo qemu-img convert -c -O qcow2 org.qcow2 compress.qcow2

私は、無線LANのノートパソコンで、このブログを書いているし、有線LAN環境ではないので、「ブリッジ」を作成して、サーバーを立てることができない。この方法だと、仮想マシンのネットワークはNAT環境しかできない。

ちなみに、Windowsのハイパーバイザ、Hyper-Vは、無線が使用できるようだ。

ここで書いている仮想マシン操作は、KVMというLinuxのもとから入っているハイパーバイザである。

独立したIPアドレスを持った仮想マシンを作成するには有線が必要で次のようにする必要がある。

sudo dnf -y install qemu-kvm libvirt virt-install bridge-utils virt-manager
lsmod | grep kvm
sudo systemctl start libvirtd
sudo systemctl enable libvirtd

ブリッジの作成
sudo nmcli con add type bridge ifname br0

ブリッジのスレーブの追加
sudo nmcli con add type bridge-slave ifname enp0s31f6 master bridge-br0
sudo nmcli con delete enp0s31f6 && sudo reboot

ブリッジのIPアドレス設定
sudo nmcli c modify bridge-br0 ipv4.addresses 192.168.0.500/24
sudo nmcli c modify bridge-br0 ipv4.method manual
sudo nmcli c modify bridge-br0 ipv4.gateway 192.168.0.1
sudo nmcli c modify bridge-br0 ipv4.dns 192.168.0.1

仮想マシンディスクを別ディスクに入れる場合のSELinuxに通知するコマンド
sudo setsebool -P virt_use_fusefs 1

作成した仮想マシンの中で、さらに、仮想マシン技術を使用したい場合の、ネスト設定
sudo vi /etc/modprobe.d/kvm-nested.conf
options kvm_intel nested=1
sudo modprobe -r kvm_intel
sudo modprobe kvm_intel
cat /sys/module/kvm_intel/parameters/nested
sudo virsh edit fedora26
<cpu mode=’host-passthrough’ />

vimをviとして使用する方法

vimをインストールする方法

#dnf -y install vim-enhanced

これをviとして、使用するには、使うユーザごとに

$vi ~/.bashrc

と、bashスタートアップシェルを修正する必要がある。aliasで「vi」とした場合「vim」が呼び出されるようにする。

alias vi='vim'

さらに、sudo環境で動作させるには、次の行に

alias sudo='sudo '

とする必要がある。

Fedora27WorkstationにLaravel 5.5を設置する

Laravel 5.5の動作環境は、「https://readouble.com/laravel/」によると

  • PHP >= 7.0.0
  • OpenSSL PHP拡張
  • PDO PHP拡張
  • Mbstring PHP拡張
  • Tokenizer PHP拡張
  • XML PHP拡張

なので、次のパッケージをインストールする。

  1. $su –
  2. #dnf -y install php php-common php-pdo php-mbstring php-xml php-pear
  3. #exit

次に「composer」をインストールします。composerの中身はphpなので、「https://getcomposer.org/」からダウンロードしても構いません。

  1. $su
  2. #dnf -y install composer
  3. #exit

composerを使ってLaravelをインストールします。次の例は、Laravel 5.5を「blog」というディレクリにインストールします。rootユーザでは実行しないでくださいとエラーが出てたので、一般ユーザで実行してください。/var/www/htmlなどに入れる場合 #chmod 755 /var/www を実行する必要があると思います。

  • $composer create-project –prefer-dist laravel/laravel blog “5.5.*”

10分程度かかります。赤色で囲まれたメッセージが出たときは、読んで、対応して、もう一度実行してください。

SELinux環境では次のコマンドも参考にしてください。

  • sudo semanage fcontext -a -t httpd_sys_content_t ‘/var/www/html(/.*)?’
  • sudo restorecon -R /var/www/html
  • sudo chcon -R -t httpd_cache_t /var/www/html/blog/storage
  • sudo chcon -R -t httpd_cache_t /var/www/html/blog/bootstrap/cache

その他、パーミッション設定

  • $sudo chmod 755 /var/www
  • $sudo chmod 777 /var/www/html
  • $sudo chmod -R 777 storage
  • $sudo chmod -R 777 bootstrap/cache

よくわからない設定 $sudo chown -R root:apache /var/www

最後に、/etc/httpd/conf/httpd.confのDocumentRootを「/var/www/html/blog/public/」に変更して「http://localhost」でアクセスして、「Laravel」と中央に表示されれば成功です。