肖 健 鄭 超 郭 冰 林巖釗
(福建省地震局,福建 福州 350003)
當前,在全球從工業經濟向數字經濟時代轉變的大背景下,作為社會信息化、數字化的基礎設施,基礎軟件的重要性不言而喻。而基礎軟件中的操作系統,在計算機體系架構中是所有軟件的基礎和底座,更是重中之重[1]。
近年來,美國芯片出口管制愈發升級,相關技術“卡脖子”問題也日益凸顯,一時間“缺芯少魂”引發廣泛關注。這里所說的“缺芯少魂”指的就是缺少作為計算機和互聯網信息世界的硬件“神經中樞”的芯片,以及讓計算機硬件具備“靈魂”的操作系統。長期倡導自主開發操作系統的倪光南院士曾表示過,誰掌控了操作系統,誰就掌握了小到一臺電腦、大到一個網絡的“開關鍵”,甚至可以在需要的情況下去掌控所有的用戶信息和操作行為,這就好比應用程序這座房子,需要穩定的操作系統打好地基一樣。因此,操作系統不僅僅關乎信息技術競爭力,更與國家信息安全息息相關[2]。
本文提出一種基于銀河麒麟操作系統的文件共享機制,搭建SAMBA 服務實現共享,解決局域網內不同操作系統之間進行數據共享和數據轉移等問題,為Windows 平臺向國產操作系統平滑過渡提供良好的條件,提升國產操作系統的市場份額,扭轉“缺芯少魂”的現狀。
在過去的數十年,為了適應國家社會經濟快速發展的需要,在操作系統等領域,我們更多的是實行“拿來主義”。這在當時的歷史階段發揮了積極作用,但同時很大程度上也形成了技術依賴[1]。
根據statcounter 網站給出的2022 年2 月中國桌面操作系統的市場份額[3],作為從操作系統巨頭的微軟公司Windows 系統占比85.36%,蘋果的Mac 系統占比5.67%,二者共同占有中國桌面操作系統91%以上的市場份額,而各類Linux 操作系統僅占有不到1%,如圖1所示。

圖1 2022 年2 月我國桌面操作系統比例
早在20 世紀90 年代,我國的科研工作者們已經清晰地認識到自主研發操作系統的戰略意義。倪光南院士曾說:“操作系統中最關鍵的技術,必須依靠自主研發,這是用錢買不到的;國產軟件要想做好就要做到一個聯盟、一個標準、一個生態,做到像微軟和英特爾的Wintel聯盟一樣”[4]。
目前主要的國產操作系統有11 個,基本上都是基于開源的Linux 研發完成,分別是:中標麒麟(NeoKylin)、紅旗Linux、優麒麟(UbuntuKylin)、中興新支點SPG 思普操作系統(SPGnux)、一銘操作系統、鳳凰系統(Phoenix OS)、凝思磐石安全操作系統、雨林木風操作系統(YLMF OS)、共創Linux 以及深度Linux(Deepin)。
2014 年,中國電子信息產業集團有限公司旗下的兩家操作系統公司——中標軟件有限公司和天津麒麟信息技術有限公司,實現強強整合,成立麒麟軟件有限公司(簡稱“麒麟軟件”),致力于打造中國操作系統核心力量,以順應產業發展趨勢、市場客戶需求和國家網絡空間安全戰略需要。麒麟操作系統的發展已走過30 余個春秋,在建設社會主義現代化國家方針指導下,終于使得麒麟操作系統成長為國產操作系統無可爭議的龍頭產品。
在“2020 年度央企十大國之重器”評選中,麒麟軟件有限公司發布的“銀河麒麟操作系統V10”名列其中[5],這在一定程度上顯示著麒麟操作系統已經開始承載重大歷史責任和歷史使命。截至目前,麒麟軟件已形成服務器操作系統、桌面操作系統、嵌入式操作系統、麒麟云等產品,它以安全可信的操作系統技術為核心,擁有著面向通用領域打造安全創新操作系統和相應解決方案,也擁有面向專用領域打造高安全高可靠操作系統和解決方案,并且同時支持飛騰、鯤鵬、龍芯、申威、兆芯、海光等國產CPU,為各類設備的國產化提供了良好的系統支持。據賽迪顧問統計,麒麟軟件旗下操作系統產品,連續10 年位列中國Linux 市場占有率第一名[6]。
文件共享(file sharing)是指公眾或私人在不同的訪問(access)權限水平下共享計算機數據(data)或網絡(network)空間。
文件共享允許許多人使用能夠被閱讀或瀏覽、寫入或修改、復制、及打印的同一文件或組合文件。用戶可能全部都有同樣的訪問權限水平,也可能有不同的訪問權限水平。
常見的文件共享主要包括FTP、NFS 和Samba。從跨平臺的角度看,NFS 跨平臺兼容性較差;從掛載的角度,FTP 對用戶是不透明的;此外Samba 還支持共享打印機和Windows 域管理等。綜上,本文以Samba 為基礎,構建共享平臺。
Samba 是獲得GNU 許可的自由軟件,它為局域網內的安裝不同操作系統(Windows、Linux 和Unix 等)的計算機之間提供文件共享和打印等服務,安裝有Samba 服務的服務端(Server)可以為客戶端提供相應的文件和打印等服務。
誠然,在麒麟系統中安裝Samba 服務,其它計算機(Linux 或Windows)作為客戶機均可以訪問麒麟系統提供的文件和打印服務,實現兩個系統間的數據交互,為本文提供了解決方案。
本實施例安裝的銀河麒麟操作系統版本為:Linux-4.4.131-20200710.kylin.x86-generic-x86_64-withkylin-V10-juniper,如圖2 所示。

圖2 銀河麒麟操作系統桌面
銀河麒麟系統管理員(root) 通過apt-get install samba 命令進行samba 的安裝。安裝完成后,可通過samba -v 命令查看所安裝的samba 軟件的版本,如圖3所示,顯然安裝的是4.3.11-Ubuntu 版本。同時也證實了samba 軟件已經安裝成功。

圖3 samba 的安裝和測試
麒麟操作系統中,Samba 服務依靠配置文件實現文件共享。Samba 服務安裝后,會在/etc/samba 目錄下生成smb.conf 配置文件。該文件由不同的域組成,包括全局配置域global(文件中以中括號進行標識)和用戶自定義的配置域,主要包括home、printer。全局配置部分如果與共享部分有沖突,共享部分的設置優先級高于全局配置。
為了實現Windows 可以訪問麒麟共享的文件,只需要對Samba 的配置文件進行修改,增加一個共享段,在配置文件的最后添加下列信息:
[KylinSmb] 是定義了一個叫KylinSmb 的段;comment=Kylin Samba 是該段的注釋;path 為自定義的KylinSmb 段的共享目錄所在的位置;
接下來的兩行,主要是來賓和匿名用戶權限的設置,包括開放來賓用戶或匿名用戶、允許來賓用戶或匿名用戶進行瀏覽查看;
接下來的三行valid users、writable 和read only 主要是設置有效用戶及其權限,包括設置cea 用戶為合法用戶、并具有可寫等功能。
最后的create mask=0777 代表客戶端上傳的文件默認權限是777(即可讀可寫可執行);directory mask=0777代表客戶端上傳的文件夾的默認權限是777(即可讀可寫可訪問);available=yes 代表該共享是可用的。參數的詳細說明可以查看相應的幫忙文檔。
值得一提的是valid users 必須是銀河麒麟操作系統的用戶。同時,還需要系統管理員通過smbpasswd -a cea命令為valid users(本實施例為cea)新建一個samba 的密碼。最后系統管理員通過service smbd restart 命令重啟samba 服務。
由于系統是跨平臺的,圖4 給出的是麒麟系統通過文件管理器登錄本文的共享平臺(IP 地址為192.168.86.101),事實上,也可以通過smb://192.168.86.101 進行登錄和查看本機,如圖4 所示。本機提供了Samba 自帶的Print$共享和本文定義的KylinSmb 共享。

圖4 麒麟系統登錄共享平臺
雙擊KylinSmb 圖標,直接進入服務端的共享文件夾(此時,地址欄顯示的192.168.86.101 主機上的PATH 目錄,即/home/cea/share/smb_main,詳見表1),如圖5 所示。

表1 samba 配置文件新增共享信息

圖5 查看共享目錄
圖6 給出Windows 通過網上鄰居(或資源管理器)打開\192.168.86.101,查看麒麟新建的共享平臺,文件夾對用戶是透明的,對麒麟操作系統文件的操作與本地文件的操作無異,由于賦予了寫權限,可以將Windows 平臺的數據和文件轉移到麒麟操作系統中,最終實現平臺轉移。

圖6 Windows 登錄共享平臺
本文提供一種通過搭建SAMBA 服務,實現銀河麒麟操作系統的文件共享機制。實驗證明,Windows 用戶可以利用該平臺,不需要命令行就可以將數據和文件轉移到國產的銀河麒麟操作系統中,為Windows 平臺向國產操作系統平滑過渡提供良好的條件。