読者です 読者をやめる 読者になる 読者になる

/var/log/study

つまり雑記

BSD系のコマンドを読む下準備

TypeScriptのブログを書くと言っていたけど, そんな暇もなさそう.

業務で色々なプロトコルに触れて(OSIで言うところのデータリンク層~アプリケーション層まで), わからないことだらけで困っているのが現状です.ただ分からないと嘆くだけでは前進できないので, せめてwebシステム開発の出身なんだから, HTTPサーバーを切り口に色々と勉強しよう!と思ったわけです.web上の人達もサラッとhttpサーバー書きました!みたいなノリなので.

まぁ結果としては、C言語を殆ど触ってこなかった自分としてはムズい.

もう少しレベルを下げて, まずC言語を取得しよう!というところに焦点を当てて勉強をしようと思った際に見つけた記事が以下

lsコマンドをハックしてみよう - Yahoo! JAPAN Tech Blog

なるほど. 過去の(現在でも?)yahooでは新人にBSD系のコマンドを読んで学習することを推奨しているのか.ならば自分も取り組めるのではないか?というところで, 本日はその下準備.

必要なもの

前提

普段は CentOS + zsh + tmux + emacs で作業をしているので, それっぽい環境に近づけたい

準備

  1. VMに対してisoでFreeBSDをインストール
    1. tuiに乗せられて適当にエンターを押していけば問題なし
    2. その過程で適当にユーザーを作る
    3. 作ったユーザーを wheel グループに属させる
    4. pkg install sudo
    5. visudowheel ユーザーに sudo する権限を与える
  2. 適当に作ったユーザーでsshし、zsh tmux emacs git あたりをインストール
    • 手軽にzsh環境を整える為に、oh-my-zshを導入
    • emacsの環境を整えるのに、Cask を使っているので、それをインストールする為に, curl python を導入
  3. GitHub - freebsd/freebsd: FreeBSD src tree (read-only mirror) から git clone してくる

詰まったこと

  • yahooブログには適当にファイルを揃えろって書いてあったし, 適当にlsディレクトリ配下をコピペして持ってきたけど動かなかった.
    • 執筆当時はそれで良かったのかもしれない
  • BSDの初期環境はCentOSと違いすぎて色々と戸惑った.
    • sudo 無い
    • ココらへんは無いものだらけだって事が分かったら後はスムーズに作業出来た