Чи можу я віддалений робочий стіл іншому користувачеві на тій же машині?


13

На моєму комп'ютері Mac, який фізично залишається в моєму робочому кабінеті, я хочу тримати свою роботу окремо від особистої роботи за допомогою двох різних облікових записів користувачів. Я, як правило, залишаюсь увійти як "робочий" користувач. Але я хочу, щоб вони були одночасно видимими, оскільки у мене великий екран. Я думаю, що я міг би отримати гарне налаштування, якби я міг використовувати вбудований віддалений настільний клієнт або сторонній клієнт VNC для підключення до екрана входу на існуючій машині, щоб я міг вибрати іншого користувача. Або якби я міг підключитися як конкретний користувач, навіть якщо фізична машина вже зареєстрована як хтось інший.

Я зазвичай використовую свою систему з увімкненим режимом "віддаленого управління" (не лише віддаленим робочим столом), і я часто використовую клієнт VNC вдома, щоб отримати доступ до свого робочого столу Mac на роботі. Хоча це не мій розпорядок дня. У цьому режимі клієнт VNC негайно підключається до існуючого робочого столу. Чи є спосіб я змусити це з'єднання перейти на екран входу? Коли я використовую клієнт VNC для підключення до існуючого екрана, я бачу, що він намагається (ви отримуєте такий нескінченний регрес, який ви могли б очікувати), тому базове з'єднання працює. Я просто хочу, щоб я міг вибрати іншого користувача.

Редагувати: Я думаю, що проблема полягає в тому, що система може запускати сеанс сервера VNC у фоновому режимі, чекаючи, коли я підключусь. Він підключається до активного сеансу. Здається, це відбувається або тоді, коли в мене ввімкнено "дистанційне управління", або просто "спільний доступ до екрана". Використання альтернативного користувача в команді "відкрити" призводить до помилки про неможливість керування власним екраном.

Щоб було зрозуміло, обидва облікові записи є на моєму робочому комп’ютері. Вдома я хочу підключитися до свого "робочого користувача" на своєму робочому комп'ютері. З мого столу на роботі, увійшовши як "мій користувальницький користувач", я хочу мати можливість підключитися до "особистого користувача" на своєму робочому комп'ютері.

Я думаю, що моя реальна проблема пов'язана з тим, що відбувається на стороні сервера підключення. Я хочу, щоб ОС запустила вікно входу навіть через те, що на головному екрані / клавіатурі увійшов користувач. Я знаю, що за певних обставин користувач із віддаленим входом може отримати екран входу. Мені може знадобитися відмовитися від ідеї іноді підключатися до зареєстрованого користувача, а іноді підключатися до нового входу. Якщо я можу повністю переключитися на режим нового входу, це було б початком.

Як Mac OS вирішує, чи показувати екран входу для віддаленого з’єднання проти простого підключення вас до запущеного робочого столу? Я подумав, що це пов'язано з включенням "віддаленого управління" проти "обміну екраном". Але коли увімкнено лише "спільний доступ до екрана", я все одно отримую поведінку підключення до існуючого.


Мені хотілося б запитати, чи є defaults writeхак, який послаблює обмеження Screen Sharing.app, чи є рекомендація для безкоштовного перегляду VNC?
amdyes

Відповіді:


14

ARD у свій "робочий рахунок", а потім виконайте наступне на віддаленому комп'ютері, щоб відкрити вікно "Спільний доступ до екрана" до вашого "особистого облікового запису" на тому ж віддаленому комп'ютері.

Створіть тунель SSH. Він працює для мене, використовуючи 10.9.

Увімкніть віддалений вхід (SSH) у системних налаштуваннях> Спільний доступ та у запуску терміналу:

ssh -NL 5901:localhost:5900 localhost

Нарешті, використовуйте Screen Sharing для підключення до localhost: 5901 (замість типового порту 5900). Замість порту 5901 ви можете використовувати набагато більш високий порт, який не використовується нічим іншим.

Програма Screen Sharing розміщена тут: /System/Library/CoreServices/Screen Sharing.app


Це просто перенаправляє 5901 на 5900 так? Він фактично не запускає новий процес віддаленого входу на стороні сервера.
Кріс Квенел

Сторінка SSH :: -L Вказує, що даний порт на локальному (клієнтському) хості повинен бути пересланий на даний хост і порт на віддалену сторону. :: -N Не виконуйте віддалену команду. Це корисно лише для переадресації портів (лише версія 2 протоколу).
mindmischief

О боже мій, це чудово! Нарешті, я можу швидко перевірити такі речі, як локалізовані рядки в меню, не вдаючись до віртуальних машин чи виходу з системи та назад!
Асмус

Це дійсно чудово, нарешті щось на кшталт вкладеного X у Linux. Це працює на Сьєррі. Відкрити обліковий запис іншого користувача на другому віртуальному робочому столі набагато краще, ніж постійно перемикати акаунти.
Містер Тао

1
Це все ще працює під 10.14 Mojave. Для таких початківців, як я, я додав би кілька моментів, які викликали моє плутанину: 1. Ви вводите команду ssh у терміналі в обліковому записі, до якого ви хочете віддалено INTO (назвемо це рахунок 1) і залиште цей процес працювати в Терміналі . Термінал розкаже вам про "справжність хоста" localhost ", але це, здається, нормально. Єдиний відгук, який ви побачите, що процес SSH працює, знаходиться в заголовку рядка вікна терміналу. 2. Коли ви запускаєте Screen Sharing , ви робите це в обліковому записі, який ви хочете віддалити ВІД (зателефонувавши на цей рахунок 2).
Горб

4

Ви можете вказати конкретного користувача, використовуючи команду open у терміналі.

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

Це також можна досягти за допомогою Go Find to Server ( cmd+ k) з пошуку та введення vnc: // ім'я хоста (або IP)

Ви можете віддалено працювати на одній машині лише двома користувачами.


1
З 10.9 обидва з них кажуть: "Ви не можете керувати власним комп'ютером". Вони обоє ефективно відкривають загальний доступ до екрана, що цього не дозволяє.
mindmischief

Я отримую повідомлення про "Ви не можете керувати власним екраном".
Кріс Квенелль

Я бачу з вашої редакції вище, що це неможливо. Ви намагалися підключитися до кожного користувача з домашнього комп'ютера окремо.
tron_jones

Мені вдалося змусити його працювати через моє пояснення
mindmischief

Якщо у вас на тому ж апараті з'явився екран із свіжим входом, на який вже ввійшов користувач, будь ласка, скажіть мені, які саме елементи ви ввімкнули в ньому "Параметри спільного доступу".
Кріс Квенелль

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 Ви завжди можете сш іншим користувачем.
kenorb

0

На сьогоднішній день це спрацьовує за допомогою вбудованої функції "Спільний доступ до екрана" (яка є лише вбудованим сервером VNC).

Перейдіть до "Налаштування системи → Спільний доступ" та ввімкніть "Спільний доступ до екрана" для всіх користувачів. Тепер кожен обліковий запис користувача зможе підключитися за допомогою будь-якого клієнта VNC та увійти у свій власний сеанс.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.