| 1 | <?xml version='1.0' encoding='UTF-8'?> |
1 | <?xml version='1.0' encoding='UTF-8'?> |
| 2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/quick-samba-howto.xml,v 1.9 2004/08/01 11:40:20 swift Exp $ --> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/quick-samba-howto.xml,v 1.40 2008/05/02 04:46:22 nightmorph Exp $ --> |
| 3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
|
|
4 | |
| 4 | <guide link="quick-samba-howto.xml"> |
5 | <guide link="/doc/en/quick-samba-howto.xml"> |
|
|
6 | |
| 5 | <title>Gentoo Samba3/CUPS/Clam AV HOWTO</title> |
7 | <title>Gentoo Samba3/CUPS HOWTO</title> |
|
|
8 | |
| 6 | <author title="Author"> |
9 | <author title="Author"> |
| 7 | <mail link="daff at dword dot org">Andreas "daff" Ntaflos</mail> |
10 | Andreas "daff" Ntaflos <!--daff at dword dot org--> |
| 8 | </author> |
11 | </author> |
| 9 | <author title="Author"> |
12 | <author title="Author"> |
| 10 | <mail link="joshua@sungentoo.homeunix.com">Joshua Preston</mail> |
13 | <mail link="joshua@sungentoo.homeunix.com">Joshua Preston</mail> |
| 11 | </author> |
14 | </author> |
|
|
15 | <author title="Editor"> |
|
|
16 | <mail link="nightmorph@gentoo.org">Joshua Saddler</mail> |
|
|
17 | </author> |
| 12 | |
18 | |
| 13 | <abstract> |
19 | <abstract> |
| 14 | Setup, install and configure a Samba Server under Gentoo that shares |
20 | Setup, install and configure a Samba server under Gentoo that shares files and |
| 15 | files, printers without the need to install drivers and provides |
21 | printers without the need to install drivers. |
| 16 | automatic virus scanning. |
|
|
| 17 | </abstract> |
22 | </abstract> |
| 18 | |
23 | |
| 19 | <!-- The content of this document is licensed under the CC-BY-SA license --> |
24 | <!-- The content of this document is licensed under the CC-BY-SA license --> |
| 20 | <!-- See http://creativecommons.org/licenses/by-sa/1.0 --> |
25 | <!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
| 21 | <license/> |
26 | <license/> |
| 22 | |
27 | |
| 23 | <version>1.6</version> |
28 | <version>1.25</version> |
| 24 | <date>August 01, 2004</date> |
29 | <date>2008-05-01</date> |
| 25 | |
30 | |
| 26 | <chapter> |
31 | <chapter> |
| 27 | <title>Introduction to this HOWTO</title> |
32 | <title>Introduction to this HOWTO</title> |
| 28 | <section> |
33 | <section> |
| 29 | <title>Purpose</title> |
34 | <title>Purpose</title> |
| 30 | <body> |
35 | <body> |
| 31 | |
36 | |
| 32 | <p> |
37 | <p> |
| 33 | This HOWTO is designed to help you move a network from many different |
38 | This HOWTO is designed to help you move a network from many different clients |
| 34 | clients speaking different languages, to many different machines that |
39 | speaking different languages, to many different machines that speak a common |
| 35 | speak a common language. The ultimate goal is to help differing |
40 | language. The ultimate goal is to help differing architectures and technologies, |
| 36 | architectures and technologies, come together in a productive, |
41 | come together in a productive, happily coexisting environment. |
| 37 | happily coexisting environment. |
|
|
| 38 | </p> |
|
|
| 39 | |
|
|
| 40 | <p> |
42 | </p> |
|
|
43 | |
|
|
44 | <p> |
| 41 | Following the directions outlined in this HOWTO should give you an |
45 | Following the directions outlined in this HOWTO should give you an excellent |
| 42 | excellent step towards a peaceful cohabitation between Windows, and |
46 | step towards a peaceful cohabitation between Windows, and virtually all known |
| 43 | virtually all known variations of *nix. |
47 | variations of *nix. |
| 44 | </p> |
|
|
| 45 | |
|
|
| 46 | <p> |
48 | </p> |
|
|
49 | |
|
|
50 | <p> |
| 47 | This HOWTO originally started not as a HOWTO, but as a FAQ. It was |
51 | This HOWTO originally started not as a HOWTO, but as a FAQ. It was intended to |
| 48 | intended to explore the functionality and power of the Gentoo system, |
52 | explore the functionality and power of the Gentoo system, portage and the |
| 49 | portage and the flexibility of USE flags. Like so many other projects, |
53 | flexibility of USE flags. Like so many other projects, it was quickly discovered |
| 50 | it was quickly discovered what was missing in the Gentoo realm: there |
54 | what was missing in the Gentoo realm: there weren't any Samba HOWTOs catered |
| 51 | weren't any Samba HOWTO's catered for Gentoo users. These users are |
55 | for Gentoo users. These users are more demanding than most; they require |
| 52 | more demanding than most; they require performance, flexibility and |
56 | performance, flexibility and customization. This does not however imply that |
| 53 | customization. This does not however imply that this HOWTO was not |
|
|
| 54 | intended for other distributions; rather that it was designed to work |
57 | this HOWTO was not intended for other distributions; rather that it was designed |
| 55 | with a highly customized version of Samba. |
58 | to work with a highly customized version of Samba. |
| 56 | </p> |
|
|
| 57 | |
|
|
| 58 | <p> |
59 | </p> |
|
|
60 | |
|
|
61 | <p> |
| 59 | This HOWTO will describe how to share files and printers between Windows |
62 | This HOWTO will describe how to share files and printers between Windows PCs and |
| 60 | PCs and *nix PCs. It will also demonstrate the use of the VFS (Virtual |
|
|
| 61 | File System) feature of Samba to incorporate automatic virus protection. |
|
|
| 62 | As a finale, it will show you how to mount and manipulate shares. |
63 | *nix PCs. It will also show you how to mount and manipulate shares. |
| 63 | </p> |
|
|
| 64 | |
|
|
| 65 | <p> |
64 | </p> |
|
|
65 | |
|
|
66 | <p> |
| 66 | There are a few topics that will be mentioned, but are out of the |
67 | There are a few topics that will be mentioned, but are out of the scope of this |
| 67 | scope of this HOWTO. These will be noted as they are presented. |
68 | HOWTO. These will be noted as they are presented. |
| 68 | </p> |
|
|
| 69 | |
|
|
| 70 | <p> |
69 | </p> |
|
|
70 | |
|
|
71 | <p> |
| 71 | This HOWTO is based on a compilation and merge of an excellent HOWTO |
72 | This HOWTO is based on a compilation and merge of an excellent HOWTO provided |
| 72 | provided in the <uri link="http://forums.gentoo.org">Gentoo forums</uri> |
73 | in the <uri link="http://forums.gentoo.org">Gentoo forums</uri> by Andreas |
| 73 | by Andreas "daff" Ntaflos and the collected knowledge of Joshua Preston. |
74 | "daff" Ntaflos and the collected knowledge of Joshua Preston. The link to this |
| 74 | The link to this discussion is provided below for your reference: |
75 | discussion is provided below for your reference: |
| 75 | </p> |
76 | </p> |
| 76 | |
77 | |
| 77 | <ul> |
78 | <ul> |
| 78 | <li> |
79 | <li> |
| 79 | <uri link="http://forums.gentoo.org/viewtopic.php?t=110931">HOWTO |
80 | <uri link="http://forums.gentoo.org/viewtopic.php?t=110931">HOWTO |
| 80 | CUPS+Samba: printing from Windows & Linux</uri> |
81 | CUPS+Samba: printing from Windows & Linux</uri> |
| 81 | </li> |
82 | </li> |
| 82 | </ul> |
83 | </ul> |
| 83 | |
84 | |
| 84 | </body> |
85 | </body> |
| … | |
… | |
| 87 | <title>Before you use this guide</title> |
88 | <title>Before you use this guide</title> |
| 88 | <body> |
89 | <body> |
| 89 | |
90 | |
| 90 | <p> |
91 | <p> |
| 91 | There are a several other guides for setting up CUPS and/or Samba, please read |
92 | There are a several other guides for setting up CUPS and/or Samba, please read |
| 92 | them as well, as they may tell you things left out of this HOWTO (intentional |
93 | them as well, as they may tell you things left out of this HOWTO (intentional or |
| 93 | or otherwise). One such document is the very useful and well written <uri |
94 | otherwise). One such document is the very useful and well written <uri |
| 94 | link="/doc/en/printing-howto.xml">Gentoo Printing Guide</uri>, as configuration |
95 | link="/doc/en/printing-howto.xml">Gentoo Printing Guide</uri>, as configuration |
| 95 | issues and specific printer setup is not discussed here. |
96 | issues and specific printer setup is not discussed here. |
| 96 | </p> |
97 | </p> |
| 97 | |
98 | |
| 98 | </body> |
99 | </body> |
| … | |
… | |
| 100 | <section> |
101 | <section> |
| 101 | <title>Brief Overview</title> |
102 | <title>Brief Overview</title> |
| 102 | <body> |
103 | <body> |
| 103 | |
104 | |
| 104 | <p> |
105 | <p> |
| 105 | After presenting the various USE flags, the following list will outline |
106 | After presenting the various USE flags, the following list will outline all of |
| 106 | all of the topics covered as they are presented: |
107 | the topics covered as they are presented: |
| 107 | </p> |
108 | </p> |
| 108 | |
109 | |
| 109 | <ul> |
110 | <ul> |
| 110 | <li>On the Samba server: |
111 | <li>On the Samba server: |
| 111 | <ul> |
112 | <ul> |
| 112 | <li>Install and configure CLAM-AV</li> |
|
|
| 113 | <li>Install and configure Samba</li> |
113 | <li>Install and configure Samba</li> |
| 114 | <li>Install and configure CUPS</li> |
114 | <li>Install and configure CUPS</li> |
| 115 | <li>Adding the printer to CUPS</li> |
115 | <li>Adding the printer to CUPS</li> |
| 116 | <li>Adding the PS drivers for the Windows clients</li> |
116 | <li>Adding the PS drivers for the Windows clients</li> |
| 117 | </ul> |
117 | </ul> |
| … | |
… | |
| 141 | We will need the following: |
141 | We will need the following: |
| 142 | </p> |
142 | </p> |
| 143 | |
143 | |
| 144 | <ul> |
144 | <ul> |
| 145 | <li>net-fs/samba</li> |
145 | <li>net-fs/samba</li> |
| 146 | <li>app-antivirus/clamav</li> |
|
|
| 147 | <li>net-print/cups</li> |
146 | <li>net-print/cups</li> |
| 148 | <li>net-print/foomatic</li> |
147 | <li>net-print/foomatic</li> |
| 149 | <li>net-print/hpijs (if you have an HP printer)</li> |
148 | <li>net-print/hplip (if you have an HP printer)</li> |
| 150 | <li>A kernel of sorts (preferably 2.4.24+ or 2.6.x)</li> |
149 | <li>A kernel of sorts (2.6)</li> |
| 151 | <li>A printer (PS or non-PS, maybe not TOO new or fancy)</li> |
150 | <li>A printer (PS or non-PS)</li> |
| 152 | <li> |
151 | <li> |
| 153 | A working network (home/office/etc) consisting of more than one machine) |
152 | A working network (home/office/etc) consisting of more than one machine) |
| 154 | </li> |
153 | </li> |
| 155 | </ul> |
154 | </ul> |
| 156 | |
155 | |
| 157 | <p> |
156 | <p> |
| 158 | The main package we use here is net-fs/samba, however, you will need |
157 | The main package we use here is <c>net-fs/samba</c>, however, you will need a |
| 159 | a kernel with smbfs support enabled in order to mount a samba or windows |
158 | kernel with CIFS support enabled in order to mount a Samba or Windows share from |
| 160 | share from another computer. CUPS will be emerged if it is not already. |
159 | another computer. CUPS will be emerged if it is not already. |
| 161 | app-antivirus/clamav will be used also, but others should be easily adapted |
|
|
| 162 | to work with Samba. |
|
|
| 163 | </p> |
160 | </p> |
| 164 | |
161 | |
| 165 | </body> |
162 | </body> |
| 166 | </section> |
163 | </section> |
| 167 | </chapter> |
164 | </chapter> |
| … | |
… | |
| 171 | <section> |
168 | <section> |
| 172 | <title>The USE Flags</title> |
169 | <title>The USE Flags</title> |
| 173 | <body> |
170 | <body> |
| 174 | |
171 | |
| 175 | <p> |
172 | <p> |
| 176 | Before emerging anything, take a look at the various USE flags |
173 | Before emerging anything, take a look at some of the various USE flags available |
| 177 | available to Samba. |
174 | to Samba. |
| 178 | </p> |
175 | </p> |
| 179 | |
176 | |
| 180 | <pre caption="Samba uses the following USE Variables:"> |
177 | <pre caption="Samba uses the following USE Variables:"> |
| 181 | kerberos mysql xml acl cups ldap pam readline python oav |
178 | kerberos acl cups ldap pam readline python winbind |
| 182 | </pre> |
179 | </pre> |
| 183 | |
180 | |
| 184 | <p> |
181 | <p> |
| 185 | Depending on the network topology and the specific requirements of |
182 | Depending on the network topology and the specific requirements of the server, |
| 186 | the server, the USE flags outlined below will define what to include or |
183 | the USE flags outlined below will define what to include or exclude from the |
| 187 | exclude from the emerging of Samba. |
184 | emerging of Samba. |
| 188 | </p> |
185 | </p> |
| 189 | |
186 | |
| 190 | <table> |
187 | <table> |
| 191 | <tr> |
188 | <tr> |
| 192 | <th><b>USE flag</b></th> |
189 | <th><b>USE flag</b></th> |
| 193 | <th>Description</th> |
190 | <th>Description</th> |
| 194 | </tr> |
191 | </tr> |
| 195 | <tr> |
192 | <tr> |
| 196 | <th><b>kerberos</b></th> |
193 | <th><b>kerberos</b></th> |
| 197 | <ti> |
194 | <ti> |
| 198 | Include support for Kerberos. The server will need this if it is |
195 | Include support for Kerberos. The server will need this if it is intended |
| 199 | intended to join an existing domain or Active Directory. See the note |
196 | to join an existing domain or Active Directory. See the note below for more |
| 200 | below for more information. |
197 | information. |
| 201 | </ti> |
|
|
| 202 | </tr> |
|
|
| 203 | <tr> |
|
|
| 204 | <th><b>mysql</b></th> |
|
|
| 205 | <ti> |
|
|
| 206 | This will allow Samba to use MySQL in order to do password authentication. |
|
|
| 207 | It will store ACLs, usernames, passwords, etc in a database versus a |
|
|
| 208 | flat file. If Samba is needed to do password authentication, such as |
|
|
| 209 | acting as a password validation server or a Primary Domain Controller |
|
|
| 210 | (PDC). |
|
|
| 211 | </ti> |
|
|
| 212 | </tr> |
|
|
| 213 | <tr> |
|
|
| 214 | <th><b>xml</b></th> |
|
|
| 215 | <ti> |
|
|
| 216 | The xml USE option for Samba provides a password database backend allowing |
|
|
| 217 | Samba to store account details in XML files, for the same reasons listed in |
|
|
| 218 | the mysql USE flag description. |
|
|
| 219 | </ti> |
198 | </ti> |
| 220 | </tr> |
199 | </tr> |
| 221 | <tr> |
200 | <tr> |
| 222 | <th><b>acl</b></th> |
201 | <th><b>acl</b></th> |
| 223 | <ti> |
202 | <ti> |
| 224 | Enables Access Control Lists. The ACL support in Samba uses a patched |
203 | Enables Access Control Lists. The ACL support in Samba uses a patched |
| 225 | ext2/ext3, or SGI's XFS in order to function properly as it extends more |
204 | ext2/ext3, or SGI's XFS in order to function properly as it extends more |
| 226 | detailed access to files or directories; much more so than typical *nix |
205 | detailed access to files or directories; much more so than typical *nix |
| 227 | GID/UID schemas. |
206 | GID/UID schemas. |
| 228 | </ti> |
207 | </ti> |
| 229 | </tr> |
208 | </tr> |
| 230 | <tr> |
209 | <tr> |
| 231 | <th><b>cups</b></th> |
210 | <th><b>cups</b></th> |
| 232 | <ti> |
211 | <ti> |
| 233 | This enables support for the Common Unix Printing System. This |
212 | This enables support for the Common Unix Printing System. This provides an |
| 234 | provides an interface allowing local CUPS printers to be shared to |
213 | interface allowing local CUPS printers to be shared to other systems in the |
| 235 | other systems in the network. |
214 | network. |
| 236 | </ti> |
215 | </ti> |
| 237 | </tr> |
216 | </tr> |
| 238 | <tr> |
217 | <tr> |
| 239 | <th><b>ldap</b></th> |
218 | <th><b>ldap</b></th> |
| 240 | <ti> |
219 | <ti> |
| 241 | Enables the Lightweight Directory Access Protocol (LDAP). If Samba is |
220 | Enables the Lightweight Directory Access Protocol (LDAP). If Samba is |
| 242 | expected to use Active Directory, this option must be used. This would |
221 | expected to use Active Directory, this option must be used. This would be |
| 243 | be used in the event Samba needs to login to or provide login to |
222 | used in the event Samba needs to login to or provide login to a |
| 244 | a Domain/Active Directory Server. The kerberos USE flag is needed for |
223 | Domain/Active Directory Server. The kerberos USE flag is needed for proper |
| 245 | proper functioning of this option. |
224 | functioning of this option. |
| 246 | </ti> |
225 | </ti> |
| 247 | </tr> |
226 | </tr> |
| 248 | <tr> |
227 | <tr> |
| 249 | <th><b>pam</b></th> |
228 | <th><b>pam</b></th> |
| 250 | <ti> |
229 | <ti> |
| 251 | Include support for pluggable authentication modules (PAM). This |
230 | Include support for pluggable authentication modules (PAM). This provides |
| 252 | provides the ability to authenticate users on the Samba Server, which is |
231 | the ability to authenticate users on the Samba Server, which is required if |
| 253 | required if users have to login to your server. The kerberos USE flag |
232 | users have to login to your server. The kerberos USE flag is recommended |
| 254 | is recommended along with this option. |
233 | along with this option. |
| 255 | </ti> |
234 | </ti> |
| 256 | </tr> |
235 | </tr> |
| 257 | <tr> |
236 | <tr> |
| 258 | <th><b>readline</b></th> |
237 | <th><b>readline</b></th> |
| 259 | <ti> |
238 | <ti> |
| 260 | Link Samba again libreadline. This is highly recommended and should |
239 | Link Samba against libreadline. This is highly recommended and should |
| 261 | probably not be disabled |
240 | probably not be disabled. |
| 262 | </ti> |
241 | </ti> |
| 263 | </tr> |
242 | </tr> |
| 264 | <tr> |
243 | <tr> |
| 265 | <th><b>python</b></th> |
244 | <th><b>python</b></th> |
| 266 | <ti> |
245 | <ti> |
| 267 | Python bindings API. Provides an API that will allow Python to |
246 | Python bindings API. Provides an API that will allow Python to interface |
| 268 | interface with Samba. |
247 | with Samba. |
| 269 | </ti> |
248 | </ti> |
| 270 | </tr> |
249 | </tr> |
| 271 | <tr> |
250 | <tr> |
| 272 | <th><b>oav</b></th> |
251 | <th><b>winbind</b></th> |
| 273 | <ti> |
252 | <ti> |
| 274 | Provides on-access scanning of Samba shares with FRISK F-Prot |
253 | Winbind allows for a unified logon within a Samba environment. It uses a |
| 275 | Daemon, Kaspersky AntiVirus, OpenAntiVirus.org ScannerDaemon, Sophos Sweep |
254 | Unix implementation of Windows RPC calls, PAM and the name service switch |
| 276 | (SAVI), Symantec CarrierScan, and Trend Micro (VSAPI). |
255 | (supported by the c library) to enable Windows NT domain users to appear and |
|
|
256 | work as Unix users on a Unix system. |
| 277 | </ti> |
257 | </ti> |
| 278 | </tr> |
258 | </tr> |
| 279 | </table> |
259 | </table> |
| 280 | |
260 | |
| 281 | <p> |
261 | <p> |
| … | |
… | |
| 283 | Samba functions include: |
263 | Samba functions include: |
| 284 | </p> |
264 | </p> |
| 285 | |
265 | |
| 286 | <ul> |
266 | <ul> |
| 287 | <li> |
267 | <li> |
| 288 | ACLs on ext2/3 are implemented through extended attributes (EAs). EA and |
268 | ACLs on ext2/3 are implemented through extended attributes (EAs). EA and |
| 289 | ACL kernel options for ext2 and/or ext3 will need to be enabled |
269 | ACL kernel options for ext2 and/or ext3 will need to be enabled (depending |
| 290 | (depending on which file system is being used - both can be enabled). |
270 | on which file system is being used - both can be enabled). |
| 291 | </li> |
271 | </li> |
| 292 | <li> |
272 | <li> |
| 293 | While Active Directory, ACL, and PDC functions are out of the intended |
273 | While Active Directory, ACL, and PDC functions are out of the intended |
| 294 | scope of this HOWTO, you may find these links as helpful to your cause: |
274 | scope of this HOWTO, you may find these links as helpful to your cause: |
| 295 | <ul> |
275 | <ul> |
| 296 | <li><uri>http://www.bluelightning.org/linux/samba_acl_howto/</uri></li> |
276 | <li><uri>http://www.bluelightning.org/linux/samba_acl_howto/</uri></li> |
| 297 | <li><uri>http://open-projects.linuxcare.com/research-papers/winbind-08162000.html</uri></li> |
|
|
| 298 | <li><uri>http://www.wlug.org.nz/HowtoSamba3AndActiveDirectory</uri></li> |
277 | <li><uri>http://www.wlug.org.nz/HowtoSamba3AndActiveDirectory</uri></li> |
| 299 | </ul> |
278 | </ul> |
| 300 | </li> |
279 | </li> |
| 301 | </ul> |
280 | </ul> |
| 302 | |
281 | |
| … | |
… | |
| 309 | <section> |
288 | <section> |
| 310 | <title>Emerging Samba</title> |
289 | <title>Emerging Samba</title> |
| 311 | <body> |
290 | <body> |
| 312 | |
291 | |
| 313 | <p> |
292 | <p> |
| 314 | First of all: be sure that all your hostnames resolve correctly. |
293 | First of all: be sure that all your hostnames resolve correctly. Either have a |
| 315 | Either have a working domain name system running on your network |
294 | working domain name system running on your network or appropriate entries in |
| 316 | or appropriate entries in your <path>/etc/hosts</path> file. |
295 | your <path>/etc/hosts</path> file. <c>cupsaddsmb</c> often borks if hostnames |
| 317 | <c>cupsaddsmb</c> often borks if hostnames don't point to the correct |
296 | don't point to the correct machines. |
| 318 | machines. |
|
|
| 319 | </p> |
|
|
| 320 | |
|
|
| 321 | <p> |
297 | </p> |
|
|
298 | |
|
|
299 | <p> |
| 322 | Hopefully now you can make an assessment of what you'll actually need in |
300 | Hopefully now you can make an assessment of what you'll actually need in order |
| 323 | order to use Samba with your particular setup. The setup used for this |
301 | to use Samba with your particular setup. The setup used for this HOWTO is: |
| 324 | HOWTO is: |
|
|
| 325 | </p> |
302 | </p> |
| 326 | |
303 | |
| 327 | <ul> |
304 | <ul> |
| 328 | <li>oav</li> |
|
|
| 329 | <li>cups</li> |
305 | <li>cups</li> |
| 330 | <li>readline</li> |
306 | <li>readline</li> |
| 331 | <li>pam</li> |
307 | <li>pam</li> |
| 332 | </ul> |
308 | </ul> |
| 333 | |
309 | |
| 334 | <p> |
310 | <p> |
| 335 | To optimize performance, size and the time of the build, the |
311 | To optimize performance, size and the time of the build, the USE flags are |
| 336 | USE flags are specifically included or excluded. |
312 | specifically included or excluded. |
| 337 | </p> |
313 | </p> |
| 338 | |
314 | |
| 339 | <pre caption="Emerge Samba"> |
315 | <pre caption="Emerge Samba"> |
| 340 | <comment>(Note the USE flags!)</comment> |
316 | # <i>echo "net-fs/samba readline cups pam" >> /etc/portage/package.use</i> |
| 341 | # <i>USE="oav readline cups pam -python -ldap -kerberos -xml -acl -mysql" emerge net-fs/samba</i> |
317 | # <i>emerge net-fs/samba</i> |
| 342 | </pre> |
318 | </pre> |
| 343 | |
|
|
| 344 | <note> |
|
|
| 345 | The following archs will need to add <e>~</e> to their <e>KEYWORDS</e>: x86, |
|
|
| 346 | ppc, sparc, hppa, ia64 and alpha |
|
|
| 347 | </note> |
|
|
| 348 | |
319 | |
| 349 | <p> |
320 | <p> |
| 350 | This will emerge Samba and CUPS (if CUPS is not already emerged). |
321 | This will emerge Samba and CUPS (if CUPS is not already emerged). |
| 351 | </p> |
322 | </p> |
| 352 | |
|
|
| 353 | </body> |
|
|
| 354 | </section> |
|
|
| 355 | <section> |
|
|
| 356 | <title>Emerging Clam AV</title> |
|
|
| 357 | <body> |
|
|
| 358 | |
|
|
| 359 | <p> |
|
|
| 360 | Because the <e>oav</e> USE flag only provides an interface to allow on access |
|
|
| 361 | virus scanning, the actual virus scanner must be emerged. The scanner |
|
|
| 362 | used in this HOWTO is Clam AV. |
|
|
| 363 | </p> |
|
|
| 364 | |
|
|
| 365 | <pre caption="Emerge clam-av"> |
|
|
| 366 | # <i>emerge app-antivirus/clamav</i> |
|
|
| 367 | </pre> |
|
|
| 368 | |
323 | |
| 369 | </body> |
324 | </body> |
| 370 | </section> |
325 | </section> |
| 371 | <section> |
326 | <section> |
| 372 | <title>Emerging foomatic</title> |
327 | <title>Emerging foomatic</title> |
| … | |
… | |
| 377 | </pre> |
332 | </pre> |
| 378 | |
333 | |
| 379 | </body> |
334 | </body> |
| 380 | </section> |
335 | </section> |
| 381 | <section> |
336 | <section> |
| 382 | <title>Emerging net-print/hpijs</title> |
337 | <title>Emerging net-print/hplip</title> |
| 383 | <body> |
338 | <body> |
| 384 | |
339 | |
| 385 | <p> |
340 | <p> |
| 386 | You only need to emerge this if you use an HP printer. |
341 | You only need to emerge this if you use an HP printer. |
| 387 | </p> |
342 | </p> |
| 388 | |
343 | |
| 389 | <pre caption="Emerge hpijs"> |
344 | <pre caption="Emerge hplip"> |
| 390 | # <i>emerge net-print/hpijs</i> |
345 | # <i>emerge net-print/hplip</i> |
| 391 | </pre> |
346 | </pre> |
| 392 | |
347 | |
| 393 | </body> |
348 | </body> |
| 394 | </section> |
349 | </section> |
| 395 | </chapter> |
350 | </chapter> |
| … | |
… | |
| 399 | <section> |
354 | <section> |
| 400 | <title>Configuring Samba</title> |
355 | <title>Configuring Samba</title> |
| 401 | <body> |
356 | <body> |
| 402 | |
357 | |
| 403 | <p> |
358 | <p> |
| 404 | The main Samba configuration file is <path>/etc/samba/smb.conf</path>. |
359 | The main Samba configuration file is <path>/etc/samba/smb.conf</path>. It is |
| 405 | It is divided in sections indicated by [sectionname]. Comments are either |
360 | divided in sections indicated by [sectionname]. Comments are either |
| 406 | # or ;. A sample <path>smb.conf</path> is included below with comments and |
361 | # or ;. A sample <path>smb.conf</path> is included below with comments and |
| 407 | suggestions for modifications. If more details are required, see the |
362 | suggestions for modifications. If more details are required, see the man page |
| 408 | man page for <path>smb.conf</path>, the installed |
363 | for <path>smb.conf</path>, the installed <path>smb.conf.example</path>, the |
| 409 | <path>smb.conf.example</path>, the Samba Web site or any of the |
364 | Samba Web site or any of the numerous Samba books available. |
| 410 | numerous Samba books available. |
|
|
| 411 | </p> |
365 | </p> |
| 412 | |
366 | |
| 413 | <pre caption="A Sample /etc/samba/smb.conf"> |
367 | <pre caption="A Sample /etc/samba/smb.conf"> |
| 414 | [global] |
368 | [global] |
| 415 | <comment># Replace MYWORKGROUPNAME with your workgroup/domain</comment> |
369 | <comment># Replace MYWORKGROUPNAME with your workgroup/domain</comment> |
| 416 | workgroup = <comment>MYWORKGROUPNAME</comment> |
370 | workgroup = <comment>MYWORKGROUPNAME</comment> |
| 417 | <comment># Of course this has no REAL purpose other than letting |
371 | <comment># Of course this has no REAL purpose other than letting |
| 418 | # everyone know its not Windows! |
372 | # everyone knows it's not Windows! |
| 419 | # %v prints the version of Samba we are using.</comment> |
373 | # %v prints the version of Samba we are using.</comment> |
| 420 | server string = Samba Server %v |
374 | server string = Samba Server %v |
| 421 | <comment># We are going to use cups, so we are going to put it in here ;-)</comment> |
375 | <comment># We are going to use cups, so we are going to put it in here ;-)</comment> |
| 422 | printcap name = cups |
376 | printcap name = cups |
| 423 | printing = cups |
377 | printing = cups |
| … | |
… | |
| 439 | hosts deny = 0.0.0.0/0 |
393 | hosts deny = 0.0.0.0/0 |
| 440 | <comment># Other options for this are USER, DOMAIN, ADS, and SERVER |
394 | <comment># Other options for this are USER, DOMAIN, ADS, and SERVER |
| 441 | # The default is user</comment> |
395 | # The default is user</comment> |
| 442 | security = share |
396 | security = share |
| 443 | <comment># No passwords, so we're going to use a guest account!</comment> |
397 | <comment># No passwords, so we're going to use a guest account!</comment> |
| 444 | guest account = samba |
|
|
| 445 | guest ok = yes |
398 | guest ok = yes |
| 446 | <comment># We now will implement the on access virus scanner. |
|
|
| 447 | # NOTE: By putting this in our [Global] section, we enable |
|
|
| 448 | # scanning of ALL shares, you could optionally move |
|
|
| 449 | # these to a specific share and only scan it.</comment> |
|
|
| 450 | |
|
|
| 451 | <comment># For Samba 3.x</comment> |
|
|
| 452 | vfs object = vscan-clamav |
|
|
| 453 | vscan-clamav: config-file = /etc/samba/vscan-clamav.conf |
|
|
| 454 | |
|
|
| 455 | <comment># For Samba 2.2.x</comment> |
|
|
| 456 | vfs object = /usr/lib/samba/vfs/vscan-clamav.so |
|
|
| 457 | vfs options = config-file = /etc/samba/vscan-clamav.conf |
|
|
| 458 | |
399 | |
| 459 | <comment># Now we setup our print drivers information!</comment> |
400 | <comment># Now we setup our print drivers information!</comment> |
| 460 | [print$] |
401 | [print$] |
| 461 | comment = Printer Drivers |
402 | comment = Printer Drivers |
| 462 | path = /etc/samba/printer <comment># this path holds the driver structure</comment> |
403 | path = /etc/samba/printer <comment># this path holds the driver structure</comment> |
| 463 | guest ok = no |
404 | guest ok = yes |
| 464 | browseable = yes |
405 | browseable = yes |
| 465 | read only = yes |
406 | read only = yes |
| 466 | <comment># Modify this to "username,root" if you don't want root to |
407 | <comment># Modify this to "username,root" if you don't want root to |
| 467 | # be the only printer admin)</comment> |
408 | # be the only printer admin)</comment> |
| 468 | write list = <i>root</i> |
409 | write list = <i>root</i> |
| … | |
… | |
| 477 | guest ok = yes |
418 | guest ok = yes |
| 478 | <comment># Modify this to "username,root" if you don't want root to |
419 | <comment># Modify this to "username,root" if you don't want root to |
| 479 | # be the only printer admin)</comment> |
420 | # be the only printer admin)</comment> |
| 480 | printer admin = <i>root</i> |
421 | printer admin = <i>root</i> |
| 481 | |
422 | |
| 482 | <comment># Now we setup our printers share. This should be |
423 | <comment># Now we setup our printers share. This should be |
| 483 | # browseable, printable, public.</comment> |
424 | # browseable, printable, public.</comment> |
| 484 | [printers] |
425 | [printers] |
| 485 | comment = All Printers |
426 | comment = All Printers |
| 486 | browseable = yes |
427 | browseable = no |
| 487 | printable = yes |
428 | printable = yes |
|
|
429 | writable = no |
| 488 | public = yes |
430 | public = yes |
| 489 | guest ok = yes |
431 | guest ok = yes |
| 490 | path = /var/spool/samba |
432 | path = /var/spool/samba |
| 491 | <comment># Modify this to "username,root" if you don't want root to |
433 | <comment># Modify this to "username,root" if you don't want root to |
| 492 | # be the only printer admin)</comment> |
434 | # be the only printer admin)</comment> |
| 493 | printer admin = <i>root</i> |
435 | printer admin = <i>root</i> |
| … | |
… | |
| 503 | guest ok = yes |
445 | guest ok = yes |
| 504 | path = /home/samba/public |
446 | path = /home/samba/public |
| 505 | </pre> |
447 | </pre> |
| 506 | |
448 | |
| 507 | <warn> |
449 | <warn> |
| 508 | If you like to use Samba's guest account to do anything concerning |
450 | If you like to use Samba's guest account to do anything concerning printing from |
| 509 | printing from Windows clients: don't set <c>guest only = yes</c> in |
451 | Windows clients: don't set <c>guest only = yes</c> in the <c>[global]</c> |
| 510 | the <c>[global]</c> section. The guest account seems to cause |
452 | section. The guest account seems to cause problems when running |
| 511 | problems when running <c>cupsaddsmb</c> sometimes when trying to |
453 | <c>cupsaddsmb</c> sometimes when trying to connect from Windows machines. See |
| 512 | connect from Windows machines. See below, too, when we talk about |
454 | below, too, when we talk about <c>cupsaddsmb</c> and the problems that can |
| 513 | <c>cupsaddsmb</c> and the problems that can arise. Use a dedicated |
|
|
| 514 | printer user, like <c>printeruser</c> or <c>printer</c> or |
455 | arise. Use a dedicated printer user, like <c>printeruser</c> or <c>printer</c> |
| 515 | <c>printme</c> or whatever. It doesn't hurt and it will certainly |
456 | or <c>printme</c> or whatever. It doesn't hurt and it will certainly protect you |
| 516 | protect you from a lot of problems. |
457 | from a lot of problems. |
| 517 | </warn> |
458 | </warn> |
| 518 | |
459 | |
| 519 | <p> |
460 | <p> |
| 520 | Now create the directories required for the minimum configuration of |
461 | Now create the directories required for the minimum configuration of Samba to |
| 521 | Samba to share the installed printer throughout the network. |
462 | share the installed printer throughout the network. |
| 522 | </p> |
463 | </p> |
| 523 | |
464 | |
| 524 | <pre caption="Create the directories"> |
465 | <pre caption="Create the directories"> |
| 525 | # <i>mkdir /etc/samba/printer</i> |
466 | # <i>mkdir /etc/samba/printer</i> |
| 526 | # <i>mkdir /var/spool/samba</i> |
467 | # <i>mkdir /var/spool/samba</i> |
| 527 | # <i>mkdir /home/samba/public</i> |
468 | # <i>mkdir /home/samba/public</i> |
| 528 | </pre> |
469 | </pre> |
| 529 | |
470 | |
| 530 | <p> |
471 | <p> |
| 531 | At least one Samba user is required in order to install the printer |
472 | At least one Samba user is required in order to install the printer drivers and |
| 532 | drivers and to allow users to connect to the printer. Users must |
473 | to allow users to connect to the printer. Users must exist in the system's |
| 533 | exist in the system's <path>/etc/passwd</path> file. |
474 | <path>/etc/passwd</path> file. |
| 534 | </p> |
475 | </p> |
| 535 | |
476 | |
| 536 | <pre caption="Creating the users"> |
477 | <pre caption="Creating the users"> |
| 537 | # <i>smbpasswd -a root</i> |
478 | # <i>smbpasswd -a root</i> |
| 538 | |
479 | |
| 539 | <comment>(If another user is to be a printer admin)</comment> |
480 | <comment>(If another user is to be a printer admin)</comment> |
| 540 | # <i>smbpasswd -a username</i> |
481 | # <i>smbpasswd -a username</i> |
| 541 | </pre> |
482 | </pre> |
| 542 | |
483 | |
| 543 | <p> |
484 | <p> |
| 544 | The Samba passwords need not be the same as the system passwords |
485 | The Samba passwords need not be the same as the system passwords |
| 545 | in <path>/etc/passwd</path>. |
486 | in <path>/etc/passwd</path>. |
| 546 | </p> |
487 | </p> |
| 547 | |
488 | |
| 548 | <p> |
489 | <p> |
| 549 | You will also need to update <path>/etc/nsswitch.conf</path> so that Windows |
490 | You will also need to update <path>/etc/nsswitch.conf</path> so that Windows |
| … | |
… | |
| 557 | </pre> |
498 | </pre> |
| 558 | |
499 | |
| 559 | </body> |
500 | </body> |
| 560 | </section> |
501 | </section> |
| 561 | <section> |
502 | <section> |
| 562 | <title>Configuring Clam AV</title> |
|
|
| 563 | <body> |
|
|
| 564 | |
|
|
| 565 | <p> |
|
|
| 566 | The configuration file specified to be used in <path>smb.conf</path> is |
|
|
| 567 | <path>/etc/samba/vscan-clamav.conf</path>. While these options are set |
|
|
| 568 | to the defaults, the infected file action may need to be changed. |
|
|
| 569 | </p> |
|
|
| 570 | |
|
|
| 571 | <pre caption="/etc/samba/vscan-clamav.conf"> |
|
|
| 572 | [samba-vscan] |
|
|
| 573 | <comment>; run-time configuration for vscan-samba using |
|
|
| 574 | ; clamd |
|
|
| 575 | ; all options are set to default values</comment> |
|
|
| 576 | |
|
|
| 577 | <comment>; do not scan files larger than X bytes. If set to 0 (default), |
|
|
| 578 | ; this feature is disable (i.e. all files are scanned)</comment> |
|
|
| 579 | max file size = 0 |
|
|
| 580 | |
|
|
| 581 | <comment>; log all file access (yes/no). If set to yes, every access will |
|
|
| 582 | ; be logged. If set to no (default), only access to infected files |
|
|
| 583 | ; will be logged</comment> |
|
|
| 584 | verbose file logging = no |
|
|
| 585 | |
|
|
| 586 | <comment>; if set to yes (default), a file will be scanned while opening</comment> |
|
|
| 587 | scan on open = yes |
|
|
| 588 | <comment>; if set to yes, a file will be scanned while closing (default is yes)</comment> |
|
|
| 589 | scan on close = yes |
|
|
| 590 | |
|
|
| 591 | <comment>; if communication to clamd fails, should access to file denied? |
|
|
| 592 | ; (default: yes)</comment> |
|
|
| 593 | deny access on error = yes |
|
|
| 594 | |
|
|
| 595 | <comment>; if daemon fails with a minor error (corruption, etc.), |
|
|
| 596 | ; should access to file denied? |
|
|
| 597 | ; (default: yes)</comment> |
|
|
| 598 | deny access on minor error = yes |
|
|
| 599 | |
|
|
| 600 | <comment>; send a warning message via Windows Messenger service |
|
|
| 601 | ; when virus is found? |
|
|
| 602 | ; (default: yes)</comment> |
|
|
| 603 | send warning message = yes |
|
|
| 604 | |
|
|
| 605 | <comment>; what to do with an infected file |
|
|
| 606 | ; quarantine: try to move to quantine directory; delete it if moving fails |
|
|
| 607 | ; delete: delete infected file |
|
|
| 608 | ; nothing: do nothing</comment> |
|
|
| 609 | infected file action = <comment>delete</comment> |
|
|
| 610 | |
|
|
| 611 | <comment>; where to put infected files - you really want to change this! |
|
|
| 612 | ; it has to be on the same physical device as the share!</comment> |
|
|
| 613 | quarantine directory = /tmp |
|
|
| 614 | <comment>; prefix for files in quarantine</comment> |
|
|
| 615 | quarantine prefix = vir- |
|
|
| 616 | |
|
|
| 617 | <comment>; as Windows tries to open a file multiple time in a (very) short time |
|
|
| 618 | ; of period, samba-vscan use a last recently used file mechanism to avoid |
|
|
| 619 | ; multiple scans of a file. This setting specified the maximum number of |
|
|
| 620 | ; elements of the last recently used file list. (default: 100)</comment> |
|
|
| 621 | max lru files entries = 100 |
|
|
| 622 | |
|
|
| 623 | <comment>; an entry is invalidated after lru file entry lifetime (in seconds). |
|
|
| 624 | ; (Default: 5)</comment> |
|
|
| 625 | lru file entry lifetime = 5 |
|
|
| 626 | |
|
|
| 627 | <comment>; socket name of clamd (default: /var/run/clamd)</comment> |
|
|
| 628 | clamd socket name = /var/run/clamd |
|
|
| 629 | </pre> |
|
|
| 630 | |
|
|
| 631 | <p> |
|
|
| 632 | It is generally a good idea to start the virus scanner immediately. Add |
|
|
| 633 | it to the <e>default</e> runlevel and then start the <c>clamd</c> service immediately. |
|
|
| 634 | </p> |
|
|
| 635 | |
|
|
| 636 | <pre caption="Add clamd to bootup and start it"> |
|
|
| 637 | # <i>rc-update add clamd default</i> |
|
|
| 638 | # <i>/etc/init.d/clamd start</i> |
|
|
| 639 | </pre> |
|
|
| 640 | |
|
|
| 641 | </body> |
|
|
| 642 | </section> |
|
|
| 643 | <section> |
|
|
| 644 | <title>Configuring CUPS</title> |
503 | <title>Configuring CUPS</title> |
| 645 | <body> |
504 | <body> |
| 646 | |
505 | |
| 647 | <p> |
506 | <p> |
| 648 | This is a little more complicated. CUPS' main config file is |
507 | This is a little more complicated. CUPS' main config file is |
| 649 | <path>/etc/cups/cupsd.conf</path>. It's structure is similar to Apache's |
508 | <path>/etc/cups/cupsd.conf</path>. It's structure is similar to Apache's |
| 650 | <path>httpd.conf</path> file, so many you may find it familiar. Outlined |
509 | <path>httpd.conf</path> file, so many you may find it familiar. Outlined in the |
| 651 | in the example are the directives that need to be changed: |
510 | example are the directives that need to be changed: |
| 652 | </p> |
511 | </p> |
| 653 | |
512 | |
| 654 | <pre caption="/etc/cups/cupsd.conf"> |
513 | <pre caption="/etc/cups/cupsd.conf"> |
| 655 | ServerName <i>PrintServer</i> <comment># your printserver name</comment> |
514 | ServerName <i>PrintServer</i> <comment># your printserver name</comment> |
| 656 | ServerAdmin <i>root@PrintServer</i> <comment># the person for printer-related hate-mail, eg you</comment> |
515 | ServerAdmin <i>root@PrintServer</i> <comment># the person for printer-related hate-mail, e.g. you</comment> |
| 657 | |
516 | |
| 658 | AccessLog /var/log/cups/access_log <comment># probably doesn't need changing</comment> |
517 | AccessLog /var/log/cups/access_log <comment># probably doesn't need changing</comment> |
| 659 | ErrorLog /var/log/cups/error_log <comment># doesn't really need changing either</comment> |
518 | ErrorLog /var/log/cups/error_log <comment># doesn't really need changing either</comment> |
| 660 | |
519 | |
| 661 | LogLevel debug <comment># only while isntalling and testing, should later be |
520 | LogLevel debug <comment># only while installing and testing, should later be |
| 662 | # changed to 'info'</comment> |
521 | # changed to 'info'</comment> |
| 663 | |
522 | |
| 664 | MaxClients 100 <comment># I've had to set this to 1000000000 or so because some time back, |
523 | MaxClients 100 <comment># I've had to set this to 1000000000 or so because some time back, |
| 665 | # there seemed to be a bug in CUPS' controlling of the web interface, |
524 | # there seemed to be a bug in CUPS' controlling of the web interface, |
| 666 | # making CUPS think a denial of service attack was in progress when |
525 | # making CUPS think a denial of service attack was in progress when |
| 667 | # I tried to configure a printer with the web interface. weird.</comment> |
526 | # I tried to configure a printer with the web interface. weird.</comment> |
| 668 | |
527 | |
| 669 | BrowseAddress @IF(<i>eth0</i>) <comment># Change this to your internal net interface</comment> |
528 | BrowseAddress @IF(<i>eth0</i>) <comment># Change this to your internal net interface</comment> |
| 670 | |
529 | |
| 671 | <Location /> |
530 | <Location /> |
| 672 | Order Deny,Allow |
531 | Order Deny,Allow |
| 673 | Deny From All |
532 | Deny From All |
| 674 | Allow From <i>192.168.1.*</i> <comment># the addresses of your internel network |
533 | Allow From <i>192.168.1.*</i> <comment># the addresses of your internel network |
| 675 | # eg 192.168.1.* will allow connections from any host on |
534 | # e.g. 192.168.1.* will allow connections from any host on |
| 676 | # the 192.168.1.0 network. change to whatever suits you</comment> |
535 | # the 192.168.1.0 network. change to whatever suits you</comment> |
| 677 | </Location> |
536 | </Location> |
| 678 | |
537 | |
| 679 | <Location /admin> |
538 | <Location /admin> |
| 680 | AuthType Basic |
539 | AuthType Basic |
| 681 | AuthClass System |
540 | AuthClass System |
| 682 | Allow From <i>192.168.1.*</i> <comment># same as above, allow any host on the |
541 | Allow From <i>192.168.1.*</i> <comment># same as above, allow any host on the |
| 683 | # 192.168.1.0 network to connect and do |
542 | # 192.168.1.0 network to connect and do |
| 684 | # administrative tasks after authenticating</comment> |
543 | # administrative tasks after authenticating</comment> |
| 685 | Order Deny,Allow |
544 | Order Deny,Allow |
| 686 | Deny From All |
545 | Deny From All |
| 687 | </Location> |
546 | </Location> |
| 688 | </pre> |
547 | </pre> |
| 689 | |
548 | |
| 690 | <p> |
549 | <p> |
| 691 | Edit <path>/etc/cups/mime.convs</path> to uncomment some lines. |
550 | Edit <path>/etc/cups/mime.convs</path> to uncomment some lines. The changes to |
| 692 | The changes to <path>mime.convs</path> and <path>mime.types</path> are |
551 | <path>mime.convs</path> and <path>mime.types</path> are needed to make CUPS |
| 693 | needed to make CUPS print Microsoft Office document files. |
552 | print Microsoft Office document files. |
| 694 | </p> |
553 | </p> |
| 695 | |
554 | |
| 696 | <pre caption="/etc/cups/mime.convs"> |
555 | <pre caption="/etc/cups/mime.convs"> |
| 697 | <comment>(The following line is found near the end of the file. Uncomment it)</comment> |
556 | <comment>(The following line is found near the end of the file. Uncomment it)</comment> |
| 698 | application/octet-stream application/vnd.cups-raw 0 |
557 | application/octet-stream application/vnd.cups-raw 0 |
| 699 | </pre> |
558 | </pre> |
| 700 | |
559 | |
| 701 | <p> |
560 | <p> |
| 702 | Edit <path>/etc/cups/mime.convs</path> to uncomment some lines. |
561 | Edit <path>/etc/cups/mime.types</path> to uncomment some lines. |
| 703 | </p> |
562 | </p> |
| 704 | |
563 | |
| 705 | <pre caption="/etc/cups/mime.types"> |
564 | <pre caption="/etc/cups/mime.types"> |
| 706 | <comment>(The following line is found near the end of the file. Uncomment it)</comment> |
565 | <comment>(The following line is found near the end of the file. Uncomment it)</comment> |
| 707 | application/octet-stream |
566 | application/octet-stream |
| 708 | </pre> |
567 | </pre> |
| 709 | |
568 | |
| 710 | <p> |
569 | <p> |
| 711 | CUPS needs to be started on boot, and started immediately. |
570 | CUPS needs to be started on boot, and started immediately. |
| 712 | </p> |
571 | </p> |
| 713 | |
572 | |
| 714 | <pre caption="Setting up the CUPS service" > |
573 | <pre caption="Setting up the CUPS service" > |
| 715 | <comment>(To start CUPS on boot)</comment> |
574 | <comment>(To start CUPS on boot)</comment> |
| 716 | # <i>rc-update add cupsd default</i> |
575 | # <i>rc-update add cupsd default</i> |
| 717 | <comment>(To start CUPS if it isn't started)</comment> |
576 | <comment>(To start or restart CUPS now)</comment> |
| 718 | # <i>/etc/init.d/cupsd start</i> |
|
|
| 719 | <comment>(If CUPS is already started we'll need to restart it!)</comment> |
|
|
| 720 | # <i>/etc/init.d/cupsd restart</i> |
577 | # <i>/etc/init.d/cupsd restart</i> |
| 721 | </pre> |
578 | </pre> |
| 722 | |
579 | |
| 723 | </body> |
580 | </body> |
| 724 | </section> |
581 | </section> |
| … | |
… | |
| 728 | |
585 | |
| 729 | <p> |
586 | <p> |
| 730 | First, go to <uri link="http://linuxprinting.org">LinuxPrinting.Org</uri> to |
587 | First, go to <uri link="http://linuxprinting.org">LinuxPrinting.Org</uri> to |
| 731 | find and download the correct PPD file for your printer and CUPS. To do so, |
588 | find and download the correct PPD file for your printer and CUPS. To do so, |
| 732 | click the link Printer Listings to the left. Select your printers manufacturer |
589 | click the link Printer Listings to the left. Select your printers manufacturer |
| 733 | and the model in the pulldown menu, eg HP and DeskJet 930C. Click "Show". On |
590 | and the model in the pulldown menu, e.g. HP and DeskJet 930C. Click "Show". On |
| 734 | the page coming up click the "recommended driver" link after reading the |
591 | the page coming up click the "recommended driver" link after reading the various |
| 735 | various notes and information. Then fetch the PPD file from the next page, |
592 | notes and information. Then fetch the PPD file from the next page, again after |
| 736 | again after reading the notes and introductions there. You may have to select |
593 | reading the notes and introductions there. You may have to select your printers |
| 737 | your printers manufacturer and model again. Reading the <uri |
594 | manufacturer and model again. Reading the <uri |
| 738 | link="http://www.linuxprinting.org/cups-doc.html">CUPS quickstart guide</uri> |
595 | link="http://www.linuxprinting.org/cups-doc.html">CUPS quickstart guide</uri> is |
| 739 | is also very helpful when working with CUPS. |
596 | also very helpful when working with CUPS. |
| 740 | </p> |
|
|
| 741 | |
|
|
| 742 | <p> |
597 | </p> |
|
|
598 | |
|
|
599 | <p> |
| 743 | Now you have a PPD file for your printer to work with CUPS. Place it in |
600 | Now you have a PPD file for your printer to work with CUPS. Place it in |
| 744 | <path>/usr/share/cups/model</path>. The PPD for the HP DeskJet 930C was |
601 | <path>/usr/share/cups/model</path>. The PPD for the HP DeskJet 930C was named |
| 745 | named <path>HP-DeskJet_930C-hpijs.ppd</path>. You should now install the printer. |
602 | <path>HP-DeskJet_930C-hpijs.ppd</path>. You should now install the printer. |
| 746 | This can be done via the CUPS web interface or via command line. The web |
603 | This can be done via the CUPS web interface or via command line. The web |
| 747 | interface is found at <path>http://PrintServer:631</path> once CUPS is running. |
604 | interface is found at <path>http://PrintServer:631</path> once CUPS is running. |
| 748 | </p> |
605 | </p> |
| 749 | |
606 | |
| 750 | <pre caption="Install the printer via command line"> |
607 | <pre caption="Install the printer via command line"> |
| 751 | # <i>lpadmin -p HPDeskJet930C -E -v usb:/dev/ultp0 -m HP-DeskJet_930C-hpijs.ppd</i> |
608 | # <i>lpadmin -p HPDeskJet930C -E -v usb:/dev/ultp0 -m HP-DeskJet_930C-hpijs.ppd</i> |
|
|
609 | # <i>/etc/init.d/cupsd restart</i> |
| 752 | </pre> |
610 | </pre> |
| 753 | |
611 | |
| 754 | <p> |
612 | <p> |
| 755 | Remember to adjust to what you have. Be sure to have the name |
613 | Remember to adjust to what you have. Be sure to have the name (<c>-p</c> |
| 756 | (<c>-p</c> argument) right (the name you set above during the Samba |
614 | argument) right (the name you set above during the Samba configuration!) and to |
| 757 | configuration!) and to put in the correct <c>usb:/dev/usb/blah</c>, |
615 | put in the correct <c>usb:/dev/usb/blah</c>, <c>parallel:/dev/blah</c> or |
| 758 | <c>parallel:/dev/blah</c> or whatever device you are using for your |
616 | whatever device you are using for your printer. |
| 759 | printer. |
|
|
| 760 | </p> |
|
|
| 761 | |
|
|
| 762 | <p> |
617 | </p> |
|
|
618 | |
|
|
619 | <p> |
| 763 | You should now be able to access the printer from the web interface |
620 | You should now be able to access the printer from the web interface and be able |
| 764 | and be able to print a test page. |
621 | to print a test page. |
| 765 | </p> |
622 | </p> |
| 766 | |
623 | |
| 767 | </body> |
624 | </body> |
| 768 | </section> |
625 | </section> |
| 769 | <section> |
626 | <section> |
| 770 | <title>Installing the Windows printer drivers</title> |
627 | <title>Installing the Windows printer drivers</title> |
| 771 | <body> |
628 | <body> |
| 772 | |
629 | |
| 773 | <p> |
630 | <p> |
| 774 | Now that the printer should be working it is time to install the drivers |
631 | Now that the printer should be working it is time to install the drivers for |
| 775 | for the Windows clients to work. Samba 2.2 introduced this functionality. |
632 | the Windows clients to work. Samba 2.2 introduced this functionality. Browsing |
| 776 | Browsing to the print server in the Network Neighbourhood, right-clicking |
633 | to the print server in the Network Neighbourhood, right-clicking on the |
| 777 | on the printershare and selecting "connect" downloads the appropriate |
634 | printershare and selecting "connect" downloads the appropriate drivers |
| 778 | drivers automagically to the connecting client, avoiding the hassle of |
635 | automagically to the connecting client, avoiding the hassle of manually |
| 779 | manually installing printer drivers locally. |
636 | installing printer drivers locally. |
| 780 | </p> |
|
|
| 781 | |
|
|
| 782 | <p> |
637 | </p> |
|
|
638 | |
|
|
639 | <p> |
| 783 | There are two sets of printer drivers for this. First, the Adobe PS |
640 | There are two sets of printer drivers for this. First, the Adobe PS drivers |
| 784 | drivers which can be obtained from <uri |
641 | which can be obtained from <uri |
| 785 | link="http://www.adobe.com/support/downloads/main.html">Adobe</uri> |
642 | link="http://www.adobe.com/support/downloads/main.html">Adobe</uri> (PostScript |
| 786 | (PostScript printer drivers). Second, there are the CUPS PS drivers, |
643 | printer drivers). Second, there are the CUPS PS drivers, to be obtained by |
| 787 | to be obtained from <uri link="http://www.cups.org/software.php">the |
644 | emerging <c>net-print/cups-windows</c>. Note that it may still be marked ~arch, |
| 788 | CUPS homepage</uri> and selecting "CUPS Driver for Windows" from the |
645 | so you may need to add it to <path>/etc/portage/package.keywords</path>. There |
| 789 | pull down menu. There doesn't seem to be a difference between the |
646 | doesn't seem to be a difference between the functionality of the two, but the |
| 790 | functionality of the two, but the Adobe PS drivers need to be extracted |
647 | Adobe PS drivers need to be extracted on a Windows System since it's a Windows |
| 791 | on a Windows System since it's a Windows binary. Also the whole procedure |
648 | binary. Also the whole procedure of finding and copying the correct files is a |
| 792 | of finding and copying the correct files is a bit more hassle. The CUPS |
649 | bit more hassle. The CUPS drivers support some options the Adobe drivers |
| 793 | drivers seem to support some options the Adobe drivers don't. |
650 | don't. |
| 794 | </p> |
|
|
| 795 | |
|
|
| 796 | <p> |
651 | </p> |
| 797 | This HOWTO uses the CUPS drivers for Windows. The downloaded file is |
652 | |
| 798 | called <path>cups-samba-5.0rc2.tar.gz</path>. Extract the files |
|
|
| 799 | contained into a directory. |
|
|
| 800 | </p> |
653 | <p> |
| 801 | |
654 | This HOWTO uses the CUPS drivers for Windows. Install them as shown: |
| 802 | <pre caption="Extract the drivers and run the install"> |
|
|
| 803 | # <i>tar -xzf cups-samba-5.0rc2.tar.gz</i> |
|
|
| 804 | # <i>cd cups-samba-5.0rc2</i> |
|
|
| 805 | <comment>(Only use this script if CUPS resides in /usr/share/cups)</comment> |
|
|
| 806 | # <i>./cups-samba.install</i> |
|
|
| 807 | </pre> |
|
|
| 808 | |
|
|
| 809 | <p> |
655 | </p> |
| 810 | <path>cups-samba.ss</path> is a TAR archive containing three files: |
656 | |
| 811 | <path>cups5.hlp</path>, <path>cupsdrvr5.dll</path> and |
657 | <pre caption="Install the drivers"> |
| 812 | <path>cupsui5.dll</path>. These are the actual driver files. |
658 | # <i>emerge -av cups-windows</i> |
|
|
659 | </pre> |
|
|
660 | |
| 813 | </p> |
661 | <p> |
| 814 | |
|
|
| 815 | <warn> |
|
|
| 816 | The script <c>cups-samba.install</c> may not work for all *nixes (ie FreeBSD) |
|
|
| 817 | because almost everything which is not part of the base system is |
|
|
| 818 | installed somewhere under the prefix <path>/usr/local/</path>. This |
|
|
| 819 | seems not to be the case for most things you install under GNU/Linux. |
|
|
| 820 | However, if your CUPS installation is somewhere other than |
|
|
| 821 | <path>/usr/share/cups/</path> see the example below. |
|
|
| 822 | </warn> |
|
|
| 823 | |
|
|
| 824 | <p> |
|
|
| 825 | Suppose your CUPS installation resides under |
|
|
| 826 | <path>/usr/local/share/cups/</path>, and you want to install the drivers there. |
|
|
| 827 | Do the following: |
|
|
| 828 | </p> |
|
|
| 829 | |
|
|
| 830 | <pre caption="Manually installing the drivers"> |
|
|
| 831 | # <i>cd /path/you/extracted/the/CUPS-driver/tarball/into</i> |
|
|
| 832 | # <i>tar -xf cups-samba.ss</i> |
|
|
| 833 | <comment>(This extracts the files to usr/share/cups/drivers under the CURRENT WORKING DIRECTORY)</comment> |
|
|
| 834 | # <i>cd usr/share/cups/drivers</i> |
|
|
| 835 | <comment>(no leading / !)</comment> |
|
|
| 836 | # <i>cp cups* /usr/local/share/cups/drivers</i> |
|
|
| 837 | </pre> |
|
|
| 838 | |
|
|
| 839 | <p> |
|
|
| 840 | Now we'll use the script <c>cupsaddsmb</c> provided by the CUPS |
662 | Now we'll use the script <c>cupsaddsmb</c> provided by the CUPS distribution. |
| 841 | distribution. It's man page is an interesting read. |
663 | Be sure to read its manpage (<c>man cupsaddsmb</c>), as it will tell you which |
|
|
664 | Windows drivers you'll need to copy to the proper CUPS directory. Once you've |
|
|
665 | copied the drivers, restart CUPS by running <c>/etc/init.d/cupsd restart</c>. |
|
|
666 | Next, run <c>cupsaddsmb</c> as shown: |
| 842 | </p> |
667 | </p> |
| 843 | |
668 | |
| 844 | <pre caption="Run cupsaddsmb"> |
669 | <pre caption="Run cupsaddsmb"> |
| 845 | # <i>cupsaddsmb -H PrintServer -U root -h PrintServer -v HPDeskJet930C</i> |
670 | # <i>cupsaddsmb -H PrintServer -U root -h PrintServer -v HPDeskJet930C</i> |
| 846 | <comment>(Instead of HPDeskJet930C you could also specify "-a", which will |
671 | <comment>(Instead of HPDeskJet930C you could also specify "-a", which will |
| 847 | "export all known printers".)</comment> |
672 | "export all known printers".)</comment> |
| 848 | # <i>cupsaddsmb -H PrintServer -U root -h PrintServer -a</i> |
673 | # <i>cupsaddsmb -H PrintServer -U root -h PrintServer -a</i> |
| 849 | </pre> |
674 | </pre> |
| 850 | |
675 | |
| 851 | <warn> |
676 | <warn> |
| 852 | The execution of this command often causes the most trouble. |
677 | The execution of this command often causes the most trouble. Read through the |
| 853 | Reading through the <uri |
|
|
| 854 | link="http://forums.gentoo.org/viewtopic.php?t=110931">posts in this |
678 | <uri link="http://forums.gentoo.org/viewtopic.php?t=110931">posts in this |
| 855 | thread</uri>. |
679 | thread</uri> for some troubleshooting tips. |
| 856 | </warn> |
680 | </warn> |
| 857 | |
681 | |
| 858 | <p> |
682 | <p> |
| 859 | Here are common errors that may happen: |
683 | Here are common errors that may happen: |
| 860 | </p> |
684 | </p> |
| 861 | |
685 | |
| 862 | <ul> |
686 | <ul> |
| 863 | <li> |
687 | <li> |
| 864 | The hostname given as a parameter for <c>-h</c> and <c>-H</c> |
688 | The hostname given as a parameter for <c>-h</c> and <c>-H</c> |
| 865 | (<c>PrintServer</c>) often does not resolve correctly and doesn't |
689 | (<c>PrintServer</c>) often does not resolve correctly and doesn't identify |
| 866 | identify the print server for CUPS/Samba interaction. If an error |
690 | the print server for CUPS/Samba interaction. If an error like: <b>Warning: |
| 867 | like: <b>Warning: No PPD file for printer "CUPS_PRINTER_NAME" - |
691 | No PPD file for printer "CUPS_PRINTER_NAME" - skipping!</b> occurs, the |
| 868 | skipping!</b> occurs, the first thing you should do is substitute |
692 | first thing you should do is substitute <c>PrintServer</c> with |
| 869 | <c>PrintServer</c> with <c>localhost</c> and try it again. |
693 | <c>localhost</c> and try it again. |
| 870 | </li> |
694 | </li> |
| 871 | <li> |
695 | <li> |
| 872 | The command fails with an <b>NT_STATUS_UNSUCCESSFUL</b>. This error message |
696 | The command fails with an <b>NT_STATUS_UNSUCCESSFUL</b>. This error message |
| 873 | is quite common, but can be triggered by many problems. It's unfortunately |
697 | is quite common, but can be triggered by many problems. It's unfortunately |
| 874 | not very helpful. One thing to try is to temporarily set <c>security = |
698 | not very helpful. One thing to try is to temporarily set <c>security = |
| 875 | user</c> in your <path>smb.conf</path>. After/if the installation completes |
699 | user</c> in your <path>smb.conf</path>. After/if the installation completes |
| 876 | successfully, you should set it back to share, or whatever it was set to |
700 | successfully, you should set it back to share, or whatever it was set to |
| 877 | before. |
701 | before. |
| 878 | </li> |
702 | </li> |
| 879 | </ul> |
703 | </ul> |
| 880 | |
704 | |
| 881 | <p> |
705 | <p> |
| 882 | This should install the correct driver directory structure under |
706 | This should install the correct driver directory structure under |
| 883 | <path>/etc/samba/printer</path>. That would be |
707 | <path>/etc/samba/printer</path>. That would be |
| 884 | <path>/etc/samba/printer/W32X86/2/</path>. The files contained should |
708 | <path>/etc/samba/printer/W32X86/2/</path>. The files contained should be the 3 |
| 885 | be the 3 driver files and the PPD file, renamed to YourPrinterName.ppd |
709 | driver files and the PPD file, renamed to <path>YourPrinterName.ppd</path> (the |
| 886 | (the name which you gave the printer when installing it (see above). |
710 | name which you gave the printer when installing it (see above). |
| 887 | </p> |
|
|
| 888 | |
|
|
| 889 | <p> |
711 | </p> |
|
|
712 | |
|
|
713 | <p> |
| 890 | Pending no errors or other complications, your drivers are now |
714 | Pending no errors or other complications, your drivers are now installed. |
| 891 | installed. |
|
|
| 892 | </p> |
715 | </p> |
| 893 | |
716 | |
| 894 | </body> |
717 | </body> |
| 895 | </section> |
718 | </section> |
| 896 | <section> |
719 | <section> |
| … | |
… | |
| 914 | <title>Testing our Samba configuration</title> |
737 | <title>Testing our Samba configuration</title> |
| 915 | <body> |
738 | <body> |
| 916 | |
739 | |
| 917 | <p> |
740 | <p> |
| 918 | We will want to test our configuration file to ensure that it is formatted |
741 | We will want to test our configuration file to ensure that it is formatted |
| 919 | properly and all of our options have at least the correct syntax. To do |
742 | properly and all of our options have at least the correct syntax. To do this we |
| 920 | this we run <c>testparm</c>. |
743 | run <c>testparm</c>. |
| 921 | </p> |
744 | </p> |
| 922 | |
745 | |
| 923 | <pre caption="Running the testparm"> |
746 | <pre caption="Running the testparm"> |
| 924 | <comment>(By default, testparm checks /etc/samba/smb.conf)</comment> |
747 | <comment>(By default, testparm checks /etc/samba/smb.conf)</comment> |
| 925 | # <i>/usr/bin/testparm</i> |
748 | # <i>/usr/bin/testparm</i> |
| … | |
… | |
| 955 | <section> |
778 | <section> |
| 956 | <title>Checking our services</title> |
779 | <title>Checking our services</title> |
| 957 | <body> |
780 | <body> |
| 958 | |
781 | |
| 959 | <p> |
782 | <p> |
| 960 | It would probably be prudent to check our logs at this time also. |
783 | It would probably be prudent to check our logs at this time also. We will also |
| 961 | We will also want to take a peak at our Samba shares using |
784 | want to take a peak at our Samba shares using <c>smbclient</c>. |
| 962 | <c>smbclient</c>. |
|
|
| 963 | </p> |
785 | </p> |
| 964 | |
786 | |
| 965 | <pre caption="Checking the shares with smbclient"> |
787 | <pre caption="Checking the shares with smbclient"> |
| 966 | # <i>smbclient -L localhost</i> |
788 | # <i>smbclient -L localhost</i> |
| 967 | Password: |
789 | Password: |
| … | |
… | |
| 977 | <section> |
799 | <section> |
| 978 | <title>Printer configuration of *nix based clients</title> |
800 | <title>Printer configuration of *nix based clients</title> |
| 979 | <body> |
801 | <body> |
| 980 | |
802 | |
| 981 | <p> |
803 | <p> |
| 982 | Despite the variation or distribution, the only thing needed is CUPS. |
804 | Despite the variation or distribution, the only thing needed is CUPS. Do the |
| 983 | Do the equivalent on any other UNIX/Linux/BSD client. |
805 | equivalent on any other UNIX/Linux/BSD client. |
| 984 | </p> |
806 | </p> |
| 985 | |
807 | |
| 986 | <pre caption="Configuring a Gentoo system"> |
808 | <pre caption="Configuring a Gentoo system"> |
| 987 | # <i>emerge cups</i> |
809 | # <i>emerge cups</i> |
| 988 | # <i>/etc/init.d/cupsd start</i> |
810 | # <i>nano -w /etc/cups/client.conf</i> |
| 989 | # <i>rc-update add cupsd default</i> |
811 | ServerName <i>PrintServer</i> <comment># your printserver name</comment> |
| 990 | </pre> |
812 | </pre> |
| 991 | |
813 | |
| 992 | <p> |
|
|
| 993 | That should be it. Nothing else will be needed. Just point your web |
|
|
| 994 | browser to <c>http://localhost:631</c> on the client and you'll see that |
|
|
| 995 | PrintServer broadcasts all available printers to all CUPS clients. |
|
|
| 996 | </p> |
814 | <p> |
| 997 | |
815 | That should be it. Nothing else will be needed. |
| 998 | <p> |
816 | </p> |
| 999 | To print, use for example |
817 | |
| 1000 | </p> |
818 | <p> |
|
|
819 | If you use only one printer, it will be your default printer. If your print |
|
|
820 | server manages several printers, your administrator will have defined a default |
|
|
821 | printer on the server. If you want to define a different default printer for |
|
|
822 | yourself, use the <c>lpoptions</c> command. |
|
|
823 | </p> |
|
|
824 | |
|
|
825 | <pre caption="Setting your default printer"> |
|
|
826 | <comment>(List available printers)</comment> |
|
|
827 | # <i>lpstat -a</i> |
|
|
828 | <comment>(Sample output, yours will differ)</comment> |
|
|
829 | HPDeskJet930C accepting requests since Jan 01 00:00 |
|
|
830 | laser accepting requests since Jan 01 00:00 |
|
|
831 | <comment>(Define HPDeskJet930C as your default printer)</comment> |
|
|
832 | # <i>lpoptions -d HPDeskJet930C</i> |
|
|
833 | </pre> |
| 1001 | |
834 | |
| 1002 | <pre caption="Printing in *nix"> |
835 | <pre caption="Printing in *nix"> |
|
|
836 | <comment>(Specify the printer to be used)</comment> |
| 1003 | # <i>lpr -pHPDeskJet930C anything.txt</i> |
837 | # <i>lp -d HPDeskJet930C anything.txt</i> |
| 1004 | # <i>lpr -PHPDeskJet930C foobar.whatever.ps</i> |
838 | <comment>(Use your default printer)</comment> |
| 1005 | </pre> |
|
|
| 1006 | |
|
|
| 1007 | <p> |
|
|
| 1008 | In order to setup a default printer, you have to edit |
|
|
| 1009 | <path>/etc/cups/client.conf</path> and set the directive |
|
|
| 1010 | <c>ServerName</c> to your printserver. In the case of this guide that |
|
|
| 1011 | would be the following example. |
|
|
| 1012 | </p> |
|
|
| 1013 | |
|
|
| 1014 | <pre caption="/etc/cups/client.conf"> |
|
|
| 1015 | ServerName PrintServer |
|
|
| 1016 | </pre> |
|
|
| 1017 | |
|
|
| 1018 | <p> |
|
|
| 1019 | The following will print <path>foorbar.whatever.ps</path> directly to the print |
|
|
| 1020 | server. |
|
|
| 1021 | </p> |
|
|
| 1022 | |
|
|
| 1023 | <pre caption="Printing to the default printer"> |
|
|
| 1024 | $ <i>lpr foobar.whatever.ps</i> |
839 | # <i>lp foobar.whatever.ps</i> |
| 1025 | </pre> |
840 | </pre> |
| 1026 | |
841 | |
| 1027 | <p> |
|
|
| 1028 | Some common observations when setting a default printer in this manner |
|
|
| 1029 | include the following: |
|
|
| 1030 | </p> |
842 | <p> |
| 1031 | |
843 | Just point your web browser to <c>http://printserver:631</c> on the client if |
| 1032 | <ul> |
844 | you want to manage your printers and their jobs with a nice web interface. |
| 1033 | <li> |
845 | Replace <c>printserver</c> with the name of the <e>machine</e> that acts as your |
| 1034 | Setting the <c>ServerName</c> in <path>client.conf</path> seems to |
846 | print server, not the name you gave to the cups print server if you used |
| 1035 | work well for only one printer, there may be yet another way to |
847 | different names. |
| 1036 | set a client's default remote printer. |
848 | </p> |
| 1037 | </li> |
|
|
| 1038 | <li> |
|
|
| 1039 | Also, when accessing <c>http://localhost:631</c> on the client |
|
|
| 1040 | now, no printers seem to be "found" by the client-CUPS. This is to |
|
|
| 1041 | be expected when setting <c>ServerName</c> in |
|
|
| 1042 | <path>client.conf</path>. |
|
|
| 1043 | </li> |
|
|
| 1044 | </ul> |
|
|
| 1045 | |
849 | |
| 1046 | </body> |
850 | </body> |
| 1047 | </section> |
851 | </section> |
| 1048 | <section> |
852 | <section> |
| 1049 | <title>Mounting a Windows or Samba share in GNU/Linux</title> |
853 | <title>Mounting a Windows or Samba share in GNU/Linux</title> |
| 1050 | <body> |
854 | <body> |
| 1051 | |
855 | |
|
|
856 | <note> |
|
|
857 | Don't forget to install <c>net-fs/mount-cifs</c> or <c>net-fs/samba</c> on the |
|
|
858 | client(s) that will be accessing the shares. |
|
|
859 | </note> |
|
|
860 | |
| 1052 | <p> |
861 | <p> |
| 1053 | Now is time to configure our kernel to support smbfs. Since I'm assumming we've |
862 | Now is time to configure our kernel to support CIFS. Since I'm assuming |
| 1054 | all compiled at least one kernel, we'll need to make sure we have all the right |
863 | we've all compiled at least one kernel, we'll need to make sure we have all the |
| 1055 | options selected in our kernel. For simplicity sake, make it a module for ease |
864 | right options selected in our kernel. For simplicity's sake, make it a module |
| 1056 | of use. It is the author's opinion that kernel modules are a good thing and |
865 | for ease of use. It is the author's opinion that kernel modules are a good thing |
| 1057 | should be used whenever possible. |
866 | and should be used whenever possible. |
| 1058 | </p> |
|
|
| 1059 | |
|
|
| 1060 | <pre caption="Relevant kernel options" > |
|
|
| 1061 | CONFIG_SMB_FS=m |
|
|
| 1062 | CONFIG_SMB_UNIX=y |
|
|
| 1063 | </pre> |
|
|
| 1064 | |
|
|
| 1065 | <p> |
867 | </p> |
|
|
868 | |
|
|
869 | <pre caption="Kernel support" > |
|
|
870 | CONFIG_CIFS=m |
|
|
871 | </pre> |
|
|
872 | |
|
|
873 | <p> |
| 1066 | Then make the module/install it; insert them with: |
874 | Then make the module/install it; insert it with: |
| 1067 | </p> |
875 | </p> |
| 1068 | |
876 | |
| 1069 | <pre caption="Loading the kernel module"> |
877 | <pre caption="Loading the kernel module"> |
| 1070 | # <i>modprobe smbfs</i> |
878 | # <i>modprobe cifs</i> |
| 1071 | </pre> |
879 | </pre> |
| 1072 | |
880 | |
| 1073 | <p> |
881 | <p> |
| 1074 | Once the modules is loaded, mounting a Windows or Samba share is |
882 | Once the module is loaded, mounting a Windows or Samba share is possible. Use |
| 1075 | possible. Use <c>mount</c> to accomplish this, as detailed below: |
883 | <c>mount</c> to accomplish this, as detailed below: |
| 1076 | </p> |
884 | </p> |
| 1077 | |
885 | |
| 1078 | <pre caption="Mounting a Windows/Samba share"> |
886 | <pre caption="Mounting a Windows/Samba share"> |
| 1079 | <comment>(The syntax for mounting a Windows/Samba share is: |
887 | <comment>(The syntax for mounting a Windows/Samba share is: |
| 1080 | mount -t smbfs [-o username=xxx,password=xxx] //server/share /mnt/point |
888 | mount -t cifs [-o username=xxx,password=xxx] //server/share /mnt/point |
| 1081 | If we are not using passwords or a password is not needed)</comment> |
889 | If we are not using passwords or a password is not needed)</comment> |
| 1082 | |
890 | |
| 1083 | # <i>mount -t smbfs //PrintServer/public /mnt/public</i> |
891 | # <i>mount -t cifs //PrintServer/public /mnt/public</i> |
| 1084 | |
892 | |
| 1085 | <comment>(If a password is needed)</comment> |
893 | <comment>(If a password is needed)</comment> |
| 1086 | # <i>mount -t smbfs -o username=USERNAME,password=PASSWORD //PrintServer/public /mnt/public</i> |
894 | # <i>mount -t cifs -o username=USERNAME,password=PASSWORD //PrintServer/public /mnt/public</i> |
| 1087 | </pre> |
895 | </pre> |
| 1088 | |
896 | |
| 1089 | <p> |
897 | <p> |
| 1090 | After you mount the share, you would access it as if it were a local |
898 | After you mount the share, you would access it as if it were a local drive. |
| 1091 | drive. |
|
|
| 1092 | </p> |
899 | </p> |
| 1093 | |
900 | |
| 1094 | </body> |
901 | </body> |
| 1095 | </section> |
902 | </section> |
| 1096 | <section> |
903 | <section> |
| 1097 | <title>Printer Configuration for Windows NT/2000/XP clients</title> |
904 | <title>Printer Configuration for Windows NT/2000/XP clients</title> |
| 1098 | <body> |
905 | <body> |
| 1099 | |
906 | |
| 1100 | <p> |
907 | <p> |
| 1101 | That's just a bit of point-and-click. Browse to |
908 | That's just a bit of point-and-click. Browse to <path>\\PrintServer</path> and |
| 1102 | <path>\\PrintServer</path> and right click on the printer |
909 | right click on the printer (HPDeskJet930C) and click connect. This will download |
| 1103 | (HPDeskJet930C) and click connect. This will download the drivers to |
|
|
| 1104 | the Windows client and now every application (such as Word or Acrobat) |
910 | the drivers to the Windows client and now every application (such as Word or |
| 1105 | will offer HPDeskJet930C as an available printer to print to. :-) |
911 | Acrobat) will offer HPDeskJet930C as an available printer to print to. :-) |
| 1106 | </p> |
912 | </p> |
| 1107 | |
913 | |
| 1108 | </body> |
914 | </body> |
| 1109 | </section> |
915 | </section> |
| 1110 | </chapter> |
916 | </chapter> |
| … | |
… | |
| 1114 | <section> |
920 | <section> |
| 1115 | <title>A Fond Farewell</title> |
921 | <title>A Fond Farewell</title> |
| 1116 | <body> |
922 | <body> |
| 1117 | |
923 | |
| 1118 | <p> |
924 | <p> |
| 1119 | Well that should be it. You should now have a successful printing enviroment |
925 | That should be it. You should now have a successful printing enviroment that is |
| 1120 | that is friendly to both Windows and *nix as well as a fully virus-free working |
926 | friendly to both Windows and *nix as well as a working share! |
| 1121 | share! |
|
|
| 1122 | </p> |
927 | </p> |
| 1123 | |
928 | |
| 1124 | </body> |
929 | </body> |
| 1125 | </section> |
930 | </section> |
| 1126 | </chapter> |
931 | </chapter> |
| … | |
… | |
| 1136 | troubleshooting your installation: |
941 | troubleshooting your installation: |
| 1137 | </p> |
942 | </p> |
| 1138 | |
943 | |
| 1139 | <ul> |
944 | <ul> |
| 1140 | <li><uri link="http://www.cups.org/">CUPS Homepage</uri></li> |
945 | <li><uri link="http://www.cups.org/">CUPS Homepage</uri></li> |
|
|
946 | <li> |
| 1141 | <li><uri link="http://www.samba.org/">Samba Homepage</uri></li> |
947 | <uri link="http://www.samba.org/">Samba Homepage</uri>, especially the <uri |
|
|
948 | link="http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/CUPS-printing.html">chapter |
|
|
949 | on Samba/CUPS configuration</uri> |
|
|
950 | </li> |
| 1142 | <li><uri link="http://linuxprinting.org/">LinuxPrinting dot Org</uri></li> |
951 | <li><uri link="http://linuxprinting.org/">LinuxPrinting dot Org</uri></li> |
| 1143 | <li> |
952 | <li> |
| 1144 | <uri link="http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/">Kurt |
953 | <uri link="http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/">Kurt |
| 1145 | Pfeifle's Samba Print HOWTO</uri> ( |
954 | Pfeifle's Samba Print HOWTO</uri> ( This HOWTO really covers <e>ANYTHING</e> |
| 1146 | This HOWTO really covers <e>ANYTHING</e> and <e>EVERYTHING</e> |
|
|
| 1147 | I've written here, plus a LOT more concerning CUPS and Samba, and |
955 | and <e>EVERYTHING</e> I've written here, plus a LOT more concerning CUPS and |
| 1148 | generally printing support on networks. A really interesting read, |
956 | Samba, and generally printing support on networks. A really interesting |
| 1149 | with lots and lots of details) |
957 | read, with lots and lots of details.) |
| 1150 | </li> |
958 | </li> |
| 1151 | <li><uri link="http://www.freebsddiary.org/cups.php">FreeBSD Diary's CUPS Topic</uri></li> |
959 | <li><uri link="http://www.freebsddiary.org/cups.php">FreeBSD Diary's CUPS Topic</uri></li> |
| 1152 | </ul> |
960 | </ul> |
| 1153 | |
961 | |
| 1154 | </body> |
962 | </body> |
| … | |
… | |
| 1156 | <section> |
964 | <section> |
| 1157 | <title>Troubleshooting</title> |
965 | <title>Troubleshooting</title> |
| 1158 | <body> |
966 | <body> |
| 1159 | |
967 | |
| 1160 | <p> |
968 | <p> |
|
|
969 | See <uri |
| 1161 | See <uri link="http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/Samba-HOWTO-Collection-3.0-PrintingChapter-11th-draft.html#37">this |
970 | link="http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/Samba-HOWTO-Collection-3.0-PrintingChapter-11th-draft.html#37">this |
| 1162 | page</uri> from Kurt Pfeifle's "Printing Support in Samba 3.0" |
971 | page</uri> from Kurt Pfeifle's "Printing Support in Samba 3.0" manual. Lots of |
| 1163 | manual. Lots of useful tips there! Be sure to look this one up |
972 | useful tips there! Be sure to look this one up first, before posting questions |
| 1164 | first, before posting questions and problems! Maybe the solution |
973 | and problems! Maybe the solution you're looking for is right there. |
| 1165 | you're looking for is right there. |
|
|
| 1166 | </p> |
974 | </p> |
| 1167 | |
975 | |
| 1168 | </body> |
976 | </body> |
| 1169 | </section> |
977 | </section> |
| 1170 | </chapter> |
978 | </chapter> |