WSL上のUbuntuからWindows側のファイルにアクセスする方法
- はじめに
- Ubuntuの起動
- Windows上のファイルへのアクセス方法
- 課題1のSQLite3データベースファイルのアクセスについて
- Wordファイルの名前を変更する
- Ubuntu上で提出用Zipファイルを作成する
- 戻る
はじめに_
以下の手順でWindowsにWSLを使ってUbuntuをインストールしているとする。
Ubuntuの起動_
VcxSrv(XLaunch)の起動_
gnome-terminalを利用するので、まず、VcxSrv(XLaunch)を起動する。
デスクトップにあるアイコン「XLaunch」をクリックする。すると以下のウィンドウが開く。「Multiple windows」を選択し、「次へ」をクリックする。

「Start no client」を選択し、「次へ」をクリックする。

「次へ」をクリックする。

「完了」をクリックする。

デスクトップ右下のアイコンにXLaunchがあればちゃんと起動している。

gnome-terminalの起動_
gnome-terminalの利用で設定したgnome-terminalを起動する。
Ubuntuターミナルを起動し、ターミナル上で以下を起動する。
% gterm &
Windows上のファイルへのアクセス方法_
UbuntuからはアクセスできるWindowsのドライブ(CドライブとかDドライブとか)は以下のコマンドで確認できる。私の環境ではCドライブとDドライブが存在するので以下のように表示される。
% df -h Filesystem Size Used Avail Use% Mounted on rootfs 454G 114G 341G 25% / none 454G 114G 341G 25% /dev none 454G 114G 341G 25% /run none 454G 114G 341G 25% /run/lock none 454G 114G 341G 25% /run/shm none 454G 114G 341G 25% /run/user cgroup 454G 114G 341G 25% /sys/fs/cgroup C:\ 454G 114G 341G 25% /mnt/c D:\ 449G 314G 136G 70% /mnt/d
「C:\」というのがWindowsのCドライブであり、Ubuntuからみると「/mnt/c」というディレクトリとして存在している(アクセスできる)
WindowsのCドライブに移動してみる。
% cd /mnt/c % ls
cd, ls, mv, cpなどを使ってディレクトリの移動(フォルダの移動)などを行うことができる。Linuxコマンドについて詳しくは以下のページを参照のこと。
課題1のSQLite3データベースファイルのアクセスについて_
LETUSよりreport1.dbと 01_create_table.sql をダウンロードし、以下の手順でUbuntuのディレクトリにコピーする。
- WindowsのCドライブ上に「TUS_IP1」というフォルダを作成する。フォルダ名は半角文字にすること(右下のIMEのアイコンが「A」になっている状態で入力する。「あ」になっていたら全角文字なので「半角/全角」キーを押し切り替えること)
- 作成したTUS_IP1にダウンロードしたreport1.dbと 01_create_table.sql を移動させる。
- Ubuntuを起動する。
- アクセスできるか確認する。うまくいかない場合はWindows側で上述の手順ができているかを確認する。
% ls -1 /mnt/c/TUS_IP1 (以下のように表示されたらOK) 01_create_table.sql report1.db
- 作業ディレクトリを作成する。
% cd % mkdir -p ~/Report1 % cd ~/Report1 % cp /mnt/c/TUS_IP1/* ./ % ls -1 (以下のように表示されたらOK) 01_create_table.sql report1.db
- データベース操作に失敗したときのためにデータベースファイルのバックアップを取る
% cp -p report1.db report1.db.org
- データベースにアクセスしてみる。
% sqlite3 report1.db SQLite version 3.22.0 2018-01-22 18:45:57 Enter ".help" for usage hints. sqlite> .tables assignments lectures students departments registrations teachers sqlite> .schema students CREATE TABLE students ( s_id char(10), s_name char(30) NOT NULL, d_id int NOT NULL, e_year int NOT NULL, PRIMARY KEY (s_id), FOREIGN KEY (d_id) REFERENCES departments(d_id), CHECK (e_year > 1881) ); sqlite> .quit
Wordファイルの名前を変更する_
例年、ダウンロードしたレポート用のWordファイルをそのまま提出する学生がいるので、そのようなトラブル防止用にダウンロードしたファイルの名前を変更する。
- ダウンロードしたファイル名:20221117_HW1.docx
- 変更するファイル名:20221117_HW1-【学籍番号】.docx (学籍番号は半角英数字で記載すること)
Ubuntu上で提出用Zipファイルを作成する_
前提条件
- 解答が書き込まれているWordファイルがWindowsのCドライブ上に「TUS_IP1」というフォルダに20221117_HW1-9999999.docxという名前で保存されているとする。
- 上で示したように作業ディレクトリを作成し、report1.db上で課題の内容を実行しているとする。
- 20221117_HW1-9999999.docxを作業ディレクトリにコピーする。
% cd ~/Report1 % cp /mnt/c/TUS_IP1/20221117_HW1-9999999.docx ./ % ls -1 01_create_table.sql 20221117_HW1-9999999.docx (注:ファイル名が表示されていたらコピー成功) report1.db report1.db.org
- zipコマンドがあるか確認し、なければインストールする。
% which zip /usr/bin/zip (注:このようにインストール先が表示していればOK) (注:インストール先が表示されていない場合は以下のコマンドでインストール) % sudo apt install zip
- zipファイルを作成する
% zip Report1.zip 20221117_HW1-9999999.docx report1.db adding: 20221117_HW1-9999999.docx (deflated 14%) adding: report1.db (deflated 98%) % ls -1 01_create_table.sql 20221117_HW1-9999999.docx Report1.zip (注:このファイルが作成されていることを確認する) report1.db report1.db.org % unzip -l Report1.zip (注:ZIPファイルの中身を確認する。lengthは人によって違うのでこの例のとおりでなくてもよい) Archive: Report1.zip Length Date Time Name --------- ---------- ----- ---- 21854 2020-11-05 14:21 20221117_HW1-9999999.docx 53248 2020-11-05 14:00 report1.db --------- ------- 75102 2 files
- WindowsのCドライブ「TUS_IP1」フォルダにZIPファイルをコピーする
% cp Report1.zip /mnt/c/TUS_IP1/