国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于Curses技術實現(xiàn)跨用戶跨主機管理的方法及系統(tǒng)的制作方法

      文檔序號:7808230閱讀:195來源:國知局
      一種基于Curses技術實現(xiàn)跨用戶跨主機管理的方法及系統(tǒng)的制作方法
      【專利摘要】本發(fā)明涉及一種基于Curses技術實現(xiàn)跨用戶跨主機管理的方法及系統(tǒng),所述方法包括以下步驟:步驟1,配置多臺主機及用于管理所有主機的運維平臺;步驟2,在各臺主機上配置Curses界面管理工具和expect腳本;步驟3,運維平臺遠程登錄各主機,并通過調用expect腳本進行主機切換;步驟4,運維平臺調用切換到的主機的Curses界面管理工具監(jiān)控該主機。本發(fā)明能夠方便開發(fā)、測試、維護人員在多臺主機操作時,進行用戶切換,且基于Curses菜單式界面系統(tǒng)管理,為系統(tǒng)的運營維護提供了圖形用戶界面環(huán)境,使得操作更加直觀,方便維護人員更加有效快捷地進行運營維護管理。
      【專利說明】-種基于Curses技術實現(xiàn)跨用戶跨主機管理的方法及系 統(tǒng)

      【技術領域】
      [0001] 本發(fā)明涉系統(tǒng)圖形界面管理【技術領域】,特別是涉及一種基于Curses技術實現(xiàn)跨 用戶跨主機管理的方法及系統(tǒng)。

      【背景技術】
      [0002] 到目前為止,基本上所有的linux、unix廠家都提供了圖形用戶界面環(huán)境,linux、 unix中可以使用Qt、GTK+等進行X Window開發(fā)。但是在實際工作應用中,使用的最多的 還是UNIX的字符終端環(huán)境,一方面UNIX的字符終端環(huán)境下的資源消耗比⑶I環(huán)境少得多, 另一方面則是由于curses技術的出現(xiàn)。curses技術是利用curses圖形管理類庫,為用戶 人機交互提供更方便快捷的工具,既減少了資源消耗,又提供了圖像管理界面。
      [0003] 現(xiàn)有業(yè)務路由器系統(tǒng)(SR)、增值業(yè)務訂購關系管理系統(tǒng)(VS0P)等,都處于各應用 主機登錄各主機,顯得比較繁瑣,又顯得管理比較混亂,安全性也得不到保證。因此,本發(fā)明 提出一種基于Curses技術實現(xiàn)跨用戶跨主機圖形界面管理方法及系統(tǒng),利用curses技術 開發(fā)的桌面化操作界面,更容易地進行人機交互。


      【發(fā)明內容】

      [0004] 本發(fā)明所要解決的技術問題是提供一種基于Curses技術實現(xiàn)跨用戶跨主機管理 的方法及系統(tǒng),用于解決各種軟件系統(tǒng)的跨用戶跨主機圖形界面管理問題。
      [0005] 本發(fā)明解決上述技術問題的技術方案如下:一種基于Curses技術實現(xiàn)跨用戶跨 主機管理的方法,包括以下步驟:
      [0006] 步驟1,配置多臺主機及用于管理所有主機的運維平臺;
      [0007] 步驟2,在各臺主機上配置Curses界面管理工具和expect腳本;
      [0008] 步驟3,運維平臺遠程登錄各主機,并通過調用expect腳本進行主機切換;
      [0009] 步驟4,運維平臺調用切換到的主機的Curses界面管理工具監(jiān)控該主機。
      [0010] 在上述技術方案的基礎上,本發(fā)明還可以做如下改進。
      [0011] 進一步,所述步驟2中,將expect腳本嵌套在Curses界面管理工具中。
      [0012] 進一步,所述步驟2還包括:基于Curses界面管理工具開發(fā)srmonitor工具,用于 對各主機進行日常運維管理及實現(xiàn)人機交互操作。
      [0013] 進一步,所述步驟3中,運維平臺通過事先編制的遠程登錄腳本登錄到各主機。
      [0014] 進一步,所述各主機為應用在業(yè)務路由器系統(tǒng)和/或增值業(yè)務訂購關系管理系統(tǒng) 中的主機。
      [0015] 本發(fā)明的技術方案還包括一種基于Curses技術實現(xiàn)跨用戶跨主機管理的系統(tǒng), 包括多臺主機和用于管理所有主機的運維平臺,且各臺主機上配置Curses界面管理工具 和expect腳本,所述運維平臺用于遠程登錄各主機,并通過調用expect腳本進行主機切 換;所述運維平臺還用于調用切換到的主機的Curses界面管理工具監(jiān)控該主機。
      [0016] 進一步,所述expect腳本嵌套在所述Curses界面管理工具中。
      [0017] 進一步,所述Curses界面管理工具中帶有srmonitor工具,用于對各主機進行日 常運維管理及實現(xiàn)人機交互操作。
      [0018] 進一步,所述運維平臺帶有事先編制的遠程登錄腳本,用于通過該遠程登錄腳本 登錄到各主機。
      [0019] 進一步,所述各主機為應用在業(yè)務路由器系統(tǒng)和/或增值業(yè)務訂購關系管理系統(tǒng) 中的主機。
      [0020] 本發(fā)明的有益效果是:本發(fā)明能夠方便開發(fā)、測試、維護人員在多臺主機操作時, 進行用戶切換,且基于Curses菜單式界面系統(tǒng)管理,為系統(tǒng)的運營維護提供了圖形用戶界 面環(huán)境,使得操作更加直觀,方便維護人員更加有效快捷地進行運營維護管理。綜合來說, 本發(fā)明實現(xiàn)了在同一臺主機上跨用戶跨主機維護管理軟件系統(tǒng),實現(xiàn)了產品系統(tǒng)的圖形界 面一點登錄、一點管理、多點正常運行。

      【專利附圖】

      【附圖說明】
      [0021] 圖1為本發(fā)明所述基于Curses技術實現(xiàn)跨用戶跨主機管理的方法的流程示意圖。

      【具體實施方式】
      [0022] 以下結合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并 非用于限定本發(fā)明的范圍。
      [0023] 如圖1所示,本實施例給出了一種基于Curses技術實現(xiàn)跨用戶跨主機管理的方 法,包括以下步驟:
      [0024] 步驟1,配置多臺主機及用于管理所有主機的運維平臺;
      [0025] 步驟2,在各臺主機上配置Curses界面管理工具和expect腳本;基于Curses界 面管理工具開發(fā)srmonitor工具,用于對各主機進行日常運維管理及實現(xiàn)人機交互操作;
      [0026] 步驟3,運維平臺遠程登錄各主機,并通過調用expect腳本進行主機切換;
      [0027] 步驟4,運維平臺調用切換到的主機的Curses界面管理工具監(jiān)控該主機。
      [0028] 其中,所述步驟2中,將expect腳本嵌套在Curses界面管理工具中;所述步驟3 中,運維平臺通過事先編制的遠程登錄腳本登錄到各主機。
      [0029] 對應地,本實施例還給出了一種基于Curses技術實現(xiàn)跨用戶跨主機管理的系統(tǒng), 包括多臺主機和用于管理所有主機的運維平臺,且各臺主機上配置Curses界面管理工具 和expect腳本,所述運維平臺用于遠程登錄各主機,并通過調用expect腳本進行主機切 換;所述運維平臺還用于調用切換到的主機的Curses界面管理工具監(jiān)控該主機。該系統(tǒng)與 上述基于Curses技術實現(xiàn)跨用戶跨主機管理的方法的工作原理和具體實施細節(jié)相同,這 里不再多述。
      [0030] 具體地,所述各主機為應用在業(yè)務路由器系統(tǒng)和/或增值業(yè)務訂購關系管理系統(tǒng) 中的主機。以業(yè)務路由器系統(tǒng)為例,在電信業(yè)務路由器平臺實施中,業(yè)務路由器是實行雙機 部署的,為了方便維護,運維人員開發(fā)了自己的運維平臺,運維平臺可以通過expect遠程 登錄腳本(方便不讓運維人員知曉運營系統(tǒng)的用戶、口令)直接跳轉到業(yè)務路由器,進而調 用業(yè)務路由器平臺的curses界面化管理工具srmonitor,對業(yè)務路由器平臺進行日常運維 管理、監(jiān)控,這樣就方便了運維操作,實現(xiàn)了一點登錄,多點維護。降低了維護成本。本實施 例的核心在于對Curses界面管理工具的應用,下面給出本實施例在具體實施過程涉及的 相關腳本及程序。
      [0031] ( 一)遠程登錄的腳本:telnet_memdb. sh
      [0032] # ! /usr/bin/expect
      [0033] spawn telnet IP
      [0034] expect"login:〃
      [0035] send"user\n〃
      [0036] expect"Password:〃
      [0037] send"passwd\n"
      [0038] Interact
      [0039] (二)切換腳本調用方式:expect-f腳本名稱
      [0040] 為了方便各主機及各用戶進行切換,每臺主機上都需要有跨用戶跨主機切換腳 本。
      [0041] (三)Curses界面工具方案
      [0042] Curses開發(fā)的程序中嵌套跨用戶跨主機管理腳本,即可實現(xiàn)curses界面下的用 戶跨主機管理
      [0043] 1、利用curses技術開發(fā)srmonitor(SR界面化監(jiān)控、運維工具),能夠整合SR命令 集,及進行人機交互操作,主要包括以下幾步。
      [0044] 1)初始化屏幕
      [0045] init_curses ();
      [0046] 2)繪制首界面
      [0047] 通過 draw_top_win、draw_left_win、draw_right_win、draw_bottom_win 函數(shù)來 繪制首頁面。
      [0048] 3)執(zhí)行不同的選項
      [0049] 通過上、下、左、右鍵來進而查看不同的選項,通過在底部輸入命令,執(zhí)行回車,進 而來執(zhí)行相對應的命令。從而使的命令執(zhí)行界面化。
      [0050] 4)執(zhí)行界面返回首頁面
      [0051] 在執(zhí)行界面輸入r命令來返回主界面。
      [0052] 各頁面之間的切換主要靠擦除和刷新函數(shù)來進行。curses庫包含的大量的功能函 數(shù),使的程序模塊化增強,便于菜單和表單的修改,從而實現(xiàn)了高效的網絡管理。
      [0053] 本實施例中需要用于的curses庫函數(shù)包括以下幾種。
      [0054] 1)初始化和重置函數(shù)
      [0055] 所有curses程序必須以initscr函數(shù)開始,以endwin函數(shù)結束。
      [0056] WINDOW*initscr (void) ;//在一個程序中只調用一次,返回一個指向stdscr結構 的指針,失敗輸出一條診斷信息并使程序結束。
      [0057] int endwin (void) ;//成功返回 0K,失敗返回 ERR。
      [0058] 2)輸出到屏幕
      [0059] 用于刷新屏幕的基本函數(shù),字符類型chtype是比標準的char類型包含更多的二 進制位。實際上是unsigned long類型的一個typedef類型定義。
      [0060] int addch (const chtype char_to_add);
      [0061] int addchstr (chtype氺const string-to-add);
      [0062] int printw(char*format,…);
      [0063] int refresh (void);
      [0064] int box(WIND0W*win-ptr,chtype vertical_char, chtype horizontal_char);
      [0065] int insch (chtype char-to-insert);
      [0066] int insertln (void);
      [0067] int delch (void);
      [0068] int deleteln (void);
      [0069] int beep (void);
      [0070] int flash (void);
      [0071] 3)從屏幕讀取
      [0072] chtype inch (void) ;//返回光標當前位置的字符及其屬性。
      [0073] int instr (char木string);
      [0074] int innstr (char木string,int number_of-characters);
      [0075] 4)清除屏幕
      [0076] int erase (void) ;//在屏幕位置寫上空白字符
      [0077] int clear (void);
      [0078] int clrt〇b〇t(V〇id) ;//清除當前光標所在行下面的所有行,包括當前光標所在 行的光標位置右邊直到行尾的內容
      [0079] int clrtoeol (void) ;//清除當前光標所在行的光標位置右邊直到行尾的內容。
      [0080] 5)移動光標
      [0081] int move (int new_y, int new_x);
      [0082] int leaveok(WIND0W*window_ptr,bool leave_flag) ;//設置一個標志,用于控 制在屏幕刷新后curses將物理光標放置的位置。
      [0083] 6)字符屬性
      [0084] 預定義的屬性有:A_BLINK A_B0LD A_DM A_REVERSE A_STAND0UT A_UN DERLINE
      [0085] int attron(chtype attribute);
      [0086] int attroff (chtype attribute);
      [0087] int attrset (chtype attribute);
      [0088] int standout (void);
      [0089] int standend (void);
      [0090] 7)鍵盤的工作模式
      [0091] int echo (void);
      [0092] int noecho (void);
      [0093] int cbreak (void);
      [0094] int nocbreak (void);
      [0095] int raw (void);
      [0096] int noraw (void);
      [0097] 8)鍵盤輸入
      [0098] int getch (void);
      [0099] int getstr (char木string)
      [0100] int getnstr (char木string,int number_of-characters);
      [0101] int scanw(char*format,…);
      [0102] 9)窗口函數(shù)
      [0103] WIND0W*newwin(int num-of-lines,int num-of-cols,int start_y, int start- x);
      [0104] int delwin(WIND0W*window-to-delete);
      [0105] 10)通用窗口函數(shù)
      [0106] int addch (const chtype char);
      [0107] int waddch(WIND0W*window-pointer,const chtype char);
      [0108] int mvaddch(int y, int x, const chtype char);
      [0109] int mvwaddch(WIND0W*window-pointer,int y,int x,const chtype char);
      [0110] int printw(char*format,…);
      [0111] int wprintw(WIND0W*window-pointer,char*format,…);
      [0112] int mvprintw(int y, int x, char^format,...);
      [0113] int mvwprintw(WIND0W*window-pointer,int y, int x,char*format,…);
      [0114] 11)窗口移動和更新屏幕
      [0115] int mvwin (WIND0W*window-to-move,int new-y,int new-x);
      [0116] int wrefresh(WIND0W*window-ptr);
      [0117] int wclear(WIND0W*window-ptr);
      [0118] int werase (WIND0W*window-ptr);
      [0119] int touchwin(WIND0W*window-ptr);
      [0120] int scrollok(WIND0W*window-ptr,bool scroll-flag);
      [0121] int scroll(WIND0W*window-ptr);
      [0122] 12)窗口優(yōu)化屏幕刷新
      [0123] int wnoutrefresh(WINDOW*window-ptr);
      [0124] int doupdate (void);
      [0125] 13)子窗口
      [0126] WIND0W*subwin(WIND0W*parent, int num-of-lines, int num-of-cols, int start-y, int start-x);
      [0127] int delwin(WIND0W*window-to-delete);
      [0128] 14) keypad 模式
      [0129] int keypad(WIND0W*window-ptr,bool keypad-on);
      [0130] 15)彩色顯示
      [0131] bool has-colors (void);
      [0132] int start-color (void);
      [0133] int init-pair(short pair-number,short foreground,short background);
      [0134] int COLOR-PAIR (int pair-number);
      [0135] int pair_content(short pair_number,short*foreground,short*backgroun d);
      [0136] int init_color(short color-number,short red,short green,short blue);
      [0137] 16) pad
      [0138] WIND0W*newpad(int number-of-lines,int number-of-columns);
      [0139] int prefresh(WINDOW氺pad-ptr,int pad-row,int pad-column,int screen-row- min,int screen-col-min,int screen-row-max,int screen-col-max);
      [0140] 以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和 原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
      【權利要求】
      1. 一種基于Curses技術實現(xiàn)跨用戶跨主機管理的方法,其特征在于,包括以下步驟: 步驟1,配置多臺主機及用于管理所有主機的運維平臺; 步驟2,在各臺主機上配置Curses界面管理工具和expect腳本; 步驟3,運維平臺遠程登錄各主機,并通過調用expect腳本進行主機切換; 步驟4,運維平臺調用切換到的主機的Curses界面管理工具監(jiān)控該主機。
      2. 根據(jù)權利要求1所述的方法,其特征在于,所述步驟2中,將expect腳本嵌套在 Curses界面管理工具中。
      3. 根據(jù)權利要求1所述的方法,其特征在于,所述步驟2還包括:基于Curses界面管 理工具開發(fā)srmonitor工具,用于對各主機進行日常運維管理及實現(xiàn)人機交互操作。
      4. 根據(jù)權利要求1所述的方法,其特征在于,所述步驟3中,運維平臺通過事先編制的 遠程登錄腳本登錄到各主機。
      5. 根據(jù)權利要求1至4中任一所述的方法,其特征在于,所述各主機為應用在業(yè)務路由 器系統(tǒng)和/或增值業(yè)務訂購關系管理系統(tǒng)中的主機。
      6. -種基于Curses技術實現(xiàn)跨用戶跨主機管理的系統(tǒng),其特征在于,包括多臺主機和 用于管理所有主機的運維平臺,且各臺主機上配置Curses界面管理工具和expect腳本,所 述運維平臺用于遠程登錄各主機,并通過調用expect腳本進行主機切換;所述運維平臺還 用于調用切換到的主機的Curses界面管理工具監(jiān)控該主機。
      7. 根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述expect腳本嵌套在所述Curses界面 管理工具中。
      8. 根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述Curses界面管理工具中帶有 srmonitor工具,用于對各主機進行日常運維管理及實現(xiàn)人機交互操作。
      9. 根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述運維平臺帶有事先編制的遠程登錄 腳本,用于通過該遠程登錄腳本登錄到各主機。
      10. 根據(jù)權利要求6至9中任一所述的系統(tǒng),其特征在于,所述各主機為應用在業(yè)務路 由器系統(tǒng)和/或增值業(yè)務訂購關系管理系統(tǒng)中的主機。
      【文檔編號】H04L29/08GK104111869SQ201410317626
      【公開日】2014年10月22日 申請日期:2014年7月4日 優(yōu)先權日:2014年7月4日
      【發(fā)明者】彭德 申請人:北京思特奇信息技術股份有限公司
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1