Различные вопросы про линукс

  • Автор темы Автор темы _MBK_
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
А изначально МБК помогали, а не ругались. Повторяю — помогали.
 
Да вроде по всякому пробовал
Другое дело - там есть диски и без пробелов, просто одна буква, G например - туда тоже такой же Unknown error выдает
Выдает тот же Unknown error даже если просто на несуществующий путь захожу - они вообще как то дифференцируют ошибку?
 
Да вроде по всякому пробовал
Другое дело - там есть диски и без пробелов, просто одна буква, G например - туда тоже такой же Unknown error выдает
Выдает тот же Unknown error даже если просто на несуществующий путь захожу - они вообще как то дифференцируют ошибку?
Михаил, запусти smbtree, посмотри что да как. Это аналог форточного net view. А там уже решишь проблему, кажется.
 
  • Спасибо
Реакции: ~RA~ и _MBK_
bash: smbtree: command not found
Ее как то доустанавливать надо? *(
 
Если из коробки нет, то да, устанавливать.
 
Новый, возможно, немного дурацкий вопрос.
Существует ли возможность определить (желательно программно) количество открытых в данный момент терминальных сессий?
То есть, на компьютере запущена терминальная сессия, одновременно по сетке с другого компа подключились по SSH и запустили другую терминальную сессию, с третьего компа по xrdp запустили две терминальные сессии и т.д. Могу ли я как то отслеживать момент этих подключений в своей программе?
 
Существует ли возможность определить (желательно программно) количество открытых в данный момент терминальных сессий?
В консоли команда "w".
Наверняка есть графические решения, но навскидку не вспомню.
 
  • Спасибо
Реакции: _MBK_
На самом деле w и who это немножко разные команды, но, по идее, они представляют собой консольный интерфейс к /var/run/utmp
Получилось вот так
Но теперь другая беда - когда логинишься через xrdp под тем же пользователем, ни w ни who ни utmp этого соединения не видит, а надо *(
 
С xrdp ситуация иная, но вроде как можно:
ps aux | grep <user> | grep -i x11rdp

Наверное надо экспериментировать.
Тут обсуждали: How to kill a specific x11rdp session
 
Там вообще ситуация интересная - набираю из этой сессии "who am i" и ничего! *(
Пока что на данный момент единственный заднепроходный вариант в голову приходит - отслеживать наличие активного процесса lxterminal, но это как то совсем неспортивно *(
 
Продолжаю долго и мучительно обучаться линуксу, причем, непростым путем - нет, чтоб, как все нормальные люди, спрашивать на каком нибудь ЛОРе, а я спрашиваю тут ;)
В общем, задача: есть некий кусок кода, вызываемые из различных процессов, запущенных одновременно (доступ к устройству) Надо сделать так, чтобы каждый процесс перед выполнением данного куска кода ждал, чтобы его выполнение завершилось в других процессах, дабы не щемиться одновременно в одну дверь. Прочитал в умных манах про семафоры, решил, что это именно то, что мне надо и накорябал такой алгоритм: создаю бинарный семафор следующим образом:
Код:
...
while (sem_open(SEMAPHORE_NAME,O_RDWR)!=SEM_FAILED);  // ждем пока семафор существует - где то выполняется секция
sem_open(SEMAPHORE_NAME, O_CREAT, 0777, 0); //процесс освободился - создаем свой семафор
... // Выполняемая секция кода
sem_unlink(SEMAPHORE_NAME); //освободаем процесс - убиваем  свой семафор
...
Интуитивно понимаю что фигня, да и работает неправильно. А как надо? *('hz'
 
Семафоры в субботу вечером? c:(
 
Злые вы! Ушел я от вас на ЛОР
 
Мьютекс - бинарный семафор, но больно мудреный и избыточный для моей задачи.
Вообще говоря, на ЛОРе вопрос решили, все достаточно просто оказалось.
 
Статус
Закрыто для дальнейших ответов.