VueでWEBアプリ(28) windows側からubuntuのファイルを触って変になった
- T sakurako
- 2021年10月28日
- 読了時間: 3分
今回のは、アプリ作成というよりサブタイトルの通り、「windows側からubuntuのファイルを触って変になった」時の解決策です。
現在、これまでこの「VueでWEBアプリ」シリーズで作成してきたものとは別のアプリを作成していまして、そのアプリの機能として、入力された情報をExcelファイルとして出力するというものがあるのですが、その出力ファイルのテンプレートを修正しなければならなくなりました。
ですがその修正したテンプレートファイルの権限がPC再起動で消えてしまうというよくわからない事態がおきまして。
正直まだ原理はわかっていないのですが、一応解決させることはできたので、今後似たようなことが起こったとき面倒がないようにここに記録しておこうと思います。
備忘録のようなものなので読みにくいと思います。申し訳ありません。
環境
・VScode
・Ubuntu 18.04.4
基本的にファイルの表示・作成・修正はVScodeから、git pushなどgit関連はubuntuのターミナルから直接操作しています。(なぜかVScodeだとプッシュがうまくいかないため)
経緯
ubuntuではExcelファイルの編集はできないので、
windowsのエクスプローラーからubuntuのホームディレクトリの場所を探して、既存のテンプレートファイルをコピー・修正しました。
しかし、そのファイルをコミット・プッシュしようにもpermission deniedとなってしまったので、ls -alコマンドで確認すると、そのファイルはすべてのパーミッションがありませんでした。
---------- 1 ユーザ名 ユーザ名 39583 Oct 28 14:35 ファイル名.xlsx
chmod 755で権限を付与すると、コミット・プッシュはできました。
ですが、PCを再起動すると、付与したはずの権限が消えてしまっていました。
いろいろ試した調べた結果、どうやら
windows側からubuntuのファイルをいじると壊れることがあるらしく
流れとしては
windows側でコピーした対象のファイル、もしくは権限付与済みの対象のファイルに変更を加え保存
→ls- alで見たときのリンク数が0になる
→この状態で再起動すると権限が消える
というものでした。
解決
ubuntu内のテンプレートファイルディレクトリから、windows側にテンプレートファイルをコピー(今回はC:\Users\ユーザ名\Documents)、編集
→編集済みのExcelファイルを、ubuntuターミナルで
cp /mnt/../../filename.xlsx copyfilename.xlsx
でubuntuのテンプレートファイルディレクトリにコピー
この時点で権限系におかしなところなし
-rwxr-xr-x 1 ユーザ名 ユーザ名 39535 Oct 28 15:23 ファイル名.xlsx
→コミット・プッシュ
→PC再起動後も権限そのままであることを確認
Excelファイルを編集するとどうしてもファイルがおかしくなるようだったので、編集済みのものを他から持ってきて、そのうえでコミット・プッシュをしてしまえば権限が消えることがないことを確認できました。
これからもなにか修正があるたび
windowsのドキュメントフォルダ内のファイルを編集
→ubuntu側でwindows側からコピーして持ってくる
→コミット・プッシュ
この手順を踏まなければならないのはちょっと面倒ですが、現状他に策が無いので…。
Comments