furuhashilab / Tochizi-hai-OpenDataHackathon

都知事杯 オープンデータハッカソンのリポジトリ
https://furuhashilab.github.io/Tochizi-hai-OpenDataHackathon/
1 stars 0 forks source link

charites でconvert コマンドを実行して出てきたPermission deniedへの対処ログと学び #3

Open Ayako-T opened 2 years ago

Ayako-T commented 2 years ago

Permission denied  というメッセージが返ってきた image

Ayako-T commented 2 years ago

ls -l コマンドで、パーミッションを確認 image

Ayako-T commented 2 years ago

1文字目が、ディレクトリ(d)なのかファイル(-)なのかを表している 2文字目から先は、3文字ずつ、所有者(ここではayakot)、所有グループ, その他のアクセス権限を表している 3文字は、r(読み取り権限) 、w(書き込み権限)、x(事項権限)の順に並んでおり、これらの文字が表示されていれば権限あり、ハイフンで表されていたら権限なしということ

つまり、上の画像では上から2行目のd_yzone.geojsonについてayakotは読み取り及び書き込みの権限があるが、実行権限がないことがわかる

Ayako-T commented 2 years ago

chmod コマンドで権限を変更して、実行権限を得る r、w、xはそれぞれ4、2、1という数値に置き換えることができる(-は0)

所有者、所有グループ、その他の順に、それぞれに対して与えたい権限の数値の合計を打ち込み、最後にどのファイルやディレクトリ名を入れる

つまり、d_yzone.geojson のファイルについて、所有者に全権限(4+2+1=7), 所有グループとその他に読み取り権限のみ(4)を付与したい場合、 chmod 744 d_yzone.geojson となる

Ayako-T commented 2 years ago

実行し、権限を確認すると権限が思い通りに変わった image

Ayako-T commented 2 years ago

charites の convertコマンドは「その他」に実行権限がないとできないのではないかと考え、さらに権限を変更する

image

Ayako-T commented 2 years ago

image

これでもダメだった

Ayako-T commented 2 years ago

d_yzone.geojsonは元々 style.geojsonだったためコンバートしようとしていたのだが、そもそもcharites でyamlファイルにできるのはJSONファイルだった

新しくstyle.jsonファイルを作って、それで実行する image

Ayako-T commented 2 years ago

image 問題なく実行することができ、yamlファイルができた image

Ayako-T commented 2 years ago

ls -l コマンドで権限を確認すると、sytle.jsonに対して誰も実行権限を持っていないことがわかる

image

つまり、permission denied はconvertできないgeojsonファイルだったから表示されていたと言える また、JSONをyamlファイルにconvertする際に、実行権限は必要ないことがわかった