基本的な使い方
ファイル、ディレクトリを表示する
ls
ファイル、ディレクトリの詳細、隠しファイルを表示する
ls -la
ファイルの日時に関する情報を表示する
更新時間の「年」「秒」「タイムゾーン」まで表示する
ls --fulltime
ファイルが更新された日時ではなく「参照」された日時を表示する
ls --ul
ディレクトリの枝を追加するイメージ
(dmesg : Linuxカーネルが起動時に出力したメッセージを表示するコマンド)
$ dmesg | grep sdb
$ mount /dev/sdb1 /mnt $ ls /mnt Sustem Volume Information # どのデバイスがどこにマウントされているか確認する $ df -Th ファイルシス タイプ サイズ 使用 残り 使用% マウント位置 devtmpfs devtmpfs 876M 0 876M 0% /dev tmpfs tmpfs 887M 0 887M 0% /dev/shm tmpfs tmpfs 887M 17M 870M 2% /run tmpfs tmpfs 887M 0 887M 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 50G 5.4G 45G 11% / /dev/sda1 xfs 1014M 308M 707M 31% /boot /dev/mapper/centos-home xfs 73G 996M 72G 2% /home tmpfs tmpfs 178M 0 178M 0% /run/user/1000
$ umount /mnt # アンマウントエラーになる場合、状況を確認する $ lsof /mnt
オプション | 説明 |
---|---|
-a | /etc/fstab に記述されたファイルシステムを全てマウントする。 例外としてnoautoオプションが記述されている場合はマウントしない |
-t | ファイルシステムを指定してマウントする。サポートされているファイルシステムは/etc/filesystems に記述されている |
uid : ユーザID指定 gid : グループID指定 ro : 読み込み専用 rw : 書込みの許可
参考:https://eng-entrance.com/linux-mount
fstab 参照のこと
テキストコードの文字コードをアレコレするコマンド
nkf -w sample.txt > sample-utf8.txt
nkf -s sample.txt > sample-Shift_JIS.txt
nkf -e sample.txt > sample-EUC-JP.txt
nkf -w --overwrite sample.txt
nkf -g sample.txt orders.csv # UTF-8 の場合 UTF-8 # Shift JIS の場合 Shift_JIS # EUC-JP の場合 EUC-JP
オプション | オプション |
---|---|
-Lu | 改行コードをLFに変換する |
-Lw | 改行コードをCRLFに変換する |
-Lm | 改行コードをCRにする |
yum install package-name
yum check-update yum list updates
yum update package-name
yum remove package-name
詳細は man yum.conf
を参照すること
# vi /etc/yum.conf proxy=http://proxy:8080
# /etc/yum.conf timeout=60
$ yum list all $ yum list vim/* $ yum list installed
$ yum list updates
$ yum list available $ yum list available | grep mysql
$ yum info PACKAGE_NAME
# pythonが依存するパッケージを表示 yum deplist python # pythonに依存するパッケージを表示 rpm -q --whatrequires <パッケージA>
$ yum check-update
$ yum update package-name $ yum update $ yum upgrade
yum upgrade
は yum update --obsoletes
と同じ
古いパッケージを削除しつつupdateしてくれる
CentOSでは、/etc/yum.confにobsoletes=1
と書いてあるため、デフォルトで--obsoletes
が有効の状態
よって、yum update
もyum upgrade
も変わらない
$ yum --security check-update $ yum --security update
$ yum clearn all
$ yum remove package-name
AWS のRedhatEnterpriseLinuxでエラーが出てしまう yumを実行すると以下のエラーになる
This system is not registered with an entitlement server
EC2の RHEL AMII には基本サブスクリプションが含まれるため、subscription-managerを有効にする必要はない。エラーが目障りという場合は設定を変更するだけでいい [参考] https://dev.classmethod.jp/articles/tsnote-ec2-dnf-upgrade-error-001/
sudo vi /etc/yum/pluginconf.d/subscription-manager.conf (変更前)enabled=1 (変更後)enabled=0
$ yum repolist [ all | enabled | disabled ] -v
vi /etc/yum.repos.d/*.repo [...] enabled=1 (無効)
$ yum-config-manager --disable nodesource $ yum-config-manager --enable nodesource
$ yum --enablerepo=リポジトリID search,install,update等のコマンド ・・・ $ yum --disablerepo=リポジトリID search,install,update等のコマンド ・・・
[参考] https://stupiddog.jp/note/archives/1074
$ yum install centos-release-scl-rh
AppStream RHEL リリース5年目まで最新バージョンが提供され、それ以降は特定のストリームだけがサポート対象になる。
Red Hat Software Collections 同じバージョンが10年間サポートされる
EPEL Fedoraに含まれているパッケージを利用できる RHEL同等のサポート、CVEを受けられるわけではない。
$ sudo yum install epel-release
IUS(Inline with Upstream Stable) 標準パッケージより新しいパッケージが利用できる。
$ sudo yum install https://repo.ius.io/ius-release-el7.rpm \ https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
エラー内容
Failed to download metadata for repo 'remi-modular': repomd.xml GPG signature verification error: gpgme_engine_check_version() error: Invalid crypto engine
remi、epelのパッケージを再インストールしてみる remiのパッケージはインストール対象によってURLが変化するので都度確認すること
rpm -ivh パッケージファイル名
rpm -Uvh パッケージファイル名
rpm -evh パッケージ名
短いオプション | 長いオプション | 機能 |
---|---|---|
-i | --install | パッケージをインストールする |
-U | --upgrade | パッケージをアップグレードする(「--install」と同じオプションが使用可能) |
-F | --freshen | 以前のバージョンがインストールされているときのみパッケージをアップグレードする |
-e | --erase | パッケージをアンインストール(削除)する |
-q | --query | 問い合わせ(パッケージ情報の表示と検索) |
-V | --verify | パッケージを検査する |
-i、-U、-q といった基本オプションと同時に使用可能
短いオプション | 機能 |
---|---|
-v | 情報表示を増やす |
-vv | -v よりも詳細な情報を表示する(デバッグ用) |
--quiet | 情報表示を減らす(エラーメッセージのみになる) |
短いオプション | 長いオプション | 機能 |
---|---|---|
-h | --hash | インストール時の進捗を「#」マークで表示する |
--test | 実際のインストールなどは行わず、テストのみ行う | |
--nodeps | パッケージの依存関係を検証しない |
短いオプション | 長いオプション | 機能 |
---|---|---|
-a | --all | インストールされているパッケージを一覧表示する |
-i | パッケージの情報を表示する | |
--provides | パッケージが提供する機能を表示する | |
-R | --requires | 依存しているファイル名を表示する |
--changelog | パッケージの更新情報を表示する | |
-l | --list | パッケージに含まれるファイルを表示する |
-c | --configfiles | 設定ファイルのみを表示する(「-l」を指定したものと見なす) |
-d | --docfiles | 文書ファイルのみを表示する(「-l」を指定したものと見なす) |
-f ファイル名 | --file ファイル名 | 指定したファイルがどのパッケージからインストールされたのかを表示する(フィールドあるいはフルパスで指定) |
-p | パッケージ名ではなく、RPMパッケージファイルを指定して問い合わせる |
yumdownloader --resolve --destdir ディレクトリパス パッケージ名
Markdown での書き込み例。 一部対応していない記法もありそう?
italic *
italic _
strong **
strong __
erase
リストの後は文章などを入れないと番号付きリストにならない。
URLの変数化 はてなブログ
引用
脚注[^1] [^1] 明細
# source code print("this is python source code")
this is inline code
テーブルのヘッダはデザインによって見えづらくなりそう
項目 | 値 |
---|---|
item name | 100 |