Linuxのファイル・ディレクトリの権限についてまとめます。
権限の区分
権限は、「所有者」「所有グループ」「その他」に対してそれぞれ設定することが出来る。
ls -l で確認すると、次のような権限の設定が表示される、
drwxr-xr-x
これは次のように分解して考えることが出来て、
d rwx r-x r-x
先頭がディレクトリであるという意味。次の9文字は3文字づつ区切って「所有者」「所有グループ」「その他」の順に表示されている。
権限の意味
rwxは、read権限あり、write権限あり、execute権限ありを意味している。権限のないものに関しては-と表示される。
実例を読み解く
ちなみに、上記のdrwxr-xr-xはApache Tomcatのデフォルト権限設定である。Apache Tomcatのデフォルト権限設定では所有者であればread、write、executeのすべての権限があり、グループとその他はread、execute権限を持っている。
この権限設定を見ると、起動や停止など運用するのはグループまたはその他のユーザーで、デプロイするのは所有者ユーザーにする想定なのかなということが読み取れる。
実際には、このあたりは自動化するのが一般的なのでGitLabにCommit&Pushしたらデプロイという自動化がされると考えてGitLabを実行しているユーザーをデプロイ先Tomcatの所有者に設定。そして、起動/停止はグループユーザーでShellスクリプトをcronに登録する。という感じになるでしょう。