こんにちは、CX事業本部の夏目です。 MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。 使う方法 /etc/pam.d/sudoにauth sufficient pam_tid.soを追加します。 書き込みには管理者権限が必要になるので次のようにして編集します。 # 自分の環境では最初管理者でも書き込みができないようになってたので、できるようにする $ sudo chmod +w /etc/pam.d/sudo $ sudo vi /etc/pam.d/sudo もともとはこんな感じになっていると思うので、 # sudo: auth account password session auth sufficient pam_smartcard.so auth required pam_ope
Experience SSH certificates for yourself in <5min⚡! Here are some of our best tips & tricks for using SSH more effectively. This post will cover how to: Add a second factor to your SSH login Use agent forwarding safely Exit from stuck SSH sessions Keep a persistent terminal open Share a remote terminal session with a friend (without Zoom!) Add a second factor to your SSH Here's five different ways
目次 tmuxとは 起動して新規セッションを作成する windowを作成する window間を行き来する windowを分割してpaneを作成する paneを行き来する セッション間を行き来する 【応用】tmuxの表示内容をリダイレクトする 【応用】情報バーにgitのbranch名を表示する 【応用】現在の操作パスを表示する 【応用】スニペットを呼び出す 以上の設定の .tmux.conf はこちら tmuxはバージョン互換性がかなり微妙 YouTubeでも公開したのでチャンネル登録してくれると嬉しいです tmuxとは tmuxとはターミナルマルチプレクサと言われるもので、sshで作業マシンにログインして操作した際や、重いプログラムを実行するなどして帰りたいが終了せずに作業を継続したい際などが、最も簡単なユースケースです。 これだけにとどまらず、tmuxはterminalを複雑に装飾できる
こんにちは。 2021年7月にハートビーツに入社後、エンジニアリンググループに所属している北岡です。 以前は同じMSP企業で10年以上勤務しておりましたが、自身のスキル向上などを目的としてハートビーツへ入社しました。 私の転職の経緯やハートビーツへ入社して感じたことなどは今後お話するとして、今回はお客様のLinuxサーバ上で作業する際、私がオペレーション中に意識していることやミスを防ぐために行っていることについて紹介します。 コピー、ペーストのショートカットキーを変更する コピー「Ctrl + c」とペースト「Ctrl + v」はキーが隣り合っており、タイピングミスによってコピーしようとしたつもりがペーストしてしまったということが起こりえます。 メモ帳などで起きた場合は特に問題にはなりませんが、サーバ上で起きると不要なコマンド実行に繋がります。小さなことではありますが防止策をとるべきです。
はじめに 少し前から話題になっているが、日本の労働生産性はG7で最も低いらしい。 日本生産性本部資料より https://www.jpc-net.jp/intl_comparison/intl_comparison_2018_press.pdf 日本は人口減少に突入していることもあって、「作業の効率化」や「自動化・省力化」をいうフレーズをあらゆる業種で聞くようになった。 ITエンジニアは、あらゆる職業の中でも最も効率化、自動化をして生産性を高められるといっても過言ではないだろう。プログラマの三大美徳(「怠惰」「短気」「傲慢」)にもあるように、同じことを何度もやらない、楽をするためにがんばるという生産性を意識した感性が重要視されているからだ。 生産性を高めることで、勉強する時間が作れたり、新しいことを経験したりするなどしてさらにスキルアップができ、さらに生産性が上がるという好循環を作り出すこ
私はターミナルが大好きなので毎日使っているんですが、永らく alacritty + tmux を愛用してました。(といってもさっき見たら alacritty 使ってたのは 1 年ちょっとだったらしい・・・) しかし最近 wezterm というターミナルの話を Reddit とかでちょくちょく聞くようになってたので 2022 年個人開発環境大変革[1]に合わせて試してみることにしました。 wezterm とは? wez さんが作った Rust 製の GPU-accelerated で cross-platform なターミナルです。自分の名前をプロダクトに入れるところに正直自信の表れを感じます w wez さんは 2022 年現在 Facebook(meta)で働いているようです。 まぁけど、Rust 製の GPU-accelerated で cross-platform なターミナルってそ
はじめに これは、ストックマーク Advent Calendar 2021 17日目の記事です。こんにちは、ストックマークでAstrategyというビジネス向けSaaSについて、主にフロントエンドの開発を担当している@tsukkeeです。 Astrategyの技術構成については以前にAstrategyを支える技術: gRPC, Elasticsearch, Cloud TPU, Fargate... SaaS型AIサービスの内側の世界という弊社テックブログ記事で紹介したことがあるのですが、本記事ではその開発環境の一部を紹介したいと思います。 さて、開発環境と言えばテキストエディタですが、皆さん開発にはどのテキストエディタ(またはIDE)を使っていますでしょうか?本記事のタイトルにもあるとおり私はVimを使っています。ただ、Astrategyの開発チームでは使うテキストエディタに制限はなく、
ここ1年ぐらい*1から、ターミナル環境を良くしようという活動を頑張っている。 今使ってる環境が Windows / macOS / Manjaro Linux と、完全マルチプラットフォームな感じになっておりそれぞれで違うものをあんまり使いたくはない。 悩んでるけど結論が出ないので、ここに備忘録的にかいておこうと思う。 設定管理 github.com Chezmoi www.chezmoi.io 以前記事も書いたけど、クロスプラットフォームなうえにスクリプトも実行できるのちょっと嬉しい。 deflis.hatenablog.com Sheldon github.com 最近やめたので理由を書いておこうと思って。 Chezmoiにはexternalという機能があって、これで外部リポジトリのデータを管理することができるので、実はシェルプラグインの管理はほとんどChezmoiだけでできてしまうこ
まだまだ 2022 年の振り返りが終わらないぜということで今日は dotfiles の振り返り。dotfiles はその変遷を見ると面白いので、毎年やろうと思い早速やっていきたい。 ちょっと前に M2 の MBA 買って、dotfiles を一新した。 これが今の dotfiles だ。 https://github.com/sadnessOjisan/dotfiles コンセプト 自分は Mac しか使わない が、WSL 環境も持ってるのでシェル周りの環境は移せるように作っておく(原神しかしないけど・・・) make all だけでセットアップが完結する 手作業はしない なるべく標準に準拠し、プラグインやライブラリへの依存を減らす。入れる場合も単体で剥がせるものを選ぶ。 シンボリックリンクを貼って、dotfiles の変更が即時に反映されるようにする .config など XDG に準拠
はじめに 少し前から話題になっているが、日本の労働生産性はG7で最も低いらしい。 日本生産性本部資料より https://www.jpc-net.jp/intl_comparison/intl_comparison_2018_press.pdf 日本は人口減少に突入していることもあって、「作業の効率化」や「自動化・省力化」をいうフレーズをあらゆる業種で聞くようになった。 ITエンジニアは、あらゆる職業の中でも最も効率化、自動化をして生産性を高められるといっても過言ではないだろう。プログラマの三大美徳(「怠惰」「短気」「傲慢」)にもあるように、同じことを何度もやらない、楽をするためにがんばるという生産性を意識した感性が重要視されているからだ。 生産性を高めることで、勉強する時間が作れたり、新しいことを経験したりするなどしてさらにスキルアップができ、さらに生産性が上がるという好循環を作り出すこ
例えば以下のような形にpaneを分割したければ prefix - s, prefix - v, prefix - J J J J というような形で分割→リサイズをする必要がありました。これが毎回やっていると非常に面倒になります。というわけで、よく使う作業環境を作ってくれるコマンドを作成します。 画面分割 ①vim用, その他用で分割する時 windowを2つのpaneで分割して、上の大きなペインでvimを開きコードやメモを書いて、下の小さめのペインでシェルを使用したい時はこんな形になります。これを作成するコマンドを書いてみます。 tmux split-window -v tmux resize-pane -D 15 tmux select-pane -t 1 ②vim用, コード実行用, git用で分割する時 ウィンドウを3分割して、上のペインでvimを開きコードを書いて、左下ペインでコー
モチベーション ターミナルからなるべく色んなことやりたい。動きたくない。冬のこたつみたいな感じ。 前提 MacとArchでだいたい似たような環境が作れたので対象OSはそのあたりです。 まえがき 色々情報交換や情報収拾するうちに 少しずつ自分の開発環境が変わってきたので現時点のスナップショットとして書いてみたくなった。 dotfileの延長でしかないため自分の秘伝のタレであり、自己満感が強い。 他人の参考になるかは分からないけど、なれば幸い。 逆にこういう記事書くと教えてもらえたりしないかな(打算) とどのつまり? https://github.com/yyYank/dotfiles あたり。 iceberg tmux zsh zsh-autosuggestions zsh-syntax-highlighting zsh-completions zsh-history-substring-s
Red HatのシニアソフトウェアエンジニアのVictoria Martinez de la Cruz氏が「5 open source tools I can't live without|Opensource.com」において、生産性の向上に不可欠な5つのオープンソースソフトウェア(OSS)を紹介した。これは、技術者の間で話題になった「5つの道具だけを選ぶなら」というお題に答えたもので、5つに絞ることはかなり難しかったと語っている。 Cruz氏が取り上げているOSSは次のとおり。 tmate - ターミナルマルチプレクサtmuxから派生したソフトウェア。tmuxセッションを開始し、SSH経由で共有することができる。ペアプログラミングなどで特に便利。リモートコントロール目的でも使用できる。チームメンバーと頻繁に連絡を取り合ってプログラミングするようなケースではtmateが強力なツールとして
先日機械学習界隈の方とDockerの話をした際、Makefileを使って機械学習環境の整備をしている人は実は少数派なんじゃないかと感じました。 機械学習で使うコマンドは引数が長く、とても覚えられるものじゃありません。暗記できていてもミスタイプしたり、tmux内とかだと折り返されて何書いてるかよくわからなくなりがち 。Ctrl+Rとかで検索かけようとしても大体はdocker...から始まるのでタイプ数多くなりがち。 Makefile は、Docker のコマンドをいい感じにまとめやすく、jupyter notebook に使う長ったらしいコマンド jupyter notebook --port 8888 --ip="0.0.0.0" --allow-root なども簡略化できます。そういうわけで、全体的な生産性の向上に繋がると信じています。 今回紹介する Makefile は Docker
この記事の概要 tmuxとneovimを組み合わせている様子… こんにちは!食パン🍞と申します🏜 普段はフロントエンドを中心にパソコンをカタカタしている者です💻 私は普段のコーディング時のメインエディタとして、ターミナル環境下で、Neovimを用いています。 (Neo)Vimは、その独特な操作体系ゆえ慣れるまでがちょっぴり大変ですが、一度習熟すると非常に効率よくテキスト操作を行えるため、日々愛用しています。 また、開発作業の過程では、複数の画面を都度切り替えながらコーディングをしたり、複数のシェルを用いてコマンド操作を実行したくなる機会が多々あります。 例えば、 Viteでフロント開発環境を立ち上げてリアルタイムでコード変更を確認したい docker composeで複数のコンテナを立ち上げつつターミナルでログを確認したい それはそれとしてNeovimも並行して使いたい といった具合
Tmux has liberated me from tiling window mangers. Not that I didn’t like those, but I occasionally have to work with macOS or default GNOME setups. And over the years I realised that I only need a terminal multiplexor to do terminal tiling for me, the rest of the windows are just fine to be full-screen in separate workspaces. So, I ended up doing 80% of my work in terminals with tmux. But, the pre
tmuxとは インストール セッション操作 ウィンドウ操作 ペイン操作 コピー操作 その他の操作 カスタマイズ tmuxとは ターミナルマルチプレクサ(Terminal Multiplexer) の略です。 Linux 系のターミナル画面を複数のセッション、ウィンドウ、ペインに分割して利用することができます。 ひとつのターミナルは複数のセッションを持つことができます。 ひとつのセッションは複数のウィンドウを持つことができます。 ひとつのウィンドウは複数のペインを持つことができます。 ターミナルを終了してもセッションは維持されます。コマンドを実行して翌日の朝結果を確認しようとしたら SSH ログアウトしてしまっていたという悲劇を避けることができます。 インストール // CentOS 7 # yum install -y tmux // Ubuntu # sudo apt install t
概要 tmux/screen 上で nvim を使用した際に、 escape/Ctrl-[ 入力に対するレスポンスが遅いため、これを解決する方法について記述します。 tmux/screen 上で nvim のescapeレスポンスを早くする $HOME/.tmux.conf 上で 以下の設定を追記する set -s escape-time 10 screen の場合は、以下の設定を $HOME/.screenrc に追記します。 maptimeout 10 vimなどで、 escape-time を 0 にしている例をよくみかけますが、nvimの場合0だとうまくいかず、 10程度のdelayを必要とします。 なぜこのような挙動になるのか tmuxではEscape入力があった際に、500msec のディレイの後にバックグラウンドのターミナルにコマンドを送信している。 上記の設定ではこのディレ
K8sの基礎力を高めるため、久しぶりに Kubernetes The Hard Way (K8sをスクラッチ構築するチュートリアル)を行おうとしていたところ、あることを思い出しました。 それは、tmuxのようなターミナルマルチプレクサ(平たく言えばターミナルの画面分割や切り替えなどが簡単にできるツール)の利用が推奨されていた、ということです。 その理由としては、Hard Wayでは作業を進める上で各ノードで同じようなコマンドを何回も入力する必要があるのですが、tmuxを使えば複数ノードに対して一斉に同一コマンドを実行できるので、スムーズに作業ができるためです。 ただ、以前Hard Wayを行った時点ではtmuxにあまり習熟しておらず、かつとにかく手を動かして覚えることを目的としていた関係でtmuxを使ってはいませんでした。 一方で、今回はそろそろtmuxに入門し直そうかと思っていたところ、
こんにちは。 GMOリサーチ株式会社の向井と申します。 システム部でプログラマーをしています。また、売上向上/経費削減のために、社内の他部署での作業の効率化もおこなっています。 突然ですが、皆さんは端末多重接続ソフトウェアをご存知でしょうか? ・・・はい。当たり前だ!知ってるに決まってるだろ!という声が聞こえてきそうですね。 ご存知の通り、端末多重接続ソフトウェアとは、CUIでマルチウインドウっぽく操作できるソフトの事です。 ちなみに皆さんは普段、どの端末多重接続ソフトウェアを使われているでしょうか。 頭の中で思い浮かべてみてください。 ・・・はい。そろそろ思い浮かんだころですかね。 端末多重接続ソフトウェアといってパッと思いつくのは、以下の2種類かと思います。 GNU Screen? (GNUと書かないとストールマン先生に注意されちゃいますからね)tmux? うん。僕の中ではこの2択でし
はじめに みなさん年の瀬いかがお過ごしでしょうか.こたつスウィングバイが止まらないさわだです. 工大アドベントカレンダー(一日目)の空枠を拝借して,自分も最近の事を書こうと思います. adventar.org 今回の記事はこれです. いっつも隣でやばいtmuxひらいてるからw— けんつ (@lrf141) 2018年12月19日 きっかけ 我が愛機であるThinkpad X220にArch LinuxをホストOSとしてインストールしましたが,chrome君とslack君に加え,Intellijの子供たちを使うとメモリが逼迫するのでCUIで開発環境を整えたいなと思ったのがきっかけです. 整備する 以前はneovim周辺の設定を弄って満足出来ましたが,あらゆる事をCUIで完結させたい欲が高まるにつれ,複数のターミナルを起動するのも億劫になってきました. 更にCUIでも毎日触るのが楽しくなるよう
My personal workflow for terminal-based coding, writing, research, and more! Hello everyone! It has been quite sometime since I last posted! Suffice it to say, I have been immensely busy the past year but I am happy to say I am able to resurrect this blog! :tada: I have thoroughly grown into my own workflow for programming, research, and writing. Today, I am happy to be able to share it with you!
僕は普段の開発ではzshを利用しており、先日PC移行した際に、あれこれ整備し直したので紹介します。 setup.sh 絶対に使うソフトウェアがどの環境でも入るようにしている。基本バージョンは固定せずに、最新が最高と思っています。 #!/bin/zsh SCRIPT_DIR=$(cd $(dirname $0); pwd) RUBY_VERSION=2.7.2 GO_VERSION=1.15.7 which brew > /dev/null || /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" test -e /usr/local/opt/kube-ps1/share/kube-ps1.sh || (brew install kube-ps1 &&
はじめに 今回は、端末多重化ソフトウェアのtmuxを学習していきます。これにより、ターミナル画面を複数開いたり、ターミナルソフト独自のショートカットキーを覚えてペインを分けたりするみたいな非効率的な開発環境を改善していきます。 タイトルの「必要最低限」とは、これらの新しいソフトの学習に時間をかけたくないので、私が使っているtmuxの機能・設定だけをピックアップして本記事に記述するという意味です。 開発環境 Mac OS X El Capitan Homebrew 1.6.3 (パッケージマネージャー) tmux 2.7 tmuxとは tmuxは端末多重化ソフトウェアと表現されるが、要は1つのターミナル上で複数のターミナルを立ち上げて同時並行で作業できるものと思ってもらえれば良い。 パッケージとしてインストールすることができ、サーバ側でインストールしていればSSHを通じてクライアント側からも
初めに 仕事で複数プロジェクトを同時に使っていることが多く、tmuxを愛用しています。 tmuxを使えば、簡易に画面を増やしたり分割したりできますが、次のような不便さを感じるときがあります。 画面分割すると画面サイズが小さくなる 画面数が増えるとよく使うプロジェクトの画面をすぐ出せない そこで、最近入ったpopup機能を使ってみたところ上記の課題を解決できそうだったので、軽く紹介をしていきます。 こんな感じで画面分割ではなく、画面中央にウィンドウを出せます。 やり方 筆者の環境は次になっています。 tmux next-3.3 fish version 3.1.2 @yutkatから教えていただいたものをベースにfishの関数を用意します。 bashやzshの方は適宜変えてみてください。 function tmuxpopup -d "toggle tmux popup window" set
初めまして、今年の7月入社のmiyasonです。 自己紹介 Webチームに所属していて、Rails案件に携わっています。 趣味はキーボード回りの(主にハードウェアの)あれこれをすることで、 直近ではKinesis Advantageというキーボードの静音化をしました(ステムをgateron静音赤軸に交換したりoリング入れたり)。 今回は私がtmuxとNeovimでやっている背景色の設定について書きます。 動機 Tmuxやvimでペイン分割しすぎた時のペイン迷子にまつわるもやもやを解消したい。 ペインを移動しようとしたところvimじゃなくてtmuxのペインだった。 vimで:wqしたつもりが隣のtmuxのペインに:wq: command not foundと出ていた。 ctrl+dしたら隣のペインが消えた。 →フォーカスしてないペインの背景色をそれっぽく変えれば無くなるはず。 環境 WSL
tmuxずっと tmux に移行しようかなという気持ちを持っていたので、重い腰を上げて移行してみた。プレフィックスを C-j にすれば大体 GNU screen と同じ感じで使えることがわかったので、すんなり使えている。ただ画面の分割が GNU screen では新しい window が作られるところ、tmux では pane が作れられるのでそこに少し戸惑った。 https://github.com/superbrothers/dotfiles/blob/master/tmux.conftmux プラグインでは tmux-thumbs が気に入っていて、vimperator 的な感じで画面内のそれっぽい文字列をハイライトしてくれて、ハイライトに出ているヒントのキーを押すとバッファにコピーしてくれる。コピーコードやトラックパッドを使うよりも高速に操作できるのでさいこう。 https://g
tmuxとは インストール セッション操作 ウィンドウ操作 ペイン操作 コピー操作 その他の操作 カスタマイズ tmuxとは ターミナルマルチプレクサ(Terminal Multiplexer) の略です。 Linux 系のターミナル画面を複数のセッション、ウィンドウ、ペインに分割して利用することができます。 ひとつのターミナルは複数のセッションを持つことができます。 ひとつのセッションは複数のウィンドウを持つことができます。 ひとつのウィンドウは複数のペインを持つことができます。 ターミナルを終了してもセッションは維持されます。コマンドを実行して翌日の朝結果を確認しようとしたら SSH ログアウトしてしまっていたという悲劇を避けることができます。 インストール // CentOS 7 # yum install -y tmux // Ubuntu # sudo apt install t
更新 2021/12/10 サイドバーに関する tmux っぽい操作を追加しました sideBarFocus で表現できます !terminalFocus を editorFocus に変更しました。 エディタ操作についていくつか操作を追加しました。 はじめに この記事は Visual Studio Code Advent Calendar 2021 の 10 日目の記事です。 みなさんは tmux を使っていますか。 そう、あの tmux です(どれだよ)。 具体的には、 tmux は仮想的な端末多重化ソフトウェアです。 以下の画像のように、同時に複数の端末・ペインを手軽なショートカットで使えます。 tmux のショートカットに慣れると、 VSCode も tmux っぽく操作したくなります。 というわけで、 VSCode のショートカット設定をいじって、 tmux のような操作ができる
概要 最新記事をこちらに投稿していますので、もしよければこちらも御覧くださいませ。 https://red-full-moon.com/tmux-2020/ 正直何番煎じかわからないがQiitaでのtmux.confの情報が軒並み古くなってしまっているため、今日(2019年7月1日)現在でそこそこ新しいバージョンである2.9に対応したtmux.confを晒す。 みなさんのより良いtmuxライフの足しになればと思います。 tmuxってなに?何が便利なの?という人はこちらの記事が参考になります。 個人的な(tmuxをおすすめする)意見を書き始めるとそれはそれでまた一つの記事になりそうなので、省略しますが、ざっくり言うと下記の理由です。 私はiTerm2が非常に好きだったのですが、いかんせんWindowsにはない。 環境によらずペインの分割を自由自在にしたい 再起動時などにコンソールの状態を保存
[初心者向け]時間のかかる処理を中断せずに実行したいときは、EC2インスタンス上でtmuxを使ってみよう データアナリティクス事業本部インテグレーション部コンサルティングチーム、新納(にいの)です。 みなさんは時間のかかるコマンドやプログラムを実行している時に、SSHログアウトされたりセッションが切れてしまったりしてもう一度やり直し…という悲劇に見舞われたことはありませんか?私はあります。 先日、大量のファイルを処理する関係で処理に数日かかるPythonスクリプトを実行する機会があり、その際にtmux(Terminal Multiplexer)を利用する機会がありましたので、使い方をまとめてみました。 tmuxとは tmuxとはTerminal Multiplexerの略称で、仮想環境を複数作成でき、複数のターミナル画面を開いたり画面を分割したりできます。大きな利点はターミナルを終了したと
はじめまして。エキスパート/lite 開発 の倉光と申します。 今回初の記事投稿として、私が日々愛用している tmux の紹介ができればと思います。 自己紹介 本編に入る前に、簡単に自己紹介をさせてください。 私は 2022 年 8 月にビザスクに入社し、気がついたら約 1 年ほど経っていました。 ビザスクに入社する以前は、インフラ系のメーカーで開発職として製品開発に従事していました。また、大学の出身学部も物理系であったため、 ビザスクに入社するまではプログラミングとは無縁のいわゆるエンジニア未経験として異業種異分野からジョインして、今は既存サービスの改善であったり、プロジェクトの開発に日々従事しています。 そして、テックブログって一体どんな内容を書けばいいんだ・・ネタが思い浮かばん・・と先延ばしにしていたら日々の開発に圧倒されているうちに丸 1 年経過していたことに驚き、遅ればせながら今
############################################################### # シェルの設定 ############################################################### # tmux 起動時のシェルを /bin/zsh にする set -g default-shell /bin/zsh # /usr/local/bin/zsh を使っている場合 # set -g default-shell /usr/local/bin/zsh ############################################################### # prefix キーバインド変更 ※デフォルトは C-b ######################################
はじめに 前回、Alacritty[1] と Zellij[2] と WezTerm[3] を試してみて分かったのは、 やっぱり Alacritty は速い(体感で分かる程に断然速い) 月日は経って Alacritty は日本語をほぼ不都合なく扱えるようになっている Hammerspoon を使えば Alacritty もホットキー起動(Alt 連打)が出来る on macOS そして tmux も Alacritty と組みわせるのに足る程に速い ということで、今秋のターミナル考は Alacritty + tmux が結論となりました。ざっと使えるように tmux の設定もしてみましたので、今回はそのメモです。 tmux の基本的な設定 ちょっと前まで、tmux の設定ファイルは ~/.tmux.conf に配置するしかなかったようなのですが、バージョン 3.1 〜 3.2 あたりで対応
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く