同じマシン上の別のユーザーにデスクトップをリモートできますか?


13

仕事用のオフィスに物理的に留まっている仕事用Macでは、2つの異なるユーザーアカウントを使用して、仕事用のものと個人用のものとを分離したいと考えています。通常、「work」ユーザーとしてログインしたままにします。でも画面が大きいので、同時に見たいです。別のユーザーを選択できるように、組み込みのリモートデスクトップクライアントまたはサードパーティのVNCクライアントを使用して既存のマシンのログイン画面に接続できれば、素晴らしい設定が得られると思います。または、物理マシンがすでに別のユーザーとしてログインしている場合でも、特定のユーザーとして接続できます。

私は通常、「リモート管理」モードを有効にして(リモートデスクトップだけでなく)システムを使用しており、自宅でVNCクライアントを使用して、職場のMacデスクトップにアクセスすることがよくあります。これは私の日常ではありませんが。このモードでは、VNCクライアントはすぐに既存のデスクトップに接続します。代わりにこの接続を強制的にログイン画面に移動させる方法はありますか?VNCクライアントを使用して既存の画面に接続すると、それが試行されていることがわかり(期待どおりの無限のリグレスが得られる)、基本的な接続が機能します。別のユーザーを選択できるようにしたいだけです。

編集:問題の一部は、システムが接続を待機するバックグラウンドでVNCサーバーセッションを実行している可能性があることだと思います。アクティブなセッションに接続します。「リモート管理」をオンにした場合、または単に「画面共有」した場合に発生するようです。「open」コマンドで代替ユーザーを使用すると、自分の画面を制御できないというエラーが発生します。

明確にするために、両方のアカウントは私の仕事用コンピュータにあります。自宅から仕事用のコンピューターで「仕事用ユーザー」に接続したい。職場のデスクから、「仕事用ユーザー」としてログインします。仕事用コンピューターの「個人ユーザー」に接続できるようにしたいと考えています。

私の本当の問題は、接続のサーバー側で何が起こるかに関連していると思います。メイン画面/キーボードにログインしているユーザーがいる場合でも、OSにログインウィンドウを表示させたい。リモートログインユーザーがログイン画面を受信できる状況があることは知っています。ログインしたユーザーに接続したり、新しいログインに接続したりするという考えをあきらめる必要があるかもしれません。フレッシュログインモードに完全に切り替えることができれば、それが始まりです。

Mac OSでは、実行中のデスクトップに接続するだけでなく、リモート接続のログイン画面を表示するかどうかをどのように決定しますか?「リモート管理」をオンにすることと「画面共有」をオンにすることに関連していると思いました。しかし、「画面共有」をオンにしただけでも、既存の接続動作が得られます。


defaults writeの制限を緩和するハックはありますかScreen Sharing.app、または無料のVNCビューアの推奨事項はありますか?
amdyes

回答:


14

「仕事用アカウント」にARDを入力し、リモートコンピューターで次の操作を行って、同じリモートコンピューター上の「個人用アカウント」の画面共有ウィンドウを開きます。

SSHトンネルを作成します。それは10.9を使用して私のために動作します。

[システム環境設定]> [共有]で、ターミナルでリモートログイン(SSH)を有効にします。

ssh -NL 5901:localhost:5900 localhost

最後に、画面共有を使用して、(デフォルトのポート5900ではなく)localhost:5901に接続します。ポート5901の代わりに、他で使用されていないはるかに高いポートを使用できます。

画面共有アプリケーションは次の場所にあります。 /System/Library/CoreServices/Screen Sharing.app


これは5901を5900にリダイレクトするだけですか?実際には、サーバー側で新しいリモートログインプロセスを実行しません。
Chris Quenelle 2014年

SSHマンページ:: -Lローカル(クライアント)ホスト上の特定のポートが、リモート側の特定のホストおよびポートに転送されることを指定します。:: -Nリモートコマンドを実行しません。これは、ポートの転送だけに役立ちます(プロトコルバージョン2のみ)。
mindmischief 2014年

ああ、それは素晴らしいことです!最後に、仮想マシンに頼ったり、ログアウトして再度ログインしたりすることなく、メニューのローカライズされた文字列などをすばやく確認できます。
Asmus

これは本当に素晴らしいです。ついにLinuxの入れ子になったXのようなものです。シエラに取り組んでいます。別のユーザーのアカウントを2番目の仮想デスクトップで開くことは、常にアカウントを切り替えるよりもはるかに優れています。
タオ氏2016年

1
これは10.14 Mojaveでも動作します。私のような初心者のために、私は一時的な混乱を与えたいくつかのことを追加します:1. INTOをリモートしたいアカウントのターミナルでsshコマンドを入力し(アカウント1と呼びましょう)、そのプロセスをターミナルで実行したままにします。ターミナルは「ホスト 'localhost'の信頼性」を求めますが、それは正常なようです。SSHプロセスが機能していることを確認できる唯一のフィードバックは、ターミナルウィンドウのタイトルバーにあります。2.画面共有を起動したとき、それをリモートFROM(このアカウント2を呼び出す)するアカウントで行います
Gorb

4

ターミナルでopenコマンドを使用して、特定のユーザーを指定できます。

open vnc://user:password@hostname(or IP)

これは、ファインダーからGo Connect to Server(cmd+ k)とvnc:// hostname(or IP)を入力することでも実現できます。

1台のマシンでリモートで実行できるユーザーは2人だけです。


1
10.9でこれらの両方とも言う、「あなた自身のコンピューターを制御することはできません」どちらも効果的に画面共有を開きますが、これは許可されません。
mindmischief 2014年

「自分の画面を操作できない」というメッセージが表示されます。
Chris Quenelle、2014年

上記の編集から、それはおそらくそうではありません。自宅のコンピューターから各ユーザーに個別に接続してみましたか。
tron_jones 2014年

私の説明を介してそれを動作させることができました
mindmischief

同じマシンでユーザーがすでにログインしている新規ログイン画面が表示された場合は、「共有」設定で有効にしたアイテムを教えてください。
Chris Quenelle 2014年

1

@mindmischiefの回答を明確にするために、次の手順で設定します。

  1. (オプション)新しいユーザー(たとえば、作成vnc中)環境設定 / ユーザーパスワードを使用しています。
  2. [ 環境設定 / 共有]で画面共有リモートログインを有効にしました(アクセス許可します)。
  3. 動作することを確認しssh vnc@localhostます。
  4. 実行:(この投稿ssh -NL 5901:localhost:5900 vnc@localhostに従って)。

注:以外のユーザーを使用できますvnc。デバッグする-vvvには、sshコマンドに追加します。

次のコマンドでVNC接続を開きます。

open vnc://localhost:5901/

新しいユーザーの作成はどのようにオプションですか?ユーザーがいなくても接続するにはどうすればよいですか?[次のアクセスを許可する]で指定する必要があるようです
trainoasis

@trainoasis常に別の既存のユーザーにSSH接続できます。
kenorb

0

現在、これは組み込みの「画面共有」機能(単なる組み込みのVNCサーバー)でそのまま使用できます。

「システム環境設定→共有」に移動し、すべてのユーザーに対して「画面共有」を有効にします。これで、各ユーザーアカウントはVNCクライアントを使用して接続し、独自のセッションにログインできるようになります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.