Linux/CentOS/Ubuntu でのたまにしか使わないコマンドの備忘録。
ユーザー管理
#ユーザー名([user])の追加:
adduser [user]
#ユーザー名([user])のパスワード初期設定:
passwd [user]
設定もろもろ
# CentOS のバージョンの確認。
more /etc/redhat-release
less /etc/os-release
#eth0の確認
ethtool eth0
# メモリの確認
free -h
# コアの情報
/proc/cpuinfo
# ネットワークの情報
route -n
# serviceの起動/再起動
service デーモン名 start/restart
# CentOS7以降推奨のコマンド
systemctl start デーモン名 #サービス起動
systemctl restart デーモン名 #サービス再起動
systemctl enable デーモン名 #自動起動設定
systemctl status デーモン名 #状況を表示
netstat -antup | less
chkconfig --list #サー
chkconfig --add サービス名 #サービスを追加
chkconfig --del サービス名 #サービスを削除
Path関係
# その設定でリンクできるライブラリの一覧
ldconfig -p
# 実行ファイル"./a.out"が参照している共有ライブラリの一覧とその状況
ldd ./a.out
# Macの場合のldd
otool -L ./a.out
環境変数
SSH_CONNECTION
パッケージ管理
# yumでインストールしたアプリの表示
yum list installed
その他
# アプリケーションの参照している共有ライブラリの情報が見れる
ldd /PATH/of/application
# tarでgzipで /PATH/of/dest 以下を /PATH/of/file.tar.gz にtarでアーカイブ
# 但し /PATH/of/dest/exclude 以下を除く
tar -cvzf /PATH/of/file.tar.gz --exclude /PATH/of/dest/exclude /PATH/of/dest
# CentOSのバージョンの確認
cat /etc/redhat-release
# リダイレクトをファイルの末尾に追記(既存の内容を上書きしない)
cat some_file >> another_file
# 端末で入力するコマンドとその出力をファイルに記録
script script_log.log
# 時計を表示
date
# ネットワーク内のホストのリストを簡便に確認する
arp -a
# IPMIのアドレス情報を確認
ipmitool lan print
xterm
#大きいフォントサイズのxterm
xterm -fn 10x20
#フォントも変える: Hackフォントでフォントサイズを10に指定
xterm -fa 'Hack' -fs 10
Hackフォントがインストールされていない場合は
wget https://github.com/source-foundry/Hack/releases/download/v3.003/Hack-v3.003-ttf.zip
でとってきたファイルを展開して、~/.local/share/fonts/
(存在していなければmkdir)に置く。
fc-list |less
で置いたフォントが認識されていれば、成功。
Ref: CentOSにfree fontを導入 - はかせになりたい
Ubuntuの場合はsudo apt install fonts-hack*
でインストール完了。インストールされたフォントを調べるにはfc-list
こまんど。
ssh
#hostA経由でhostBに入りたいとき
ssh -XC hoge@hostA -t ssh -XC hogehoge@hostB
#hostA経由でhostBに入ってjupyter notebookを立ち上げてその8888をlocalhostの8888に持ってきたい時のコマンド
ssh -XC hoge@hostA -L 8888:hostB:8888 -t ssh -XC hogehoge@hostB
sshfs
# hostAの/home/hoge/dirをローカルの/home/hogehoge/ldirに read onlyでマウント
sshfs hoge@hostA:/home/hoge/dir /home/hogehoge/ldir -o ro
# ローカルの/home/hogehoge/ldirにマウントされているリモートのディレクトリをアンマウント
fusermount -u /home/hogehoge/ldir
設定ファイル群
/etc/*
cat /etc/chrony.conf
cat /etc/environment
cat /etc/exports # NFSの設定
cat /etc/fstab # ディスクのマウント情報
cat /etc/group
cat /etc/gshadow
cat /etc/hostname # ホスト名
cat /etc/hosts #登録しているホスト群の情報
cat /etc/netconfig
cat /etc/netplan/01-netcfg.yaml #ネットワーク設定 (Ubuntu)
cat /etc/networks
cat /etc/os-release
cat /etc/passwd
cat /etc/pbs.conf #OpenPBSの設定ファイル
cat /etc/redhat-release # CentOSのバージョンの確認
cat /etc/shadow
cat /etc/subgid
cat /etc/subuid
cat /etc/system-release
cat /etc/sysconfig/network-scripts/ifcfg-eth0 # eth0の情報(CentOS)
cat /ets/sysconfig/network # NISドメイン等の情報
cat /etc/yp.conf
cat /ect/ypserv.conf
トラブルシューティング
yum install epel-release
でEPELリポジトリがインストールできない
コマンドを実行しても、謎の「何もしない」みたいなレスポンスが返ってくるときは、EPELが入っているけど、有効になっていないというケースがある。
yum repolist all | grep -i epel
で、「diable」とか「無効」になっていることがある。その場合は
yum-config-manager --enable epel
で有効にしてから、冒頭のコマンドを叩けば、EPELリポジトリが追加できる。
参考にしたサイト: あらためてEPELリポジトリの使い方をまとめてみた - Qiita
NICが二つの筐体で、両方にケーブルを指すと期待通りに動作しない
もしかして、片方のNICで"never use this network for default route"にチェックを入れてないからかも。
参考にしたサイト: 【nmtui】CentOS8のネットワーク初期設定~VMwarePlayer/VirtualBox~ | SEの道標
linuxでNIC 2枚挿し以上の場合のデフォルトゲートウェイ | Mad Grandfather Company