パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Windows 10 Build 20150、WSL上でCUDAが利用可能に」記事へのコメント

  • by Anonymous Coward on 2020年06月26日 13時13分 (#3840948)

    1.inittabやrc.localなど起動時に一発走らせたいスクリプトを実行する手段がない
    2.固定IPを付ける手段がない

    が一番の不満点だったので「要望の多かったCUDAやDirectML」をみて
    えーそっちなの?って感想

    • by Anonymous Coward on 2020年06月26日 17時25分 (#3841169)

      ちょっと汚い hack ですが、WSL2 の init が起動時に /sbin/mount -a を呼び出すことを利用して、起動時に任意のスクリプトを起動する方法があります。

      1. /etc/fstab に次のような行を足します
      -----
      none none rc defaults 0 0
      -----

      2. /sbin/mount.rc という実行可能なファイル(スクリプト)を作ります。

      こうしておくと、init が /sbin/mount -a を実行し、/sbin/mount が fstab にある 'rc' というファイルシステムのマウントをするために /sbin/rc.mount を呼び出す、という仕掛けで、root 権限で /sbin/mount.rc が呼び出されます。
      /sbin/mount.rc に実行したいスクリプトを書いておけば、WSLの起動時にそれが実行される、ということになります。

      親コメント
      • by Anonymous Coward

        元コメ主です

        >/sbin/rc.mount を呼び出す

        /sbin/mount.rc の間違いですよね
        確かに現状mount -aのフックするというトリッキーな手段しかないのは把握しており
        トリッキーすぎるので何とかしてほしいなというのが感想です

        • by Anonymous Coward

          typoすんません /sbin/mount.rc ですね。

          トリッキーすぎますが、現状これしかないですよね。
          まぁ色々と要望をfeedbackして、いろんな人がvoteしてくれれば徐々に改善されるだろうと信じて、自分はこの件含めてちょいちょいfeedbackを入れてます。

    • by Anonymous Coward

      固定IPアドレスで使う、という思想自体がレガシーだからでは?

    • by Anonymous Coward

      inittdabがないのはWS2のせいではないのでは。
      そういうディストリビューションを使ってるだけですよね。
      個人的にはいまさらrc.localなんて見たくもないですが。

      • by Anonymous Coward

        inittabでもupstartでもsystemdでも何でもいいですが
        /initに何かしてもらう手段がないんですよ
        /initのソースコードも公開されていないし

        • by Anonymous Coward

          そんなあたりまでLinux準拠じゃないとヤダってダダこねるなら素直に仮想マシン使うべき。
          Windowsと混ざった状態で動くのが売りなんだから、各所がLinuxから外れるのは当然だろう。

    • by Anonymous Coward

      起動スクリプトはWindows側のタスクスケジューラで実行すればいいのでは。

      • by Anonymous Coward

        linux側で閉じたいんですよ

        • by Anonymous Coward

          cronに @bootを指定したらダメなの?WSL2で使えるかどうか確かめてないけど。

        • by Anonymous Coward

          WSL自体が閉じてないんだからその方向性で使おうと思うのが無謀なのでは。

    • by Anonymous Coward

      それら2つは、どちらも可能なので要望で上がっても方法を明示されるだけです。

      > 1.inittabやrc.localなど起動時に一発走らせたいスクリプトを実行する手段がない

      ディストリビューション変える(pengwinなど)か、Windowsのタスクスケジューラを使用しましょう。
      タスクスケジューラ使うのが確実でしょう。

      > 2.固定IPを付ける手段がない

      外部ネットワークにダイレクトにも変えられますし、プライベートな仮想ネットワークの中への配置でも構いません。
      もちろんデフォで用意されるNATの枠外のサブネットに置くなら、NATも作りなおすとか

      • by Anonymous Coward

        ちなみに pengwinのrc.localも、実現方法は、Windowsのタスクスケジューラですよ。

    • by Anonymous Coward

      「man 5 crontab」より
      @reboot Run once, at startup.

      • by Anonymous Coward

        いやそのcrondは誰が起動すんだよ

アレゲは一日にしてならず -- アレゲ研究家

処理中...