Как проверить, установлен ли Samba

Парсинг вывода df является лучшим, можно сделать портативно. Передача -P кому: df избегать его форматирующий вывод странным способом (Вы, вероятно, в безопасности везде, так как Вы захватываете первое поле, но Вам действительно нужно -P захватить точку монтирования, поскольку это может быть понижено к последующей строке, если предыдущие столбцы слишком широки).

device_name=$(df -P . | awk 'NR==2 {print $1}')

Обратите внимание, что некоторые системы позволяют именам устройств содержать пробел (IIRC, который имеет тенденцию происходить на OSX). Нет никакого портативного или удобного способа обработать этот случай.

Я не думаю, что существует лучший способ сделать это в соответствии с Linux. stat может дать Вам номер устройства (stat -c %t .), но если Вы хотите запись устройства под /dev, необходимо извлечь его из /proc, который df лучше в выполнении.

7
27.03.2014, 20:14
4 ответа
[114194] Проще всего проверить в менеджере пакетов. dpkg, yum, emerge и т.д. Если это не сработает, вам просто нужно набрать [114540]samba --version [114541] и если он на вашем пути, он должен сработать. Наконец, вы можете использовать [114542]find / -executable -name samba[114543], чтобы найти любой исполняемый файл с именем samba. Если этот тест отрицательный, то высока вероятность того, что у вас не установлена samba.[114195].
5
27.01.2020, 20:18

Есть еще более простой способ проверить наличие установленных программ. Вы можете проверить наличие любой установленной программы, набрав:

~$ which [program]

Итак, в этом случае

~$ which samba

Если она установлена, она дает вам ее местоположение. Если это не так, вы получите пустой вывод.

0
27.01.2020, 20:18

Используйте команду smbstatus

вы видите ниже. версия 3.6.23 -14.el6 _6 и статус вашего процесса samba и пользователя, группы и т.д...

1
27.01.2020, 20:18

В SMB версии 4.11.6 -Ubuntu выполните следующую команду:

sudo systemctl status smbd
2
03.03.2021, 09:21

Теги

Похожие вопросы