meta data for this page
差分
このページの2つのバージョン間の差分を表示します。
— |
lab:ros:ubuntu-setup [2020/06/02 20:39] (現在) strv 作成 |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | # ROS用Ubuntuで最初にやることリスト | ||
+ | |||
+ | ROSをインストールしてロボットに搭載するためのUbuntuで使い始めるために必要なことを備忘録としてまとめます. | ||
+ | 適宜思い出したら追記していくと思います. | ||
+ | |||
+ | # シリアルポート関係 | ||
+ | |||
+ | ## modemmanager をアンインストールする | ||
+ | |||
+ | ``` | ||
+ | sudo apt purge modemmanager | ||
+ | ``` | ||
+ | |||
+ | こいつがいるとシリアルポートとして認識されるデバイスが認識されてから1分(だっけ? | ||
+ | ロボットでこいつが必要になることは無いと思うので,アンインストール. | ||
+ | |||
+ | ## ユーザをdialoutグループに追加する | ||
+ | |||
+ | ``` | ||
+ | sudo usermod -aG dialout ゆーざ名 | ||
+ | ``` | ||
+ | |||
+ | シリアルポートデバイスは dialout グループとしてデバイスファイルができるので,ユーザを追加しておけば sudo しなくてもシリアルポートを使える. | ||
+ | |||
+ | # ネットワーク関係 | ||
+ | |||
+ | ## ホスト情報を設定する | ||
+ | |||
+ | ``` | ||
+ | / | ||
+ | ``` | ||
+ | |||
+ | にそのPCのユニークな名前を書く. | ||
+ | 他のPCと被らない名前にする. | ||
+ | 短いほうが楽. | ||
+ | |||
+ | ``` | ||
+ | /etc/hosts | ||
+ | ``` | ||
+ | |||
+ | の一行目にある | ||
+ | |||
+ | ``` | ||
+ | 127.0.0.1 localhost | ||
+ | ``` | ||
+ | |||
+ | のしたに | ||
+ | |||
+ | ``` | ||
+ | 127.0.1.1 なまえ | ||
+ | ``` | ||
+ | |||
+ | という感じでhostnameに書いたのと同じ名前を書く. | ||
+ | |||
+ | 修正したら再起動する. | ||
+ | |||
+ | ## IPv6 を無効化する | ||
+ | |||
+ | ROSはIPv4を使う前提だったはずなので,IPv6は無効化しておいたほうが面倒がない. | ||
+ | |||
+ | 方法 : [https:// | ||
+ | |||
+ | ## apt update の自動実行を止める | ||
+ | |||
+ | ``` | ||
+ | sudo systemctl mask apt-daily.service | ||
+ | sudo systemctl mask apt-daily.timer | ||
+ | sudo systemctl mask apt-daily-upgrade.service | ||
+ | sudo systemctl mask apt-daily-upgrade.timer | ||
+ | ``` | ||
+ | |||
+ | 起動時やネットワークがつながったときに勝手にapt updateされると非力なマシンではCPU使用率が食われるし,携帯電話回線で動かすロボットでは余計なパケットが発生するし,いいことがない. | ||
+ | |||
+ | ## ssh key を交換する | ||
+ | |||
+ | ロボット上にPCが乗っていて,そこでROSが動いている場合,sshでログインすることが多いかと思います. | ||
+ | その場合に毎回パスワードを入力するのにも面倒なので,さっさとssh keyを交換してパスワード無しでセキュアにログインできるようにしたほうが楽です. | ||
+ | |||
+ | ### ssh key でログインできるように設定する | ||
+ | |||
+ | ロボットPC上の```/ | ||
+ | |||
+ | ``` | ||
+ | RSAAuthentication yes | ||
+ | PubkeyAuthentication yes | ||
+ | AuthorizedKeysFile | ||
+ | ``` | ||
+ | |||
+ | その後,設定を有効にするため,sshdを再起動する. | ||
+ | |||
+ | ``` | ||
+ | $sudo systemctl restart sshd | ||
+ | ``` | ||
+ | |||
+ | ### keyを作って交換する | ||
+ | |||
+ | 1. ロボット上にssh keyを保存する場所を作る | ||
+ | ``` | ||
+ | $ mkdir ~/.ssh | ||
+ | $ touch ~/ | ||
+ | $ chmode 600 ~/ | ||
+ | ``` | ||
+ | |||
+ | 1. 作業PC上でssh keyを作る | ||
+ | ``` | ||
+ | $ cd ~/.ssh | ||
+ | $ ssh-keygen -t rsa -f robo_rsa | ||
+ | ``` | ||
+ | |||
+ | 1. ロボットに送る | ||
+ | ``` | ||
+ | ssh-copy-id -i ~/ | ||
+ | ``` | ||
+ | |||
+ | |||
+ | # その他 | ||
+ | |||
+ | ## タイムゾーンの設定と確認 | ||
+ | GUIを使わない方法をよく忘れるのでメモ. | ||
+ | |||
+ | ### 設定するとき | ||
+ | |||
+ | ``` | ||
+ | sudo timedatectl set-timezone Asia/Tokyo | ||
+ | ``` | ||
+ | |||
+ | ### 確認するとき | ||
+ | |||
+ | ``` | ||
+ | timedatectl | ||
+ | ``` | ||
+ | |||
+ | ### NTPの設定 (おまけ) | ||
+ | |||
+ | ``` | ||
+ | sudo timedatectl set-ntp true | ||
+ | sudo timedatectl set-ntp false | ||
+ | ``` | ||
+ | |||
+ | これを使って,確認した結果が no になってても, chrony は生きて動くっぽい. | ||
+ | ntpd にだけ効果がある? | ||
+ | |||
+ | ## 細々した設定 | ||
+ | |||
+ | GUI環境があるならTweak Toolを入れる。CAPSとCtrlの入れ替えとか、簡単。 | ||