Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

linux

grepの--line-bufferedオプションで行ごとに出力

標準入力をうけとって処理するgrepコマンドの場合、行ごとに出力できた方がいい場合があります。 そういうときは"line-bufferd"オプションです。 実際のところ $ netcat -ul -p 5000 | grep --line-buffered sender 参考もと hogem.hatenablog.com man grep

netcat/ncコマンドでUDPパケットを受ける/送る

極々少量のデータを送りたいだけ……なんて時はUDPを使ってみるのも手かなと思い調べてみました。 UDPは音声や、設定ファイルの内部むけブロードキャスト通信で使ったりします。 上手につくると、スプラトゥーンのような展開の激しいゲームでもP2Pめいたデータ…

ffmpegコマンドでMOV形式の動画をmp4にする

iPhoneでとった動画はMOV形式になります。 お客に展開する際、windows環境だとマトモに出なかったりしますね。 恥ずかしながらオンラインツールでやってたのですが……ffmpegコマンドをつかえば、一発でいけます。 実際のところ デフォ設定でinputfile.MOVをou…

シェルでtty端末を初期化する

シェルでtty端末を初期化する場合、sttyコマンドをつかいます。 実際のところ ttyUSB0を115200で初期化する場合 $ stty -F /dev/ttyUSB0 115200 参考もと unix.stackexchange.com Man page of STTY

シェル経由でtty端末と情報の読み書き

実際のところ あらかじめ設定済みの/dev/ttyUSB0を対象とします。 読む $ tail -f /dev/ttyUSB0または $ cat /dev/ttyUSB0 書く 一行書く。 $ echo "val=123" > /dev/ttyUSB0改行不要なら"-n"で。 $ echo -n "val=123" > /dev/ttyUSB0printfでもいけます。お…

curlコマンドで標準入力の結果を受け取る

curlコマンドはPOSTアクションを実行できます。 これを使って簡易な投稿のシステムを作る時、標準入力の結果を受け取る事ができると便利ですよね。 今回はその方法について。 実際のこころ 文字列"SOMETHING"をcurlでYOUR_DISTに送る場合、以下のようにしま…

XWindow環境(i3など)で"Fatal server error: could not open default font 'fixed'"と出たら……フォントの入れ忘れかも

XWindow環境(i3など)で"Fatal server error: could not open default font 'fixed'"と出たら……フォントの入れ忘れかもしれません。 実際おtころ 環境を再構築していた時のこと……。 $ vncserver :1 -geometry 1280x800 -depth 24 Couldn't start Xtightvnc; t…

scpコマンドでUNIX系システム間ファイル送信

scpコマンドをつかうと、UNIX系システム間ファイル送信できます。 たとえば、macOS上でセコセコ作っていたC++のコードをRasPiに転送したり……。manの解説によると以下の通りなので……sshコマンドの仕組みを使ってるようです。 scp copies files between hosts …

同一LAN内のIPaddressをしらべる

実際のところ $ echo 192.168.0.{1..254} | xargs -P256 -n1 ping -s1 -c1 -W1 | grep ttl | cut -d" " -f 4 | tr -d : 192.168.0.3 192.168.0.1 192.168.0.13 192.168.0.18 192.168.0.21 ... 192.168.0.201 192.168.0.202 192.168.0.254 192.168.0.253また…

Raspbian環境にて無線LAN + 固定IP設定(内部)

Raspbian環境にて無線LAN + 固定IPを設定する方法です。 私の用途ではルーターから外には出るものの、 ルーター外部からアクセスするケースは考えていない構成です。 実際のところ ターゲットはRaspbianで 固定IPはローカルネットの中だけで使用する、"192.1…

tightVNC環境をRaspberry Pi 3 B+/ Tinker Board Sにつくる

debian側 sudo apt install tightvncserver初回起動ではパスワード指定。 閲覧用のパスもあるが、今回はなしで。 $ vncserver You will require a password to access your desktops. Password:******** Verify:******** Would you like to enter a view-onl…

軽量なアプリランチャーdmenu

i3環境は軽量ですが、とはいえアプリランチャーみたいなのが無いと若干不便なのも事実。 そういう時にはdmenuが使いやすいです。 ……まぁ、こう文字で説明するより動画で見た方が威力がわかるかも……。 www.youtube.com 実際のところ i3環境の場合 タイル型デ…

i3環境にてワークスペースを特定のディスプレイに割り当てる

実際のとこ HDMI1にディスプレイが繋がっている状態で、 ワークスペース2をchromium用に割り当てるには以下の様にします。 workspace "2: chromium" output HDMI1デュアルディスプレイ環境なら、お客さん向きには動画を再生しつつ、 自分はコーディングみた…

i3環境にてスタートアップ時の挙動を指定

i3環境にてスタートアップ時の挙動を指定する場合、 設定ファイルに"exec"を記述します。 これでサイネージモドキを実装するとき捗りますね。 実際のところ i3の設定ファイルに以下のように記述します。 オプションもつける事ができて便利。 exec chromium -…

i3環境にて特定アプリを常に全画面起動

i3環境にてGUI主体の特定のアプリを全画面で起動したい時はfor_windowの設定をします。 今回はChromiumを起動した場合、全画面モードになるようにしましょう。 実際のところ 公式の手順通りなら、設定ファイル"~/.config/i3/config"にあります。 なければ "~…

タイル型デスクトップ環境 i3をDebian/Raspbian上に構築

公式より引用 https://i3wm.org/screenshots/# なんかこう、まさに映画やドラマでみたハッカーな雰囲気しません? 私ももういい歳ですが、こういうの大好きです。ただの厨二病的需要だけでなく、表示に制約がある環境などでは非常に重宝します。 例えば、こ…

Debian系OSに日本語環境を

今回はターゲットボードとして Tinker Board S、OSはdebian系統のTinker OSをつかいました。注: TinkerOSのデフォルトユーザ名は "linaro"、デフォルトパスワードは "linaro"Tinker-Configとかいうツールも出回ってるそうですが……gitリポジトリのURLを打つの…

RasPiのデモシステムの画面が消えないようにする

Rasbianのデスクトップ環境はLXDE系であるため、 画面スリープの防止などの設定はlxsessionの中に記述します。 実際のところ Rasbianの場合、設定ファイル"~/.config/lxsession/LXDE-pi/autostart"の中にあります。エディタで開いて…… sudo vi ~/.config/lxs…

unarでCLI上でrarをひらく

unarはでCLI上で動くrar解凍・圧縮ツールです 実際のところ Ubuntu16.04LTS $ sudo apt install unar NAME unar - extract archive file contentsSYNOPSIS unar [OPTION]... ARCHIVE [FILE]...DESCRIPTION Extract FILEs or the contents of ARCHIVE. 参考も…

リダイレクト先ページをcurlで導入したい

たとえばgithubにあるバイナリファイルの場合、URLをとってきてもリダイレクトページが出てくるだけだったりします。 ブラウザならよろしくダウンロードしてくれますが、Curlはそうはいきません。 こういう場合、"-L"オプションをつかいます。 実際のところ …

macOSでntp鯖での時刻合わせ

macOS……というかUNIX系でntp鯖での時刻合わせするにはntpdateコマンドを使います。 実際のところ "-u"は「パケットを非特権モードで出力する」なのだそうですが -u Direct ntpdate to use an unprivileged port for outgoing packets. This is most useful w…

RasPiのUSBモジュールが上手く動かない場合……電力不足かも

UVC対応の産業カメラとロボットをつないだシステムを作ってました。ロボット単独や産業カメラ単独だと上手く動かない。 副次的にはマウスの遅延も見られました。色々調べた結果、どうもバスパワー不足のようでした。 こういう場合以下のような外部電源を用意…

Ubuntuベースの環境構築済メディアを作るのは実際危険

ご存知のように、UbuntuはDebianベースのLinuxデスクトップ環境です。 一昔前は日本語環境構築済みの円盤つきムックなんかもありましたよね。ここで要注意。 Ubuntuをベースとした、開発環境構築済のメディアを仕事で配布をしようとすると、少々面倒な事にな…

デバイスごとimgファイルにしたい時はddコマンドを使う

今までimgファイルをsdカードに焼きこんだり、ビット列を生成する時に使ってたddコマンドですが…… SDカードやUSBフラッシュメモリ、HDDみたいなモノのimg化にも使えるそうです。 実際のところ 予め環境構築済のsdaを、/Volumes/NONAME/下のsda.imgに保存する…

lsb_releaseでLinux系OSのバージョン情報をみる

カーネルのバージョンによって、ビルド方法が異なるパッケージというのが有ります。 今使っているバージョン情報を知りたい場合、lsb_releaseがつかえます。 実際のところ たとえば、Ubuntu16系でscオプションつきで実行するとコードネームがでてきます $ ls…

さくらVPS上にBottle鯖を立てる その3:秘密鍵を入れたマシン以外で入れないようにする

shuzo-kino.hateblo.jp のシリーズ第三弾。 今回は秘密鍵を入れたマシン以外で入れないようにします。 これで実害を喰らう可能性は相当低くなりますね。 実際のところ 以降、IPは160.16.xxx.xxx、ユーザはubuntuであるとします。まずはログインできるかお試…

さくらVPS上にBottle鯖を立てる その2:Ubuntu LTSを入れる

shuzo-kino.hateblo.jp の続きです。 二回目の今回は、さくらVPSにUbuntu LTSを入れ、コンソールに入るところまで。 実際のところ VPSインスタンスの設定を行います。 「サーバ設定」のボタンをクリック。 しばらく読み込み画面が出た後、 インスタンスの管…

さくらVPS上にBottle鯖を立てる その1:さくらVPS契約

実験用にJSONを吐き出すBottle鯖が必要になったので、 さくらVPS上に構築してみようと思います。 全5回予定の初回である今回は、さくらVPSの契約まで。 実際のところ VPSとクラウドのちがい クソザコナメクジなので、ちゃんと説明できませんでした。 さくら…

nanoで今いる行をデフォルト表示させる

nanoで今いる行をデフォルト表示させるには、"-c"オプションを使います。 実際のところ $ nano -c hoge.txt [ line 7/46 (15%), col 1/1 (100%), char 65/708 (9%) ] 参考もと man nano

Linuxカーネルのメニュー設定画面が出ないときは画面サイズを再チェックしてみる

今回の話は実にショーもない話です。Armadillo-IoT用にLinuxカーネルをビルドすべく設定画面を出そうとしたところ……画面が出ない! 特に設定いじった訳でも無いのに……ナンデ??次のようなエラーが。 $ make menuconfig config/mkconfig > config.in make -C…