#author("2025-07-08T09:41:15+09:00","default:dramsukohome","dramsukohome") #author("2025-07-08T09:41:37+09:00","default:dramsukohome","dramsukohome") [[FrontPage]] #shadowheader(1,Linux Common); #shadowheader(2,目次); #contents * コマンド メモ [#daaf4bf8] - [[(wiki.js) Linux Command:https://wikijs.tar3.net:3443/ja/310-Linux/311-LinuxCommon/110-command/LinuxCommand]] * Network [#p6207db6] [[(wiki.js) Network:https://wikijs.tar3.net:3443/ja/310-Linux/311-LinuxCommon/Network]] - [[(wiki.js) Network:https://wikijs.tar3.net:3443/ja/310-Linux/311-LinuxCommon/Network]] * Linux ディストリビューション distribution [#vdd9d2f4] ** Debian 系 [#s79b3911] + Debian -- Linux ディストリビューションの中でもかなり老舗 -- Ubuntu よりシンプルな構造で軽量。 -- パッケージ管理システムは apt + Ubuntu -- デスクトップ用途に向いているDebianベースのディストリビューション。 --- デバイスドライバが豊富で、ハードウェアは大体認識する。 -- 2年に一度、LTS(Long time support)、半年に一度のバージョンアップが行われる。 --- LTS のサポート期間は確か5年。 -- パッケージ管理システムは apt + WattOS -- Debian ベースのディストリビューション。 -- 省電力に特化。TLPなどを用いながら省電力化。 + Kali Linux -- Debian ベースのディストリビューション。 -- サーバーに潜む脆弱性の発見に特化。 -- パッケージ管理システムは apt ** Redhat 系 [#y2deeadb] + CentOS -- 有名な有償 Linux ディストリビューション RedHat のコピーOS -- 無料 -- ほぼ RedHat のフル機能が使用可能 -- パッケージ管理システムは yum + Fedora -- RedHat の実験的機能が実装された無償ディストリビューション。 -- 無料 -- かなり頻繁に更新される模様。 -- パッケージ管理システムは yum ** その他 [#r3fc36b4] *** Puppy Linux [#t964225e] - 軽量Linux の代表格 - 独自のシステムでパッケージ管理も独自。 *** Rescuezilla [#t29503ae] - OSのイメージバックアップを取るディストリビューションらしい。 - 未検証。 *** Back box [#k301ceb9] - 軽量Linux - 家の Sony VAIO Type P 用として使用。(PCG-11113N) - バージョン7からは寄付必須?? * その他 [#g1a484b9] ** タイムスタンプ [#x785427b] - [[参考サイト:http://x68000.q-e-d.net/~68user/unix/pickup?%A5%BF%A5%A4%A5%E0%A5%B9%A5%BF%A5%F3%A5%D7]] - UNIXファイルのタイムスタンプは以下の3つ。 |タイムスタンプ名|説明|参照コマンド|h |atime|最終アクセス時刻 (access time)|ls -lu| |mtime|最終変更時刻 (modify time)|ls -l| |ctime|最終ステータス変更時刻 (change time)|ls -lc| **ubuntu版chkconfig [#h90729d1] sudo apt-get install sysv-rc-conf sudo sysv-rc-conf networking on **ユーザー、グループ管理、アクセス権 [#t9a8402f] -[[ユーザー、グループ管理]]~ ** Ubuntu LTS upgrade [#t973e919] sudo do-release-upgrade ** ファイルがあり実行権限があるのに「そのようなファイルやディレクトリはありません」「No such file or directory」と表示される [#x5a80c1d] - 32bitアプリ、64bitアプリが合ってない可能性がある ** ubuntu, /boot 容量削減, kernel削除 [#r3dc2a10] -参考(外部):[[古いカーネルの削除方法メモ:https://qiita.com/ytkumasan/items/d6cc70f151f130d58e9b]] - 現在のカーネルバージョンを確認 uname -r - インストールされているカーネルを確認 dpkg --get-selections | grep linux- - 削除(複数選択可能) sudo apt-get autoremove --purge linux-headers-3.13.0-{65,67,71} - きちんと消えなければimageを削除 sudo apt-get autoremove --purge linux-image-3.13.0-{65,67,71} ** プロセス名でgrepした結果をkillする [#t9464957] -[[参考(外部サイト),プロセス名でgrepした結果をkillするシェルスクリプトを作る(Qiita):https://qiita.com/masarufuruya/items/409679c1006980ef1b60]] -コマンド ps aux | grep [プロセス名] | grep -v grep | awk '{ print "kill -9", $2 }' | sh ** find の結果でpermissionを表示する。 [#ha723256] - -lsを付ける。 - 例 find ./ -type f -name *.js -ls ** yum,Error: Multilib version problems found. [#q8cc8446] -以下のオプションを付けて実行 --setopt=protected_multilib=false -例 yum update --setopt=protected_multilib=false ** dpkg-divert: エラー: パッケージの不整合です [#d7a29948] -結構はまったのですが、退避ファイルに関するパッケージの不整合。 -エラーは以下な感じ。 dpkg-divert: エラー: パッケージの不整合です `libnvidia-gl-460 による /usr/lib/i386-linux-gnu/libEGL.so の退避 (divert)' の削除中に `nvidia-340 による /usr/lib/i386-linux-gnu/libEGL.so から /usr/lib/i386-linux-gnu/libEGL.so.distrib への退避 (divert)' を発見しました dpkg: アーカイブ /var/cache/apt/archives/libnvidia-gl-460_460.73.01-0ubuntu0.18.04.1_i386.deb の処理中にエラーが発生しました (--unpack): new libnvidia-gl-460:i386 package pre-installation script subprocess returned error exit status 2 処理中にエラーが発生しました: /var/cache/apt/archives/libnvidia-gl-460_460.73.01-0ubuntu0.18.04.1_i386.deb E: Sub-process /usr/bin/dpkg returned an error code (1) -注目するのは以下の部分。 /usr/lib/i386-linux-gnu/libEGL.so -distribファイルを以下のコマンドで根気良く削除していきます。~ 同じようなPathやファイルが有るので出来ればコピペした方が良いかも。。。 sudo dpkg-divert --rename --remove /usr/lib/i386-linux-gnu/libEGL.so -少しずつ削除していきますが、以下のエラーも出ます。 'nvidia-340 による /usr/lib/i386-linux-gnu/libGL.so.1 から /usr/lib/i386-linux-gnu/libGL.so.1.distrib への退避 (divert)' を削除しています dpkg-divert: エラー: 名前変更は `/usr/lib/i386-linux-gnu/libGL.so.1' を異なるファイル `/usr/lib/i386-linux-gnu/libGL.so.1.distrib' で上書きすることを伴います。 これは許可されていません。 --この場合は、distribファイルを手動で削除して再度コマンドをsudo dpkg-divert コマンドを実行しました。 -ちなみに以下のコマンドとセットで少しずつ進めました。 sudo apt --fix-broken install **省電力,充電制御,電源設定 [#cb1008ed] +関連ソフトのインストール -- Redhat, CentOS, AlmaLinux sudo yum install powertop -- Ubuntu(20.04) sudo apt install powertop tlp tlp-rdw +powertopの簡単な使い方 --実行 sudo powertop --Tabで上のタブが切り替わります。 --良く使うのが「Overview」と「Device stats」 --「Tunables」は取りあえず全部「Good」に切り替えてOK。 --ESCキーで powertop を終了させることtができます。 --自動設定 sudo powertop --auto-tune --校正 sudo powertop --calibrate + tlp ++ 起動 sudo systemctl start tlp ++ 自動起動の設定 sudo systemctl enable tlp + 充電制御 ++ Ubuntu 20.04 では以下のファイルを変更 sudo vim /etc/tlp.conf --- 少し前までは以下にあったようです。 sudo vim /etc/default/tlp ++ 以下の行のコメントアウトを外す START_CHARGE_THRESH_BAT0=75 STOP_CHARGE_THRESH_BAT0=80 ++ tlp を再起動 sudo systemctl restart tlp ++ tlp 設定の確認 sudo tlp-stat -b + バッテリーの状態を確認 upower -i /org/freedesktop/UPower/devices/battery_BAT0 ** LVM,領域,拡張,volume,partition, [#qb4981f5] *** 参考サイト [#hdfb8f8f] + [[【LVM入門】LinuxのLVMでディスク容量を拡張する:https://tech-mmmm.blogspot.com/2020/03/lvmlinuxlvm_25.html]] + [[LVMでディスク拡張(CentOS6 + lvm2 + ext4):https://www.isoppe.jp/?p=2585]] *** df コマンドで現状を確認 [#ub01dd0e] [root@localhost ~]# df -h ファイルシス サイズ 使用 残り 使用% マウント位置 /dev/mapper/rhel-root 14G 1.4G 13G 11% / devtmpfs 908M 0 908M 0% /dev tmpfs 920M 0 920M 0% /dev/shm tmpfs 920M 8.9M 911M 1% /run tmpfs 920M 0 920M 0% /sys/fs/cgroup /dev/sda1 1014M 146M 869M 15% /boot tmpfs 184M 0 184M 0% /run/user/0 /dev/mapper/vg_sdb1-lv_sdb1 2.0G 33M 2.0G 2% /mnt *** 拡張前のディスク容量を確認 [#tcf8e83a] fdisk -l /dev/sda ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 41M 1.9G 3% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 36G 3.5G 30G 11% / /dev/sda1 477M 186M 262M 42% /boot /dev/mapper/centos-var 30G 7.4G 21G 27% /var centos6:/var/log 9.5G 692M 8.4G 8% /mnt/centos6-log *** VMなどでHDDのストレージを拡張 [#v399f730] -方法は省略 -拡張後は変わらず fdisk -l /dev/sda ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 41M 1.9G 3% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 36G 3.5G 30G 11% / /dev/sda1 477M 186M 262M 42% /boot /dev/mapper/centos-var 30G 7.4G 21G 27% /var centos6:/var/log 9.5G 692M 8.4G 8% /mnt/centos6-log *** 拡張後OSでリスキャンし、容量を認識させる [#j23dcfc1] - 例として /dev/sda にて実行 echo 1 > /sys/class/block/sda/device/rescan *** パーティションの拡張 [#y4ef4cb9] + 以下のコマンドを実行(例 /dev/sda) sudo parted /dev/sda + (parted) のプロンプトで以下のコマンドを実行 p free + resizepart を実行 resizepart + 再度確認 p free *** PV容量拡張 [#zfaf5d70] + 現状確認 pvdisplay /dev/sda2 + PVのリサイズ pvresize /dev/sda2 + 再度確認 pvdisplay /dev/sda2 + 一応VGも確認しておく vgdisplay vg_sda2 *** LV容量拡張 [#zd07eec0] + 現状の確認(vg_sdb1/lv_sda2 は適宜変更) lvdisplay /dev/vg_sdb1/lv_sda2 + 対象を100%に増やす lvextend -l +100%FREE /dev/vg_sda2/lv_sda2 + 再度確認 lvdisplay /dev/vg_sdb1/lv_sda2 *** ファイルシステム拡張(ext4) [#i4d04430] -vg_hoge-LogVol00 は定義変更 resize2fs /dev/mapper/vg_hoge-LogVol00 zz *** 最後に確認 [#af6a5669] df -h ** Ubuntu, OSが起動せず「initramfs」と表示される,HDD エラー修復 [#laa7aebf] +とりあえず起動するための施策 ++とりあえず以下のコマンドでファイルチェック & 修復~ 赤い箇所は適宜書き換え --- fsck /dev/&color(red,){sda6}; ++途中で何回か「y」キーを押す ++終わったら「reboot」コマンドで再起動 +起動後、不良セクタを調べる -- sudo badblocks -v -s /dev/sda6 | tee /tmp/badblocks.txt +不良セクタのマーキング -- e2fsck -l /tmp/badblocks.txt /dev/sda6 +1回のコマンドですべて実行 -- sudo fsck -t -y -f -c /dev/sda6 ** OS が起動せず Control-D とか、root といった文字だけ見える(他は文字化け) [#ib6a416c] - とりあえず root のパスワードを入力すれば、bash が表示される ** apt update, apt-key が非推奨となりエラーが表示される [#v8487c94] + エラーメッセージ -- W: (URL): Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. + 対策 -- gpg キーへ変換して設定する。 ++ まずは普通にダウンロード(例はmoose file system) wget https://ppa.moosefs.com/moosefs.key ++ 変換(import) gpg --no-default-keyring --keyring temp-keyring.gpg --import moosefs.key ++ 変換後の出力 gpg --no-default-keyring --keyring temp-keyring.gpg --export --output moosefs-gpg.gpg ++ apt へコピー sudo cp moosefs-gpg.gpg /etc/apt/trusted.gpg.d/ ++ soucelist の編集 vim /etc/apt/sources.list ++ 例(signed-by= 以下を追加) deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/moosefs-gpg.gpg] http://ppa.moosefs.com/moosefs-3/apt/ubuntu/focal focal main ** systemd-resolve が無い [#oc95235a] -以下と同意 /usr/bin/resolvectl -DNS, キャッシュクリア(cashe) sudo resolvectl --flush-caches -- または以下 sudo resolvectl flush-caches -DNS, キャッシュの状況 sudo resolvectl --statistics -- または以下 sudo resolvectl statistics ** apt,doesn't support architecture 'i386',error,エラー [#wad238c1] - 変更するファイル例 sudo vi /etc/apt/sources.list.d/google-chrome.list - 対象のソースリストに明示的にamd64を追記してあげる。~ 以下はイメージ deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main ** DVD起動して、Ubuntu(Linux)のディスクの中身を編集する [#m84f0bdc] - 設定を間違えて起動しなかった時など - GUIで起動するので、「Disk」アプリを開きマウントする -- 「/media」配下にマウントされる - sudo を使用して、ファイルを編集~ (自分は/etc/fstabを編集) ** vim insert visual, 右クリックで貼り付けできない, 対応 [#e5e29211] -以下のファイルを作成 ~/.vimrc -内容 set clipboard=unnamed,autoselect ** cronのメール送信関連 [#ef81bd32] -cronの結果は基本的に実行ユーザーへ送信される。~ +意図的に他のユーザーへメールを送信する場合~ -- sudo vim /etc/crontab # /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin LANG=ja_JP.UTF-8 CONTENT_TYPE=text/plain; charset="utf-8" MAILTO=root +もしかするとメール本文が空白の場合、メールが送信されないのかもしれない~ その場合や個別cronに対するメール送信方法 */5 * * * * www-data /usr/bin/php -f /var/www/nextcloud/cron.php --define apc.enable_cli=1 2>&1 | mail -s "Mail Title" mailAddress@hoge.com ** 起動時、自動実行 [#f556c201] +以下の順番で実行される ++/etc/init.d/rcファイル。 ++/etc/rc.d/ディレクトリにあるファイル。 ++/etc/config/rc.localファイル。 +sudo vi /etc/config/rc.local --例 #!/bin/bash amp;. /etc/rc.subr name="foo" rcvar=`set_rcvar` command="/usr/local/bin/foo" dynamic_debug/control +実行権限の付与 sudo chmod +x /etc/rc.local +注意点 ++実行権限の付与を忘れずに ++「#!/bin/bash」も忘れずに。。。 ++もしかしたらシンボリックリンクになってるかも。。。~ そしたらシンボリックリンクの先にも実行権限を。 --- sudo chmod +x /etc/rc.d/rc.local ** proxy経由でアクセスする設定(Linux) [#z229962c] -[[(wiki.js) proxy経由でアクセスする設定(Linux):https://wikijs.tar3.net:3443/ja/310-Linux/311-LinuxCommon/910-Other/proxy%E7%B5%8C%E7%94%B1%E3%81%A7%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%99%E3%82%8B%E8%A8%AD%E5%AE%9A]]