LinuxOSを使用したコマンド操作
このセクションではLinuxOSのディストリビューションの一つであるubuntuというOSのターミナル上のコマンドによって操作する方法をやってみようと思います。
ubuntuによるCiscoルータ操作
使用機器及びバージョン
使用OSとバージョン |
ubuntu14.04LTS |
---|---|
設定するルータ |
Ciscoルーター1800シリーズ |
これでやっていきます。
また、最近のPCはコンソール接続用のインターフェースがないものばかりなので特別なものを用意します。
右の商品は、コンソールケーブルと、それをつなぐためのインターフェースがないPC用に作られたUSBシリアルケーブルになります。
Windowsではこれを使ってなんの問題もなくうごいており、今回Linuxでも使ってみて良好に機能していたのでこれで接続できることでしょう。
こんな感じで接続します。
コマンドの大まかな説明
ls | ファイルやディレクトリ情報を表示。-lと合わせて使うと詳細な情報が得られます。 |
---|---|
sudo | 管理者権限に入るためのコマンド。新しいプログラムインストールなどをする際に必要。ユーザIDを変更するsuと組み合わせて使います。 |
dmesg | システム起動時に実行されるカーネル情報を再度表示させる。 |
grep | 特定の文字列を抽出するコマンド。 |
chmod | 既存のファイルやディレクトリのパーミッション(属性)を変更するコマンド。 |
cu | 別のシステムに接続するためのコマンド(ない場合はapt-getでインストしてください)。 |
また/devディレクトリにはデバイスファイルが配置されています。システムが動いているときに接続されているインターフェイスがチェックされます。
まず最初に左にあるターミナルのアイコンをクリックするか、
でなければショートカットの Alt + Ctrl +T でターミナルを起動させます。
ターミナル上での操作
ターミナルを起動させたらまず管理者権限(root)に入ります。
$の後に次のように打ち込んでEnterを押します。
:〜$ sudo su
このあとパスワードを入力すると“:〜$”の部分が“root@〜(省略)#”に変更されて管理者権限になります。
root@〜〜〜〜〜〜#
次にdmesgコマンドとgrepをパイプを使って以下のように入力してEnterキーを押します。
# dmesg | grep ttyUSB
次のように表示されます。
コマンド“cu”のヘルプを見てみると次のようにマニュアルが出てきます。
-a,-p,--port port: Use named port
-l,--line line: Use named device (e.g. tty0)
-s,--speed,--baud speed, -#: Use given speed
-c,--phone phone: Phone number to call
-z,--system system: System to call
-e: Set even parity
-o: Set odd parity
--parity={odd,even}: Set parity
-E,--escape char: Set escape character
-h,--halfduplex: Echo locally
--nostop: Turn off XON/XOFF handling
-t,--mapcr: Map carriage return to carriage return/linefeed
-n,--prompt: Prompt for phone number
-d: Set maximum debugging level
-x,--debug debug: Set debugging type
-I,--config file: Set configuration file to use
-v,--version: Print version and exit
--help: Print help and exit

-s,--speed,--baud speed, -#: Use given speedと書かれている“-s”と、-l,--line line: Use named device (e.g. tty0)の“-l”を組み合わせてコマンドを打ちます。
<COMポートの設定>
今回このCiscoルータに接続する際は以下のような設定にします。
- ビット/秒 … 9600
- データビット … 8
- パリティ … なし
- ストップビット… 1
- フロービット … なし
パリティ、フロービットはなしで設定し、9600ビット/秒を指定。
# cu -s 9600 -l /dev/ttyUSB0
しかしこのまま接続のためのコマンドを打つと次のようにデナイされてしまいます。
パーミッションデナイドと書かれているので次にこれの属性を調べます。
#の後に次のように入力してエンターを押します。
# ls -l /dev/ttyUSB0
すると次のように属性が表示され、rw-rw----となっており、パーミッションが660であることがわかります。
次に接続を成立させるためにこのパーミッションコードを変更させます。
先頭の一文字(c)を除いた9ビットを3ビットごとに区切り、左先頭一文字cを除いたところの左から3ビットごとに、ユーザ(所有者)、グループ、その他ユーザ、という割り当てになります。
アルファベットの意味はそれぞれ、r(read)、w(write)、x(eXecutable)で次のような意味を持ちます。
r : 読み取り許可 |
ファイルの内容を読むことができる。 |
---|---|
w : 書き込み許可 |
ファイルの内容を編集することができる。 |
x : 実行権 |
ファイルの実行権を持ち実行できる。 |
- |
許可がないことを意味します。 |
さらに次のように8進数の数値を使ってそれぞれを表現しています。
パーミッション | 記号 | 数値 |
---|---|---|
読み取り権限 | r |
4 |
書き込み権限 | w |
2 |
実行権限 | x |
1 |
権限なし | - |
0 |
なので編集できるようにパーミッションコードをchmodコマンドを使って変更します。
# chmod 666 /dev/ttyUSB0
すると次のように接続が開始されます。
しばらくしてEnterを押すとuser EXECモードに入ります。
これで接続は完了です。
この後EXECモードの > の後に“enable”と入力してEnterを押すとPrivileged EXECモードに入ります。
LinuxPCによる接続関連ページ
- パスワード復旧
- CISCO2500ルータでのパスワード復旧 show versionでコンフィグレーションレジスタ値を確認し、リブートさせた時にブレーク信号をいれて操作していきます。
- Cisco IOSのバックアップ
- CIscoIOSが万が一壊れたときの場合やアップグレードする際の前準備として、現状のファイル群をtftpと呼ばれるホストサーバーに保存する作業をしておきます。