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

WindowsのInsider Preview版でパッケージマネージャ「winget」が利用可能に」記事へのコメント

  • Cygwinのapt-cygの挙動が分かりやすいが、Windowsは現在使用中のファイルの更新ができない。
    つまりaptやbrewと違い、wingetでwingetの更新はできないし、Windows Terminalから呼び出したのならWindows Terminalの更新も失敗し、同様の理由からアンインストールも失敗する。
    いつもの再起動後に云々のメッセージダイアログが表示され、たかがひとつふたつのアプリの更新如きに再起動を要求されることだろう。
    セットアップを自動化したいのならDOS時代のSHARE.exeより続くファイル管理の仕方から修正しないとムリ。

    • by Anonymous Coward

      逆だよ、Windowsでは古くからファイルのmandatoryな排他ロックが完全かつセキュアに実装されているが、
      伝統的なUNIX/Linuxでは実装されていなかったの(最近はいろいろ事情が違うが)。

      ディスク上の実行ファイルや共有ライブラリだけ更新されても、実行中のプロセスが更新されるわけではない。
      実行プロセスを再起動せずに使い続けると、部分的に更新されたディスクファイルを読み取ることで、あらゆる予期しない不整合が発生する可能性がある。
      だからWindowsの方法はセキュアで正しいものだ。UNIX/Linuxの便利さは見せかけだけで、危険で不完全な方法だよ。

      エンジニアとして二流なくせにウェーイ系ITムラ社会の風潮に乗せられて安易にWindows叩きなんかするから、
      こういう恥ずかしい批判をしてしまうのだ。

      • by Anonymous Coward

        ファイルをロックするのとファイル名をロックするのは別じゃん。
        「最近」がいつかは知らんけど、UNIXでも実行中のファイルは書き換えられなかったけどな。
        (実行中のファイルの名前で新たなファイルを作ることはできる)
        書き換えられるやつもあったのはたしか。

        • by Anonymous Coward

          GNU/Linuxはだいたいrm /bin/rmできる
          それをどう優れてると宣うべきかは知らんが

          • by Anonymous Coward

            だからそれはファイル名を操作しているだけで、ファイルは操作してないんだよ。

            • ファイルシステムの実装にも依存するが、ファイル削除でファイル名触る必要なんてないだろ。

              Linuxだろうが差し替えて更新だとopen済みのファイルはreleaseされんし、されても困る。
              システム全体に更新を反映させるには、ファイルを使用していたプロセス全部落とすか、OS再起動しかない。

              使用中のファイルを差し替えられるから再起動不要なんてのは、詭弁としか思えん。

              親コメント
              • システム全体に更新を反映させるには、ファイルを使用していたプロセス全部落とすか、OS再起動しかない。

                実際そのとおり。ついでに言うと、最近のUbuntu Linuxでは(きっとDebian由来だろうけど)、パッケージマネージャでlibcやsystemdやカーネルなどを更新すると、/run/reboot-requiredという空ファイルを作って、再起動が必要なことを伝えてくる。さらに、その引き金になったパッケージを/run/reboot-required.pkgsに追記するので、これを見てもいい。

                親コメント
              • by Anonymous Coward

                だからrmはファイル削除しないんだよ。

              • by Anonymous Coward

                ディレクトリエントリの削除とでも言えば満足か?
                なんにせよファイル名なんて操作しない。

ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家

処理中...