2021/02/06

Linux操作

Linux操作

# OS情報確認
cat /etc/os-release
do-release-upgrade -V

# 再起動(shutdownを使うのが安牌)
reboot
sudo shutdown -r now

# シャットダウン(shutdownを使うのが安牌)
poweroff
sudo shutdown -h now

# システム負荷
top -d 更新間隔(秒) -n 繰り返す回数(回)
## 特定プロセスのシステム負荷
top -d 更新間隔(秒) -n 繰り返す回数(回) -p プロセスID

# ディスク使用率
df -h

# ユーザー
## ユーザー一覧
cat /etc/passwd
## ユーザー追加
sudo useradd ユーザー名
## ユーザー削除
sudo userdel ユーザー名
## パスワード変更
sudo passwd ユーザー名
## ユーザー切り替え
su ユーザー名
## 現在のユーザー確認
whoami

# グループ
## グループ一覧
cat /etc/group
## ユーザーにグループを追加
sudo gpasswd -a ユーザー名 グループ名
## ユーザーからグループを削除
sudo gpasswd -d ユーザー名 グループ名
## ユーザーのグループを変更
sudo usermod G グループ名 ユーザー名

# パッケージ検索
## パッケージ検索
sudo apt-cache search パッケージ名
## パッケージ検索(インストール可能)
sudo apt-cache policy パッケージ名
## アップグレード可能なパッケージ一覧
sudo apt-get --simulate upgrade
sudo apt list --upgradable

# パッケージインストール
## パッケージインストール
sudo apt-get install パッケージ名
## パッケージアンインストール
sudo apt-get remove パッケージ名

# パッケージの自動更新のオンオフ
## 自動更新オンのパッケージ一覧
sudo apt-mark showmanual
## 自動更新オフのパッケージ一覧
sudo apt-mark showhold
## パッケージの自動更新オン
sudo apt-mark unhold パッケージ名
## パッケージの自動更新オフ
sudo apt-mark hold パッケージ名

# システムマネージャー
## システム起動
sudo systemctl start システム名
## システム停止
sudo systemctl stop システム名
## システム再起動
sudo systemctl restart システム名
## システムの状態確認
sudo systemctl status システム名
## OS起動時にシステム起動する
sudo systemctl enable システム名
## OS起動時にシステム起動しない
sudo systemctl disable システム名

# ディレクトリ
## 現在のディレクトリ確認
pwd
## ディレクトリを移動
cd ディレクトリ名

# ファイル
## 現在のディレクトリのファイル一覧
ls -al
## ファイル権限変更
### コマンド
chmod 三桁数字 ファイル名
### 三桁数字
所有者  所有者グループ  その他
421  421  421
rwx  rwx  rwx
## 所有者変更
### ファイルの所有者を変更
chown ユーザー名 ファイル名
### ファイルの所有者、所有グループを変更
chown ユーザー名:グループ名 ファイル名
### ディレクトリ配下のファイルの所有者を変更
chown -hR ユーザー名 ディレクトリ名

# ファイルの圧縮解凍
## tar
### 圧縮
tar -cvf xxxx.tar directory
### 解凍
tar -xvf xxxx.tar
## tar.gz
### 圧縮
tar -zcvf xxxx.tar.gz directory
### 解凍
tar -zxvf xxxx.tar.gz
## zip
sudo apt-get install -y zip
### 圧縮
zip -r xxxx.zip directory
### 解凍
unzip xxxx.zip

# 削除
rm -rf 削除したいファイル名
rm -Rf 削除したいディレクトリ名

# IP確認
ip -4 a

# MACアドレス確認
ip addr show

# 経路確認
tracepath ホスト名(or IP)

# DNSに問い合わせ
nslookup ホスト名(or IP)

# SSH
## SSH接続
ssh -i 鍵 ユーザー名@リモートホスト名
## 鍵作成
ssh-keygen -t rsa -b 4096 -f 鍵
## 登録されている鍵
### SSHする側(公開鍵)
sudo vi ~/.ssh/known_hosts
### SSHされる側(秘密鍵)
sudo vi ~/.ssh/authorized_keys

# ファイル転送
## ローカルからリモートホストにファイルをコピーする
scp -i 鍵 /作業端末のディレクトリ/ファイル名 ユーザー名@リモートホスト名:/配置先ディレクトリ
## リモートホストからローカルにファイルをコピーする
scp -i 鍵 ユーザー名@リモートホスト名:/配置先ディレクトリ/ファイル名 /作業端末のディレクトリ