質問: Railsを勉強していて仮想環境構築中です。下記コードを実行するとError?が出て先に進めなくなります。 $ vagrant ssh [vagrant@vagrant-centos65 ~]$ sudo yum -y install mariadb-serverを実行すると下記が表示されます。 Loaded plugins: fastestmirror, versionlock Loading mirror speeds from cached hostfile epel/metalink * base: ftp.jaist.ac.jp * epel: ftp.jaist.ac.jp * extras: ftp.jaist.ac.jp * updates: ftp.jaist.ac.jp base extras mysql-connedtors-community mysql-tools-community mysql56-community updates Setting up Install Process No package mariadb-server available. Error: Nothing to do そのあと$ sudo systemctl start mariadbを実行しようとすると sudo: systemctl: command not foundと表示され $ sudo mysql_secure_installationを実行しようとすると sudo: mysql_secure_installation: command not foundと表示されます。 何が原因でどうすれば解決できるでしょうか? ためしに$ mysql -u root -pと打ち込んでみましたが、 -bash: mysql: command not foundと表示されました。 何を打ち込んでもcommand not foundと表示されてしまうような感じがして先に進めない状態です。 よろしくお願いします。
回答: ホスト名からCentOS6.5をお使いだと思います。そして、本かサイトを参考にしているかと思います。 その場合、本またはサイトに書かれているように実行してもうまくはいきません。なぜなら、実行しているコマンドを見る限り、その本またはサイトはCentOS**7**について書かれているからです。CentOS6とCentOS7では下記のような違いがあります(他にもありますが、今回のエラーになったところだけあげます)。 * CentOS7ではMariaDBがデフォルトのレポジトリに含まれていますが、CentOS6では含まれていません。そのため、**CentOS6では、レポジトリを追加しない限り、`yum`でMariaDBをインストールすることはできません。** * CentOS7からサービスの管理方法がsystemdという仕組みに変更されました。`systemctl`はCentOS7から採用されたsystemd用のコマンドのため、**CentOS6では`systemctl`を使ってサービスを起動することはできません**。 本やサイトを参考にする場合は、その本やサイトに書いている環境(初めの方に書いてあります、本の「はじめに」等は読み飛ばしてはいけません)と全く同じものを用意してください。同じOSでもバージョンが違えば操作方法が異なります。 なお、もし、初心者向けの本やサイトに動作環境のOSやそのバージョンがどこにも書いていない場合、**悪書ですので参考にしないことをお勧めします**。(上級者向けは書いていないことがありますが、そういった所を察することができるような上級者を対象にしているため、参考にするのはまだ早いです。)