はじめに
Windows on Linuxを使うとWindows10でLinuxを使うことができるようになります.
これを用いて,Ubuntuを動かすことができます.
しかし,新たに作成したファイルやディレクトリの初期パーミションによってはGitを使うときにエラーがでるなど,苦労することあります.
なので,初期パーミッションをただしく理解して設定しておくと安心してつかえるでしょう.
(私も初期パーミッションの設定でGitをうまく動かせずに苦労しました)
この記事を書く前にgitでcheckoutでpermission deniedが出る問題を書きました.
これはこれでうまくいったのですが,Ubuntuを閉じてしまうとパーミッションが初期パーミッションに変わってしまいとても不便でした.
なので,おおもとの設定を変更する必要があります.
※筆者はLinux初心者なので間違いがあったらすみません.
環境
今回の実行環境は以下の通りです.
OS:Windows 10
PC: HP HP Spectre x360
WSL(Windows Subsystem for Linux), Ubuntu
Windows on Linux(WSL)の初期設定を変更する.
まず,問題を確認してみます.以下のようにコマンドを打ちます.
$ ls -la
すると,画像のようになります.赤枠部分が初期パーミッション変更前につくったフォルダです.「rwxrwxrwx」というようにパーミッションが「777」と「全てのユーザーからの書き込みや削除を許可する」というようになっています.
このパーミッションだとGitを使うときにひっかかったので変更します.
通常,Linuxのパーミッションでは
- ディレクトリは755
-
ファイルは644
が基本となるので,そのように変更します.
新規作成されるファイルやディレクトリのパーミッションを制御するのが「umask」というコマンドです.これを以下のようにコマンドを打ちます.
下記の意味は,
[現在のパーミッションの値]-[指定した数値]
を表します.
なので初期パーミッションが777と設定されいれば
777 - 022 = 755
また666なら
666 - 022 = 644
となります.
$ umask 022
このコマンドをうったあとにmkdirで新規フォルダやファイルを作成すると初期パーミッションが777なら755というように変更されているはずです.
しかし,ただコマンドを打つだけだと,ubuntuを再起動したときにまた先ほどのコマンドを打つ必要があるので,そうならないように設定を変更します.
Linuxを導入したときに.profileという環境変数を読み込むファイルができます.
そのファイルの最後の行に
umask 022
と記述すると,ubuntuが起動するたびにパーミッションの値が変更されるようになります.
なので,今回はnano editorを使ってコマンドライン上から.profileを編集しました.nano editorのインストールの仕方や使い方はこちらのHPが参考になるかと思います.
以下のようにして.profileを開き,
$ nano .profile
画像のように「umask 022」を追加します.そしてファイルを保存すれば設定変更は終了です.
それでは,ubuntuを再起動したあとmkdirでファイルやフォルダをつくってみましょう.
すると上手くパーミッションが755と変更されているので成功です!
おわりに
初心者なのでLinux大変ですが,なかなか面白いものです.
参考程度に参考にしてください.