通過網路將你的掃描結果發送到 Linux 機器上
自由軟體運動 因為一台設計不良的印表機 而開始。幾十年後,印表機和掃描儀製造商繼續重新發明輪子,無視既定的通用協議。因此,每隔一段時間,你就會偶然發現一台印表機或掃描儀似乎無法與你的操作系統配合使用。
最近,我在一台佳能三合一掃描儀(佳能 Maxify MB2720)上遇到了這種情況。我用開源方案解決這個掃描儀的問題。具體來說,我設置了一個 Samba 共享,使掃描儀在我的網路上可用。
Samba 項目 是一個用於 Linux/Unix 與 Windows 互操作的套件。儘管它是大多數用戶從未與之交互的低級代碼,但該軟體使得在你的本地網路上共享文件變得很容易,而不管使用的是什麼平台。
我使用的是 Fedora,所以這些說明應該適用於任何基於 RPM 的 Linux 發行版。對於其他發行版,可能需要做一些小的修改。下面是我的做法。
獲取佳能工具
從佳能的網站上下載所需的用於 Windows 的 「 佳能快速實用工具箱 」。該軟體是必需的,因為它是配置印表機目標文件夾位置和憑證的唯一方法。完成後,你就不需要再使用該工具了,除非你想做出改變。
在配置印表機之前,你必須在你的 Linux 電腦或伺服器上設置一個 Samba 共享。用以下命令安裝 Samba:
$ sudo dnf -y install samba
創建 /etc/smb.conf
文件,內容如下:
[global]
workgroup = WORKGROUP
netbios name = MYSERVER
security = user
#CORE needed for CANON PRINTER SCAN FOLDER
min protocol = CORE
#NTML AUTHV1 needed for CANON PRINTER SCAN FOLDER
ntlm auth = yes
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = no
cups options = raw
hosts allow = 127. 192.168.33.
max smbd processes = 1000
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
writable = yes
read only = No
inherit acls = Yes
[SCANS]
comment = MB2720 SCANS
path = /mnt/SCANS
public = yes
writable = yes
browseable = yes
printable = no
force user = tux
create mask = 770
在接近結尾的 force user
這行中,將用戶名從 tux
改為你自己的用戶名。
不幸的是,佳能印表機不能與高於 CORE 或 NTML v2 認證的伺服器信息塊(SMB)協議一起工作。由於這個原因,Samba 共享必須配置最古老的 SMB 協議和 NTML 認證版本。這無論如何都不理想,而且有安全問題,所以我創建了一個單獨的 Samba 伺服器,專門用於掃描儀。我的另一台共享所有家庭網路文件的 Samba 伺服器仍然使用 SMB 3 和 NTML v2 認證版本。
啟動 Samba 服務端服務,並啟用它:
$ sudo systemctl start smb
$ sudo systemctl enable smb
創建一個 Samba 用戶
創建你的 Samba 用戶並為其設置密碼:
$ sudo smbpasswd -a tux
在提示符下輸入你的密碼。
假設你想在 Linux 系統上掛載你的 Samba 掃描儀,你需要做幾個步驟。
創建一個 Samba 客戶端憑證文件。我的看起來像這樣:
$ sudo cat /root/smb-credentials.txt
username=tux
password=mySTRONGpassword
改變許可權,使其不能被其他人閱讀:
$ sudo chmod 640 /root/smb-credentials.txt
創建一個掛載點並將其添加到 /etc/fstab
中:
$ sudo mkdir /mnt/MB2720-SCANS
在你的 /etc/fstab
中添加以下這行:
//192.168.33.50/SCANS /mnt/MB2720-SCANS cifs vers=3.0,credentials=/root/smb-credentials.txt,gid=1000,uid=1000,_netdev 0 0
這將使用 CIFS 將 Samba 共享掃描掛載到新的掛載點,強制採用 SMBv3,並使用存儲在 /root/smb-credetials.txt
中的用戶名和密碼。它還傳遞用戶的組標識符(GID)和用戶標識符(UID),讓你擁有 Linux 掛載的全部所有權。_netdev
選項是必需的,以便在網路正常後(例如重啟後)掛載該掛載點,因為該掛載點需要網路來訪問。
配置佳能軟體
現在你已經創建了 Samba 共享,在伺服器上進行了配置,並將該共享配置到 Linux 客戶端上,你需要啟動「佳能快速實用工具箱」來配置印表機。因為佳能沒有為 Linux 發布工具箱,所以這一步需要 Windows。你可以嘗試 在 WINE 上運行它,但如果失敗了,你就必須向別人借一台 Windows 電腦,或者在 GNOME Boxes 或 VirtualBox 中運行一個 Windows 開發者虛擬機。
打開印表機,然後啟動佳能快速實用工具箱。它應該能找到你的印表機。如果不能看到你的印表機,你必須先將印表機配置為 LAN 或無線網路。
在工具箱中,點擊「 目標文件夾設置 」。
![Canon Quick Utility Toolbox](/data/attachment/album/202105/16/111740lsswbmszck9wl4zm.png "Canon Quick Utility Toolbox")
輸入印表機管理密碼。我的默認密碼是 「canon」。
單擊「 添加 」按鈕。
![Add destination folder](/data/attachment/album/202105/16/111740tvurvwvsu5mgyr38.png "Add destination folder")
在表格中填寫「 顯示名 」、「 目標位置共享文件夾名稱 」,以及你的 Samba 「 域名/用戶名 」和「 密碼 」。
我把 「 PIN 碼 」留空,但如果你想要求每次從印表機掃描時都要輸入 PIN 碼,你可以設置一個。這在辦公室里很有用,每個用戶都有自己的 Samba 共享和 PIN 碼來保護他們的掃描。
點擊「 連接測試 」來驗證表格數據。
點擊 「OK」 按鈕。
點擊 「 註冊到印表機 」,將你的配置保存到印表機上。
![Register to Printer ](/data/attachment/album/202105/16/111741mvbz35tk62lj2362.png "Register to Printer ")
一切都設置好了。點擊「 退出 」。你現在已經完成了 Windows 的操作,可能還有工具箱,除非你需要改變什麼。
開始掃描
你現在可以從印表機掃描,並從其 LCD 菜單中選擇你的「目標文件夾」。掃描結果將直接保存到 Samba 共享中,你可以從你的 Linux 電腦上訪問該共享。
為方便起見,用以下命令在你的 Linux 桌面或家目錄上創建一個符號鏈接:
$ sudo ln -sd /mnt/MB2720-SCANS /home/tux/Desktop/MB2720-SCANS
這就是全部內容了!
via: https://opensource.com/article/21/4/linux-scan-samba
作者:Marc Skinner 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive