kill命令帶-s參數(shù)用來(lái)向進(jìn)程發(fā)送信號(hào)(SIG),可以用kill -l來(lái)查看信號(hào)說(shuō)明。
公司主營(yíng)業(yè)務(wù):網(wǎng)站建設(shè)、做網(wǎng)站、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)公司推出英吉沙免費(fèi)做網(wǎng)站回饋大家。
命令運(yùn)行時(shí)使用CTRL+Z,強(qiáng)制當(dāng)前進(jìn)程轉(zhuǎn)為后臺(tái),并使之掛起(暫停).
1. 使進(jìn)程恢復(fù)運(yùn)行(后臺(tái))
(1)使用命令bg
Example:
zuii@zuii-desktop:~/unp/tcpcliserv$ ./tcpserv01
*這里使用CTRL+Z,此時(shí)serv01是停止?fàn)顟B(tài)*
[1]+ Stopped ./tcpserv01
zuii@zuii-desktop:~/unp/tcpcliserv$ bg
[1]+ ./tcpserv01 *此時(shí)serv01運(yùn)行在后臺(tái)*
zuii@zuii-desktop:~/unp/tcpcliserv$
(2)如果用CTRL+Z停止了幾個(gè)程序呢?
Example:
zuii@zuii-desktop:~/unp/tcpcliserv$ jobs
[1]- Running ./tcpserv01
[2]+ Stopped ./tcpcli01 127.0.0.1
zuii@zuii-desktop:~/unp/tcpcliserv$ bg %1
bash: bg:任務(wù) 1 已轉(zhuǎn)入后臺(tái) *后臺(tái)運(yùn)行*
2. 使進(jìn)程恢復(fù)至前臺(tái)運(yùn)行
Example:
zuii@zuii-desktop:~/unp/tcpcliserv$ ./tcpserv04
[1]+ Stopped ./tcpserv04
zuii@zuii-desktop:~/unp/tcpcliserv$ fg
./tcpserv04
總結(jié):
(1) CTRL+Z掛起進(jìn)程并放入后臺(tái)
(2) jobs 顯示當(dāng)前暫停的進(jìn)程
(3) bg %N 使第N個(gè)任務(wù)在后臺(tái)運(yùn)行(%前有空格)
(4) fg %N 使第N個(gè)任務(wù)在前臺(tái)運(yùn)行
默認(rèn)bg,fg不帶%N時(shí)表示對(duì)最后一個(gè)進(jìn)程操作!
在嵌入式系統(tǒng)開(kāi)發(fā)應(yīng)用平臺(tái)中,tftp、nfs和samba服務(wù)器是最常用的文件傳輸工具,本文詳細(xì)的介紹一下Linux Samba服務(wù)器安裝配置,感興趣的可以了解一下
在嵌入式系統(tǒng)開(kāi)發(fā)應(yīng)用平臺(tái)中,tftp、nfs和samba服務(wù)器是最常用的文件傳輸工具,tftp和nfs是在嵌入式Linux開(kāi)發(fā)環(huán)境中經(jīng)常使用的傳輸工具,samba則是Linux和Windows之間的文件傳輸工具。
samba是模仿Windows網(wǎng)上鄰居的SMB的通訊協(xié)議,將Linux操作系統(tǒng)“假裝成”Windows操作系統(tǒng),通過(guò)網(wǎng)上鄰居的方式來(lái)進(jìn)行文件傳輸?shù)摹?/p>
虛擬機(jī)版本:VMware10
Linux操作系統(tǒng)版本:Red Hat Enterprise Linux 5
Samba服務(wù)器介紹
Samba是在Linux系統(tǒng)上實(shí)現(xiàn)SMB(Session MessageBlock)協(xié)議的一個(gè)免費(fèi)軟件,以實(shí)現(xiàn)文件共享和打印機(jī)服務(wù)共享。
Samba服務(wù)器組件
samba有兩個(gè)主要的進(jìn)程smbd和nmbd。smbd進(jìn)程提供了文件和打印服務(wù),而nmbd則提供了NetBIOS名稱服務(wù)和瀏覽支持,幫助SMB客戶定位服務(wù)器,處理所有基于UDP的協(xié)議。
Samba服務(wù)器相關(guān)的配置文件
/etc/samba/smb.conf
這是samba的主要配置文件,基本上僅有這個(gè)文件,而且這個(gè)配置文件本身的說(shuō)明非常詳細(xì)。主要的設(shè)置包括服務(wù)器全局設(shè)置,如工作組、NetBIOS名稱和密碼等級(jí),以及共享目錄的相關(guān)設(shè)置,如實(shí)際目錄、共享資源名稱和權(quán)限等兩大部分。
/etc/samba/lmhosts
早期的 NetBIOS name 需額外設(shè)定,因此需要這個(gè) lmhosts 的 NetBIOS name 對(duì)應(yīng)的 IP 檔。 事實(shí)上它有點(diǎn)像是 /etc/hosts 的功能!只不過(guò)這個(gè) lmhosts 對(duì)應(yīng)的主機(jī)名是 NetBIOS name 喔!不要跟 /etc/hosts 搞混了!目前 Samba 預(yù)設(shè)會(huì)去使用你的本機(jī)名稱 (hostname) 作為你的 NetBIOS name,因此這個(gè)檔案不設(shè)定也無(wú)所謂。
/etc/sysconfig/samba
提供啟動(dòng) smbd, nmbd 時(shí),你還想要加入的相關(guān)服務(wù)參數(shù)。
/etc/samba/smbusers
由于 Windows 與 Linux 在管理員與訪客的賬號(hào)名稱不一致,例如: administrator (windows) 及 root(linux), 為了對(duì)應(yīng)這兩者之間的賬號(hào)關(guān)系,可使用這個(gè)檔案來(lái)設(shè)定
/var/lib/samba/private/{passdb.tdb,secrets.tdb}
管理 Samba 的用戶賬號(hào)/密碼時(shí),會(huì)用到的數(shù)據(jù)庫(kù)檔案;
/usr/share/doc/samba-版本
這個(gè)目錄包含了 SAMBA 的所有相關(guān)的技術(shù)手冊(cè)喔!也就是說(shuō),當(dāng)你安裝好了 SAMBA 之后,你的系統(tǒng)里面就已經(jīng)含有相當(dāng)豐富而完整的 SAMBA 使用手冊(cè)了!值得高興吧! ^_^,所以,趕緊自行參考喔!
至于常用的腳本文件案方面,若分為服務(wù)器與客戶端功能,則主要有底下這幾個(gè)數(shù)據(jù):
/usr/sbin/{smbd,nmbd}:服務(wù)器功能,就是最重要的權(quán)限管理 (smbd) 以及 NetBIOS name 查詢 (nmbd) 兩個(gè)重要的服務(wù)程序;
/usr/bin/{tdbdump,tdbtool}:服務(wù)器功能,在 Samba 3.0 以后的版本中,用戶的賬號(hào)與密碼參數(shù)已經(jīng)轉(zhuǎn)為使用數(shù)據(jù)庫(kù)了!Samba 使用的數(shù)據(jù)庫(kù)名稱為 TDB (Trivial DataBase)。 既然是使用數(shù)據(jù)庫(kù),當(dāng)然要使用數(shù)據(jù)庫(kù)的控制指令來(lái)處理啰。tdbdump 可以察看數(shù)據(jù)庫(kù)的內(nèi)容,tdbtool 則可以進(jìn)入數(shù)據(jù)庫(kù)操作接口直接手動(dòng)修改帳密參數(shù)。不過(guò),你得要安裝 tdb-tools 這個(gè)軟件才行;
/usr/bin/smbstatus:服務(wù)器功能,可以列出目前 Samba 的聯(lián)機(jī)狀況, 包括每一條 Samba 聯(lián)機(jī)的 PID, 分享的資源,使用的用戶來(lái)源等等,讓你輕松管理 Samba 啦;
/usr/bin/{smbpasswd,pdbedit}:服務(wù)器功能,在管理 Samba 的用戶賬號(hào)密碼時(shí), 早期是使用 smbpasswd 這個(gè)指令,不過(guò)因?yàn)楹髞?lái)使用 TDB 數(shù)據(jù)庫(kù)了,因此建議使用新的 pdbedit 指令來(lái)管理用戶數(shù)據(jù);
/usr/bin/testparm:服務(wù)器功能,這個(gè)指令主要在檢驗(yàn)配置文件 smb.conf 的語(yǔ)法正確與否,當(dāng)你編輯過(guò) smb.conf 時(shí),請(qǐng)務(wù)必使用這個(gè)指令來(lái)檢查一次,避免因?yàn)榇蜃皱e(cuò)誤引起的困擾??!
/sbin/mount.cifs:客戶端功能,在 Windows 上面我們可以設(shè)定『網(wǎng)絡(luò)驅(qū)動(dòng)器機(jī)』來(lái)連接到自己的主機(jī)上面。在 Linux 上面,我們則是透過(guò) mount (mount.cifs) 來(lái)將遠(yuǎn)程主機(jī)分享的檔案與目錄掛載到自己的 Linux 主機(jī)上面哪!
/usr/bin/smbclient:客戶端功能,當(dāng)你的 Linux主機(jī)想要藉由『網(wǎng)絡(luò)上的芳鄰』的功能來(lái)查看別臺(tái)計(jì)算機(jī)所分享出來(lái)的目錄與裝置時(shí),就可以使用 smbclient來(lái)查看啦!這個(gè)指令也可以使用在自己的 SAMBA 主機(jī)上面,用來(lái)查看是否設(shè)定成功哩!
/usr/bin/nmblookup:客戶端功能,有點(diǎn)類(lèi)似 nslookup 啦!重點(diǎn)在查出 NetBIOS name 就是了
/usr/bin/smbtree:客戶端功能,這玩意就有點(diǎn)像 Windows 系統(tǒng)的網(wǎng)絡(luò)上的芳鄰顯示的結(jié)果,可以顯示類(lèi)似『靠近我的計(jì)算機(jī)』之類(lèi)的數(shù)據(jù), 能夠查到工作組與計(jì)算機(jī)名稱的樹(shù)狀目錄分布圖!
安裝Samba
首先確認(rèn)一下自己的Linux是否安裝了Samba,使用命令:
[root@localhost ~]# rpm -qa | grep samba
?
其中:samba、samba-common、samba-client三個(gè)程序是必須的。
如果沒(méi)有安裝,有兩種方式可以安裝:
第一種方式:yum安裝
yum是一個(gè)集與查找,安裝,更新和刪除程序的Linux軟件。它運(yùn)行在RPM包兼容的Linux發(fā)行版本上,如:RedHat、Fedora、SUSE、CentOS、Mandriva。
yum install -y samba
第二種方式:安裝包安裝
安裝包都在光盤(pán)里,首先需要掛載:
[root@localhost ~]# mount /dev/cdrom /mnt
這個(gè)時(shí)候,會(huì)出現(xiàn)一個(gè)問(wèn)題:
mount: block device /dev/sr0 is write-protected, mounting read-only
提示信息說(shuō),虛擬機(jī)掛著光驅(qū)光驅(qū)時(shí)提示只讀。用以下命令可解決該報(bào)錯(cuò):
mount -o remount,rw /dev/cdrom /mnt
此時(shí),我們會(huì)發(fā)現(xiàn),原本空的文件夾/mnt現(xiàn)在多了很多的文件。
?
在/mnt/Server文件夾中,會(huì)能找到關(guān)于Samba的安裝包:
?
找到安裝包之后,就是安裝Samba了(只需要安裝自己沒(méi)有的那個(gè)就行了)。使用命令:
rpm samba-3.0.25b-0.el5.4.i386.rpm
rpm samba-client-3.0.25b-0.el5.4.i386.rpm
rpm samba-commons-3.0.25b-0.el5.4.i386.rpm
安裝完之后,再使用命令驗(yàn)證一下是否安裝完成:
[root@localhost ~]# rpm -qa | grep samba
配置Samba
修改配置文件
samba服務(wù)器最主要的配置文件其實(shí)只有一個(gè),就是/etc/samba/samba.conf,這個(gè)配置文件可以分為兩個(gè)部分,一個(gè)部分是全局參數(shù),一部分是共享資源相關(guān)參數(shù)。
#1.全局部分參數(shù)設(shè)置:
[global]
#與主機(jī)名相關(guān)的設(shè)置
workgroup = zkhouse ==工作組名稱
netbios name = zkserver ==主機(jī)名稱,跟hostname不是一個(gè)概念,在同一個(gè)組中,netbios name必須唯一
serverstring = this is a test samba server ==說(shuō)明性文字,內(nèi)容無(wú)關(guān)緊要
#與登錄文件有關(guān)的設(shè)置
log file = /var/log/samba/log.%m ==日志文件的存儲(chǔ)文件名,%m代表的是client端Internet主機(jī)名,就是hostname
max log size = 50 ==日志文件最大的大小為50Kb
#與密碼相關(guān)的設(shè)置
security = share ==表示不需要密碼,可設(shè)置的值為share、user和server
passdb backend = tdbsam
#打印機(jī)加載方式
load printer = no ==不加載打印機(jī)
-----------------------------------------------------------
#2.共享資源設(shè)置方面:將舊的注釋掉,加入新的
#先取消[homes]、[printers]的項(xiàng)目,添加[temp]項(xiàng)目如下
[temp] ==共享資源名稱
comment = Temporary file space ==簡(jiǎn)單的解釋?zhuān)瑑?nèi)容無(wú)關(guān)緊要
path = /tmp ==實(shí)際的共享目錄
writable = yes ==設(shè)置為可寫(xiě)入
browseable = yes ==可以被所有用戶瀏覽到資源名稱,
guest ok = yes ==可以讓用戶隨意登錄
也就是說(shuō),將上面“#2共享資源設(shè)置方面”加入到配置文件的最后即可。
添加用戶并設(shè)置密碼
設(shè)置賬號(hào)用于登錄samba服務(wù)器,同時(shí)并設(shè)置密碼。具體命令:
[root@localhost ~]# useradd sambauser
[root@localhost ~]# smbpasswd -a sambauser
New SMB password:
Retype new SMB password:
重啟Samba服務(wù)器
[root@localhost ~]# /etc/init.d/smb restart
如果這段命令無(wú)法運(yùn)行,就是Samba沒(méi)有正確安裝的原因。
?
登錄Samba
在Windows和Linux網(wǎng)絡(luò)都暢通的情況下,在Windows下登錄Samba服務(wù)器。使用命令查看Samba的IP地址:
[root@localhost ~]# ifconfig
?
在Windows的運(yùn)行,輸入\\223.3.119.170(Samba對(duì)應(yīng)的IP地址):
?
這個(gè)時(shí)候會(huì)彈出登錄界面,直接輸入之前設(shè)置的登錄賬號(hào)和密碼就行了。
?
問(wèn)題匯總及補(bǔ)充
之前Samba的安裝和配置都是一步一步來(lái)的,沒(méi)有什么問(wèn)題。但是很多情況下,就是最后在Windows的運(yùn)行中,輸入了\\IP地址之后,沒(méi)有任何反應(yīng)。這是最麻煩的地方,因?yàn)橥耆恢朗鞘裁丛驅(qū)е碌?。下面提供幾個(gè)可能出問(wèn)題的地方:
網(wǎng)絡(luò)選擇
在配置Samba服務(wù)器的時(shí)候,網(wǎng)絡(luò)選擇為bridge橋連接。
?
這是因?yàn)椋阂WCLinux下的IP和Windows下的IP處于同一網(wǎng)段中,并且保證相互可以ping通。
怎么驗(yàn)證?
在Windows的命令行中,輸入命令ipconfig:
?
同時(shí)在Linux中輸入命令ifconfig(兩個(gè)命令不一樣,需要注意):
?
可以看到:兩個(gè)IP地址223.3.119.239和223.3.119.170之間前3個(gè)都是一樣的,只有最后一個(gè)不同,這就保證了在同一網(wǎng)段。如果前3位不同,可在Linux中使用命令:
[root@localhost ~]# ifconfig eth0 223.3.119.130
只需要保證只有最后一個(gè)不同即可。
接下來(lái)驗(yàn)證Windows和Linux之間的ping通,在Windows命令行中輸入ping Linux的IP地址:
?
結(jié)果如果不是timeout,就代表兩者之間ping通。
防火墻問(wèn)題
如果防火墻不關(guān)閉,Windows和Samba之間的連通可能會(huì)被阻擋。
Windows上關(guān)閉防火墻:控制面板-系統(tǒng)和安全-Windows防火墻-打開(kāi)或關(guān)閉Windows防火墻;
Linux上關(guān)閉防火墻:
[root@localhost ~]# setenforce 0
[root@localhost ~]# service iptables stop
?
記得要重啟Samba服務(wù)器。
權(quán)限問(wèn)題
可能會(huì)出現(xiàn)權(quán)限不夠的問(wèn)題,修改你想要的那個(gè)文件的權(quán)限。
[root@localhost ~]# chmod 777 /home
無(wú)法訪問(wèn)
如果用windows訪問(wèn)samba,跳出以下對(duì)話框的錯(cuò)誤:
無(wú)法訪問(wèn)。您可能沒(méi)有權(quán)限使用網(wǎng)絡(luò)資源。請(qǐng)與這臺(tái)服務(wù)器的管理員聯(lián)系以查明您是否有訪問(wèn)權(quán)限。
不允許一個(gè)用戶使用一個(gè)以上用戶名與一個(gè)服務(wù)器或共享資源的多重連接。中斷與此服務(wù)器或共享資源的所有連接,然后再試一次……或者直接重啟Windows。
怎么斷開(kāi)連接(即退出Samba服務(wù)器)呢?
在Windows的命令行中輸入:
net use * /delete /y
自動(dòng)連接
使每次打開(kāi)Linux自動(dòng)運(yùn)行smba服務(wù)器:
在終端中輸入setup-system service-找到smb,按下空格,便可選中-退出完成(注意切換用tab鍵)。