私のサーバーはUbuntuです。 Sambaが誤ってインストールされたかどうかを知りたい。次のコマンドは正しいですか?
Sambaがインストールされていないようです。
$ samba --version
The program 'samba' is currently not installed. You can install it by typing:
$ ps -ef | grep smb
(empty)
インストールされていないようです。最終チェックとして何がインストールされているかについて、パッケージマネージャーに確認してください。しかし、インストールされていないように見えます。
次を使用して実行可能ファイルを検索することもできます
find / -executable -name samba
他の答えは間違いなく便利ですが、あなたが求めたものには正確には答えていません...つまり、Sambaがrunningかどうか、しかしSambaかどうか(残っている可能性のあるディスク上のファイルを確認することにより)またはSambaがシステムの知識でインストールされているかどうか、常にそうであるとは限りません。
dpkg
will not Sambaがインストールされているかどうかを通知します。 dpkg/aptを使用してインストールされたかどうかがわかります。たとえば、tarballを使用してSambaを最初からインストールする場合、Ubuntuインストールシステム全体は、Sambaが稼働している場合でも、Sambaがインストールされたことを認識していないことを忠実に通知します。
Sambaがインストールされていることを確認するには、実際にsambaを実行してみます。
smbd -V
インストールされている場合(実行されていなくても)、そのバージョンが報告されます。
同じチェックはSambaスイートのclientの部分でも実行できます。これは必ずしもサーバーにインストールされているとは限りません。
smbclient --version
ファイルシステムのサポートのために、念のため、mount.cifs -V
代わりに。厳密に言うと、これはSambaではなくCIFSサポートです。
Sambaプログラムがrunningであるかどうかを確認するには、Sambaスイートの実行中のプロセス(smbd、nmbd、winbind)を確認します。
Sudo ps waux | grep "[sn]mbd"
これは、プログラムが実行されていない場合は何も返さないか、Sambaスイートの一部のプロセスのリストを返します。
root 23942 0.0 0.3 299100 15176 ? Ss May24 0:00 /usr/sbin/smbd -D
root 23943 0.0 0.1 298532 4744 ? S May24 0:00 /usr/sbin/smbd -D
root 23944 0.0 0.1 298556 7408 ? S May24 0:00 /usr/sbin/smbd -D
root 23946 0.0 0.2 299092 9504 ? S May24 0:00 /usr/sbin/smbd -D
または、ポートをリッスンしているかどうかを確認できます。
Sudo netstat -nap | grep "[sn]mbd"
これは、プロセスが実行されていない場合は何も返さないか、プロセスがリッスンしているポートを通知します。
tcp 0 0 192.168.2.200:445 0.0.0.0:* LISTEN 23942/smbd
tcp 0 0 192.168.2.200:139 0.0.0.0:* LISTEN 23942/smbd
上記では、たとえば、私のsmbdはすべて(0.0.0.0)のリモートアドレスでリッスンしています。
別の方法は、チェックすることですSambaの場所で何かがリッスンしているかどうか TCPポート139および445:
Sudo fuser -n tcp 139
これは何も返さない(プログラムが実行されていない)か、実行中のプロセスのPIDを返します。
139/tcp: 23942
$ dpkg -L samba
で確認できます
パッケージsamba
がUbuntuにインストールされているかどうかを確認するには、次のコマンドを使用できます。
dpkg -s samba | grep Status
パッケージsamba
が提供するすべてのファイルを見つけるには:
dpkg -L samba
apt
の使用:
apt-cache policy samba
出力例:
samba:
Installed: (none)