Ubuntu 初期設定

VirtualBox

・ホストキー
ファイル>環境設定>システム

右Ctrlがないので、
ファイル>環境設定>入力>仮想マシン>ホストキーの組み合わせ
という部分をAltに変更しておく。

これでAltで抜けれる。

・ネットワーク
仮想マシン>設定>ネットワーク>アダプター 1

ホストオンリーアダプタ
ホストOSにアタッチされている仮想NICを利用する。
ゲストから外部に出られない、ホストからゲストにはアクセスできる。

NAT
ゲストは外部に出られるが、ホストからゲストはポートフォーワーディングが必要。

ポートフォワーディングを設定する場合、
仮想マシン>設定>ネットワーク>アダプター 1>高度>ポートフォワーディング

ルールを追加し、ホストポートとゲストポートに22というように必要な番号を入力するだけ。必要なら80や443も追加する。

ブリッジアダプタ
ゲストがホストと同じネットワークになる。

ブリッジアダプタを使う場合、ゲストOSはDHCP自動でも手動固定でもOK。固定にする場合、右上のネットワークのEdit Connectionsから直接指定する。

SSH

sudo apt-get install openssh-server

/etc/init.d/ssh start
通常自動起動する。

/etc/ssh/sshd_confgi
にて以下追加(コメントアウトとして存在しているが面倒なので追加してしまう)

Port 22
PermitRootLogin yes
PasswordAuthentication yes

これでTeraTermから接続できる。以降はホスト側のTeraTermで作業。

ログインをコンソールへ

サーバ用途などの場合

sudo vi /etc/default/grub

quiet splashをtextに書き換える
GRUB_CMDLINE_LINUX_DEFAULT=”text”

書き換えたら以下を実行
sudo update-grub

コンソールで立ち上がるので、GUIを起動したい場合
startx
でGUIが起動する。

Ctrl+Alt+F1
でコンソールに戻る。
(このときxは起動している)

CUIで
Alt + F7
を押すとGUIを開く
(xが起動していないと違う画面にいく、そこからCtrl+Alt+F1で戻ってこれる)

Vim

sudo apt-get update
sudo apt-get install vim

.vimrcをホームディレクトリにコピーする。

xmodmapをホームディレクトリにコピーする。VirtualBoxやGUIで直接アクセスしない場合不要。

ホームディレクトリの.profileにxmodmap .xmodmapと記述する。上手く読み込まれない場合はGUIで自動起動するアプリケーションに追加する。

Ubuntuのキーバインド変更(xmodmap)

Apache

Apache設定

Apacheの設定、htaccessなど

Nginx

sudo apt-get update
sudo apt-get install -y nginx
sudo service nginx start

基本のルート
/var/www/html

アクセスログ
/var/log/nginx/access.log

コンフィグ
/etc/nginx/nginx.conf

いくつかの設定
/etc/nginx/sites-available/default

ドキュメントルートを変える
root xxx

PHP-FPMを使う場合は、
index index.php
もうひとつ、phpのlocationの中に以下を記入。
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;

PHP-FPM(FastCGIの実装)

sudo apt-get install -y php-fpm

サービス名がそのままじゃないので調べてみる。
service –status-all

起動できるか
sudo service php7.2-fpm start

設定書き換え
/etc/php/7.2/fpm/pool/www.conf
の中の
user,group,listen.owner,listen.group
をnginxに変更。
(今回はwww-dataだった。ps -auxで確認したほうがいい)

基本はこれでNginx+PHP-FPMで動くが、頻繁にタイムアウトする。
WSL上なのが問題なのかもしれない。

PHP(apache)

sudo apt-get install php
sudo apt-get install libapache2-mod-php
sudo /etc/init.d/apache2 restart

とりあえずこれでPHPファイルは実行できるようになる。

phpinfo()でphp.iniの場所を探すことができる。

display_errors = Onに変更しておく。

MySQL

sudo apt-get install mysql-server
インストールの途中でrootのパスワードを聞かれる、テストのため5678とする。

sudo apt-get install php-mysql
ここまでのphp, libapache2-mod-php, php-mysqlは全て自動的にphp7.0のが入る。

sudo /etc/init.d/apache2 restart
テストでMySQLにDBを作って接続してみる。

mysql -u root -p5678
create database db charset=utf8;
use db
create table tbl (id int) default charset ‘utf8’;
exit;

PHPで確認

これでDBの中に書き込まれるのが確認できた。

WordPress

通常、手動でインストールするが、
sudo apt-get install wordpress
という方法でも実行できる。

実行すると、
/usr/share/wordpress
に入る模様。

sudo ln -s /usr/share/wordpress /var/www/wp
でシンボリックリンクを作成。
これだと、wpディレクトリの中にwordpressディレクトリができてしまう。。。

/var/www/wp
の中で、
sudo unlink wordpress
で外れる。

sudo ln -s /usr/share/wordpress/ /var/www/wp
でも同じ。

シンボリックリンクなので、既にファイルがあってはダメか。
(既にwpディレクトリを作成してあった)

wpがない状態で、
sudo ln -s /usr/share/wordpress /var/www/wp
とやるとOK

最終的には
sudo ln -s /usr/share/wordpress /home/okamura/www/blog
とした。

あとはブラウザでアクセスするだけだが、wp-config.phpが存在しているので、
ブラウザから処理が進まない。

とりあえず、
mysql -u root -p5678
create database db charset=utf8;
などでdbを作成して、
wp-config.php
の名前を変え、
wp-config-sample.phpをwp-config.php
に変更して必要な設定を書き込めばOK。

パーミッション関連の設定

Ubuntu ユーザーの追加、設定、パーミッション

 その他

sudo apt-get install nkf

.bashrcに以下を書き込む

UbuntuでのIPアドレス固定化

Sambaのインストール

mountした共有フォルダにrsyncとcrontabでバックアップ設定

SoftEtherをUbuntuとWinにインストール

Ubuntu セキュリティ関連設定