FrontPage

Linux Server

目次

Linux_Server

インストール関連

CentOS_6.3_初期インストール

CentOS_7_初期インストール

AlmaLinux? 8 初期インストール

debian系_初期インストール(ほとんど中身無し。これから書きます)

Machine

ラズベリーパイ_Raspberry_Pi

ラズベリーパイ_Raspberry_Pi

Linux、分散ファイルストレージ、moose file system、moosefs、mfs

Server Soft

Air Video Server のインストールと設定(Ubuntu)

  1. レポジトリの登録
    sudo apt-get install python-software-properties
    sudo apt-add-repository ppa:rubiojr/airvideo
    sudo apt-get update
    sudo apt-get install airvideo-server

apache

DHCP

bind_DNS

pi-hole,DNS

Docker

epgrec

friio-CentOS6

ftp_proftp

git

Hinemos

HomePage

iptables,firewall,ufw

  1. CentOS6
    1. 現場確認
      iptables -L
    2. 設定ファイルの読み込み
      /sbin/iptables-restore  < iptables
    3. iptables を再起動した時に設定が保存されるようにする
      /etc/init.d/iptables save
    4. log 出力設定 (下記2つのどちらかを追加)
      • vi /etc/syslog.conf
        # iptables log
        *kern.debug /var/log/iptables
      • vi /etc/rsyslog.conf
        # iptables log
        *kern.debug /var/log/iptables
    5. iptables の状態表示
      yum install iptstate
      iptstate
  2. CentOS7
    • 参考サイト(外部):ファイアウォール構築(iptables)
      • 知らなかったのですが、「全国警察施設への攻撃元上位5カ国」という情報があるらしいです。
        1. CN:中国
        2. GB:イギリス
        3. ID:インドネシア
        4. IN:インド
        5. RU:ロシア
      • ちなみにうちは以下を止めてます。
        1. DROP_COUNTRY_MAKE BD
        2. DROP_COUNTRY_MAKE BR
        3. DROP_COUNTRY_MAKE CN
        4. DROP_COUNTRY_MAKE DE
        5. DROP_COUNTRY_MAKE FR
        6. DROP_COUNTRY_MAKE GB
        7. DROP_COUNTRY_MAKE ID
        8. DROP_COUNTRY_MAKE IN
        9. DROP_COUNTRY_MAKE IT
        10. DROP_COUNTRY_MAKE KR
        11. DROP_COUNTRY_MAKE MX
        12. DROP_COUNTRY_MAKE NL
        13. DROP_COUNTRY_MAKE PL
        14. DROP_COUNTRY_MAKE RO
        15. DROP_COUNTRY_MAKE RS
        16. DROP_COUNTRY_MAKE RU
        17. DROP_COUNTRY_MAKE SA
        18. DROP_COUNTRY_MAKE TR
        19. DROP_COUNTRY_MAKE UA
        • さらにちなみに攻撃?というか、Wikiを宣伝で変えようとするのは圧倒的に中国が多いです。アクセス履歴をDBにまとめて集計するとそれなりに面白いです(^^)
    • Install
      • 参考サイト(外部):CentOS7でのiptablesの設定忘れるのでメモ
      • firewalld を停止

        fiwawalldの停止

        sudo systemctl stop firewalld

        自動起動の停止

        sudo systemctl disable firewalld

        ステータスの確認

        sudo systemctl status firewalld
      • install
        sudo yum install iptables-services
    • iptables の起動
      • 起動
        sudo systemctl start iptables
      • 自動機能有効化
        sudo systemctl enable iptables
      • Statusの確認
        sudo systemctl status iptables
    • iptables save のやり方
      • CentOS7
        /usr/libexec/iptables/iptables.init save 
    • logrotate
      • sudo vi /etc/logrotate.d/iptables
        /var/log/iptables {
             weekly
             rotate 10
             create
             postrotate
                  /bin/systemctl reload iptables.service > /dev/null 2> /dev/null || true
             endscript
        }
  3. ufw(Uncomplicated Firewall,ubuntu)

ubuntu に lamp 環境をインストールする

  1. lamp とは以下のプログラムの頭文字だYO
    1. Linux
    2. Apache(Web)
    3. Mysal(Database)
    4. PHP(Web programing言語)
  2. install
    1. sudo apt-get update
    2. sudo apt-get install tasksel
    3. sudo tasksel install lamp-server

lychee,Web用の画像サーバー,Google Photoの代わりになるか

  1. データベースの作成
    1. ログイン
      sudo mysql -u root -p
    2. root のパスワードを入力
    3. 以下のコマンドを発行
      CREATE DATABASE lychee_db CHARACTER SET utf8 COLLATE utf8_general_ci;
      CREATE USER 'lychee_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
      GRANT ALL PRIVILEGES ON lychee_db.* TO 'lychee_user'@'localhost';
  2. lycheeのダウンロード
    1. 以下のサイトで latest 版を探す
    2. zip file のダウンロード(例)
      wget https://github.com/electerious/Lychee/archive/refs/tags/v3.1.6.zip
    3. unzip
      unzip v3.1.6.zip
    4. Lychee file の移動
      sudo mv -v Lychee-3.1.6 /var/www/html/lychee
  3. 権限の変更
    1. cd /var/www/html
      sudo chown -R apache:apache lychee
      cd /var/www/html/lychee
      sudo chmod -R 777 data/ upload/
  4. Apacheの再起動
    sudo systemctl restart httpd
  5. Web site へアクセスして設定
    http://(ip address)/lychee
    • http://192.168.110.1/lychee
    1. Database Host: localhost
    2. Database Username: lychee
    3. Password: UltraSecurePassword?
  6. ユーザー名とパスワードを設定 -> Create Login
    • 自分はここで色々とエラーが出たけど、apache のログ /var/log/httpd/ の error ログを見ながら少しずつ対応
  7. 参考
    • 設定ファイルは以下
      /var/www/html/lychee/data/config.php

openldap

logwatch

mail_postfix-dovecot

minecraft

mysql

nagios,サーバー監視

nfs

php

piwigo,Web用の画像サーバー,Google Photoの代わりになるか

  1. 参考サイト:https://ja.linux-console.net/?p=319
  2. 前提
    • LAMP環境は構築済み
    • CentOS 7
  3. mysql へデータベースの作成とユーザー追加
    1. mysql -u root -p
    2. create database piwigo;
    3. grant all privileges on piwigo.* to 'piwigouser'@'localhost' identified by 'pass123';
    4. flush privileges;
    5. exit
  4. Install方法
    1. download
      wget http://piwigo.org/download/dlcounter.php?code=latest -O piwigo.zip
    2. 解凍
      unzip piwigo.zip 
    3. コピー
      cp -fr piwigo /var/www/html/
    4. ファイルの所有者を変更
      chown -R apache:apache /var/www/html/
    5. アクセス権の変更
      chmod -R 755 /var/www/html/
      chmod -R 777 /var/www/html/_data/
  5. アクセス
    http://(ip address)/piwigo
    1. あとは多分、フィーリングでセットアップ可能なはず
  6. 同期
    1. 日本語不可
    2. 以下意外の語句不可
      1. [-]
      2. [_]
      3. [.] ピリオド
      4. アルファベット
    3. 不可語句例
      1. [ ] スペース
      2. [(]
      3. [)]
  7. PNGなど大文字の拡張子を認識しない
    1. 以下を編集
      vim piwigo/include/config_default.inc.php
    2. 43行目あたり
      • 変更後
        $conf['picture_ext'] = array('jpg','jpeg','png','gif','PNG','JPG');
      • 変更前
        $conf['picture_ext'] = array('jpg','jpeg','png','gif');

proxy_squid

pukiwiki

router

rsync

samba

snmp

ssl証明書の購入

tomcat

tv,terevison,cable,satellite,japan,epgstation

vnc,ubuntu

vpn_centos

webdav_owncloud

wordpress_ブログ作成

x11vnc

zabbix

その他

vi_vim

cpan

perl_http_template

perl -MCPAN -e 'install HTML::Template'

centos_raid

RPMforge_for_CentOS_5

  1. 下記のコマンドを実行
    rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
  2. ここから rpm ファイルをダウンロード
  3. ダウンロードしたファイルを下記のコマンドで実行
    rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm
    rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

ntp、動作確認コマンド

ntpq -p

ubuntu、chkconfig、の代わり

#インストール
sudo aptitude -y install sysv-rc-conf

#一覧の表示
sudo sysv-rc-conf -list
sudo sysv-rc-conf -list | grep ssh

#切り替え
sudo sysv-rc-conf ssh onまたはoff

シングルモードでの起動

ディレクトリ毎の合計容量をソートして表示du

apt-get_エラー

  1. 削除できない
    • /var/lib/dpkg/info 内の対象ファイルを片っ端から rename
      • $ sudo mv opera.prerm opera.prerm.bak
      • $ sudo mv opera.config opera.config.bak
      • $ sudo mv opera.list opera.list.bak
      • $ sudo mv opera.md5sums opera.md5sums.bak
      • $ sudo mv opera.postinst opera.postinst.bak
      • $ sudo mv opera.postrm opera.postrm.bak
      • $ sudo mv opera.templates opera.templates.bak
    • 削除コマンド実行
      • $ sudo dpkg --remove --force-remove-reinstreq opera
  2. apt でエラー出る
    • sudo apt-get clean
    • sudo apt-get install -f

CUIの文字色を変更する

UbuntuをCUI起動

省電力

  1. Ubuntu
    • ソフトTLP
      sudo add-apt-repository ppa:linrunner/tlp
      sudo apt-get update
      sudo apt-get install tlp tlp-rdw smartmontools ethtool
    • GUI 制御
    • conf ファイルの編集
      sudo vi /etc/default/tlp
  2. CentOS
    • ここを参考にしました1
    • ここを参考にしました2
    • Install
      sudo yum install cpuspeed
    • acpi-cpufreq driver の適用 (.ko は除いて適用する)
      cd /lib/modules/[kernel]/kernel/arch/[arch tecture]/kernel/cpu/cpufreq/
    • sudo modprobe acpi-cpufreq
    • 設定可能なクロック数の確認
      cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
      3200000 2800000
    • 設定ファイルの編集
      sudo vi /etc/sysconfig/cpuspeed
    • 下記3箇所を設定
      GOVERNOR=userspace
      MAX_SPEED=2800000
      MIN_SPEED=3200000
    • デーモンの起動
      sudo /etc/init.d/cpuspeed start
    • 再起動時の自動起動
      sudo chkconfig cpuspeed on

img ファイルを SD カードへ

proxy経由でアクセスする設定

tcpdump_複数ポート_port(例)

tcpdump -i eth0 port 20 or port 21 or port 80

パッケージ関連まとめ

debian 系の syslog

LPIC

ubuntu、を CUI で起動する。

  1. /etc/init/lightdm.overrideファイルを作成
    sudo vi /etc/init/lightdm.override
  2. 以下のフレーズを書き込む
    manual
  3. GUI起動にしたい場合は/etc/init/lightdm.overrideファイルを削除するか、以下のようにコメントアウト
    # manual
  4. CUI起動したけどGUIに切り替えたい時
    sudo lightdm
ctrl + alt + F7

Kernel panic – not syncing: Attempted to kill init! 対応

/etcディレクトリの自動バックアップ

syslog, rsyslog

ファイルを消してもディスクの空き容量が増えない場合

RHEL(CentOS) ホスト名を変更する(hostname)

rpm-build, rpmbuild のインストール

sudo yum install rpm-build
sudo yum install rpmdevtools yum-utils

nslookup のインストール(CentOS)

sudo yum install bind-utils

サーバの自動実行に追加するコマンド

elasticsearch というソフトを例で

sudo update-rc.d elasticsearch defaults

networkを認識しない。例) eth0,ネットワークカードを認識しない

  1. 方法1
    • 以下コマンドで eth0 が無いことを確認
      ifconfig
      lsmod
    • modprobe でネットワークドライバの読み込み
      modprobe epic100
    • ifconfig で eth0 を上げる
      ifconfig eth0 up
    • ifconfig でeth0が認識されていることを確認
      ifconfig
    • network 設定の確認
      • vi /etc/sysconfig/network-scripts/ifcfg-eth0
        ONBOOT=yes
    • Service の再起動
      service network restart
  2. p2v 後、ネットワークカードを認識しない。
    • [[参考サイト(ubuntu 有線 管理対象外と表示されているのを修正する):https://tarufu.info/ubuntu_wired_unmanaged/]]
    • 以下のファイルを作成する。
    • sudo vi /etc/NetworkManager?/conf.d/10-globally-managed-devices.conf
      [keyfile]
      unmanaged-devices=none 
    • Network manager の再起動
      sudo service network-manager restart

Active Directory 参画

cron, sudo, sudo: sorry, you must have a tty to run sudo

Certificate error

swap 領域を拡張する。

  1. 新規のパーティション全部をswap領域とする場合
    1. fdiskコマンドでswap領域のラベルをセットする。
      1. fdisk を起動
        sudo fdisk /dev/sdb4
      2. helpの表示
        m
      3. 現在の状態を確認
        p
      4. パーティションの作成
        n
      5. システムIDの変更
        t
        82
      6. 確認
        p
      7. 保存してfdiskを終了する。
        w
    2. 再起動(システムIDの反映)
      sudo shutdown -r now
    3. swap領域の作成
      sudo mkswap /dev/sdb4
    4. swap領域の有効化
      sudo swapon /dev/sdb4
    5. 確認
      free
    6. (参考:swap領域を無効化)
      swapoff /dev/sdb4
    7. swap領域の自動マウント
      sudo vi /etc/fstab
    8. 以下を追加
      /dev/sdb1  swap   swap    defaults   0 0
  2. 今あるディスクにswap領域を作成する場合
    1. swap 領域の確保
      sudo dd if=/dev/zero of=/var/swpfile bs=1M count=2048
    2. swap ファイルへ変換
      sudo mkswap /var/swpfile
    3. permission の変更
      sudo chmod 600 /var/swpfile
    4. swap fileを有効化
      sudo swapon /var/swpfile
    5. fstab への記載
      /var/swpfile         swap                    swap    defaults        0 0
    6. swap領域の削除
      sudo swapoff /var/swpfile

bash, プロンプト変更, prompt, PS1

RHEL互換OSについて考える(CentOSが2021年末サポート終了なので)

  1. AlmaLinux?
    • 2021/4/15次点でリリース済み
    • 自分はテストしている。
    • 開発
      • CloudLinux? OS」を開発している米CloudLinux?社。
  2. RockyLinux?
    • RockyLinux?プロジェクトを立ち上げたのは、
      CentOSプロジェクトの協同創設者のGregory Kurtzer。
    • RockyLinux?の名前は「Rocky McGaugh?」から来てる。
    • 2021年第2半期に出るかも。
  3. OracleLinux?
    • ソフト無償。サポート有償。なんか自分のなかではイメージは悪い。
  4. SpringdaleLinux?
    • プリンストン高等研究所が学術向けに開発している。
  5. Amazon Linux 2
    • RHEL7相当。利用者は多い。
  6. CentOS Stream
    • RHELに入る前の変更が入る。
    • 自分の中ではFedoraと似たイメージ。
  7. RHEL8
    • 個人で16台までなら無料。

CentOS8, dnf(yum), time out, error

ubuntuサーバーが起動せず「grub rescue」と表示される。

  1. 前提
    • grub rescue のまま頑張ろうと思いましたが、以下のエラーとなり無理〜。。。
      grub rescue> insmod (hd0,msdos1)/boot/grub/i386-pc/normal.mod
      error: symbol `grub_calloc' not found.
  2. Ubuntu のインストール DVD からDVD起動してGUIの端末から grub を修正します。
  3. インストールDVDから起動して、端末を起動できるようになったら起動します。
  4. 端末で以下のコマンドを実行
    (ディスクとパーティション一覧を表示させる事ができます)
    sudo fdisk -l
    • 実行結果
      自分の場合は、以下の赤い部分に注目します。

      ディスク /dev/sda: 447.13 GiB, 480103981056 バイト, 937703088 セクタ
      Disk model: 2710DCS23-480
      単位: セクタ (1 * 512 = 512 バイト)
      セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
      I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
      ディスクラベルのタイプ: dos
      ディスク識別子: 0x000e6bbb

      デバイス 起動 開始位置 最後から セクタ サイズ Id タイプ
      /dev/sda1 2048 1050623 1048576 512M b W95 FAT32
      /dev/sda2 1052670 156296384 155243715 74G 5 拡張領域
      /dev/sda3 156297216 937703087 781405872 372.6G 83 Linux
      /dev/sda5 140151123 156296384 16145262 7.7G 82 Linux スワップ / Solaris
      /dev/sda6 1052672 140150783 139098112 66.3G 83 Linux
  5. さらに以下のコマンドを実行
    sudo mount /dev/sda6 /mnt
    sudo mount --bind /dev/ /mnt/dev
    sudo chroot /mnt
    sudo grub-install /dev/sda
  6. なんかエラーは出ますが、「shutdown -r now」コマンドを実行して再起動するとDVDに頼らずともUbuntuが起動できました。めでたし、めでたし。

VMware, P2V後, Ubuntuサーバーが起動しない。

  1. 参考サイトVMware P2V Conversion: GrubInstaller Error During Conversion of Debian Linux Host
  2. まず、vCenterConverter? 時にエラー出る(97%とか98%とか。)
    FAILED: An error occurred during the conversion: 'GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh failed with return code: 127, and message: FATAL: kernel too old Error running vmware-updateGrub.sh through chroot into /mnt/p2v-src-root Command:
    chroot "/mnt/p2v-src-root" /vmware-updateGrub.sh "GRUB2" "(hd0)" "(hd0,5)" /vmware-device.map "grub2-install" '
    • 結論:このエラーは無視。
    • 次に記載する方法でGrubを修正
  3. Grubの修正
    1. vCenterConverter? でエラーが出ても仮想マシンは作成できている。
    2. そこに対象のUbuntuのDVDをISOでセットしDVD bootする。
    3. 「Ubuntuを試す」を選択し、デスクトップ画面を表示させる。
    4. 普通にGrubの修復を行う。
      • 端末で以下のコマンドを実行
        (ディスクとパーティション一覧を表示させる事ができます)
        sudo fdisk -l
        • 実行結果
          自分の場合は、以下の赤い部分に注目します。

          ディスク /dev/sda: 447.13 GiB, 480103981056 バイト, 937703088 セクタ
          Disk model: 2710DCS23-480
          単位: セクタ (1 * 512 = 512 バイト)
          セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
          I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
          ディスクラベルのタイプ: dos
          ディスク識別子: 0x000e6bbb

          デバイス 起動 開始位置 最後から セクタ サイズ Id タイプ
          /dev/sda1 2048 1050623 1048576 512M b W95 FAT32
          /dev/sda2 1052670 156296384 155243715 74G 5 拡張領域
          /dev/sda3 156297216 937703087 781405872 372.6G 83 Linux
          /dev/sda5 140151123 156296384 16145262 7.7G 82 Linux スワップ / Solaris
          /dev/sda6 1052672 140150783 139098112 66.3G 83 Linux
      1. さらに以下のコマンドを実行
        sudo mount /dev/sda6 /mnt
        sudo mount --bind /dev/ /mnt/dev
        sudo chroot /mnt
        sudo grub-install /dev/sda
        sudo exit
      2. エラーは表示されるが、今の時点では無視してOK。
  4. UUIDの変更
    1. UUIDの確認
      sudo blkid
      • 結果の赤字部分に注目します。
        • dev/sda5: UUID="&color(red,){154b6b94-302e-4c1a-930a-0978dc3f8361" TYPE="ext4" PARTUUID="2d6e9915-05"
    2. fstabの編集
      • sudo vi /etc/fstab
        以下の赤文字を変更
        • UUID=abcd6b94-302e-4c1a-930a-0978dc3f8361 / ext4 errors=remount-ro 0 1
    3. /boot/grub/grub.cfg の変更
      • vim /boot/grub/grub.cfg
      • :%s/元ID/新ID/gc
      • 例) :%s/154b6b94-302e-4c1a-930a-0978dc3f8361/abcd6b94-302e-4c1a-930a-0978dc3f8361/gc
  5. サーバーの再起動で完了(のはず)

CUIで動くファイル マネージャー,mc

  1. Install
    sudo apt install mc

disk, io, iotop, iostat, 優先, ionice

ioniceコマンド。ディスクを使用する優先順位を付けてコマンドを実行する。

参考サイト

簡単な例

ionice -c 3 cp a.txt b.txt

-c オプションについて

数字意味優先度
0なしベストエフォート
1リアルタイム最高。最優先
2ベストエフォートデフォルト
3アイドル最低

その他の ionice オプション

オプション(短)オプション(長)意味
-c 数字--class 数字I/Oスケジューリングの数字を指定。0-3。1が最優先
-n 数字--classdata 数字クラス1と2の中での優先度を0~7で指定する(0が最優先)
-p プロセスID--pid プロセスID対象とするプロセスのID(空白区切りで複数指定可能)
-t--ignoreクラスや優先度がセットできない場合もコマンドを実行する

プロセスの io 優先順位を変更する。

disk io の状況確認

iostat のインストール

  1. Ubuntu
    sudo apt install sysstat

iostatの例

iostat のオプション

オプション意味
-cCPU表示
-ddisk io の表示
-h読み易い表示形式
-kKB表示
-mMB表示
-pデバイス指定。/dev/sda など
-x拡張表示
-z表示対象の期間に使用されていないデバイスは表示しない

表示内容の説明

CentOS 8, EOL, CentOS-8 - AppStream?, CentOS-8 - Base, Error, ダウンロードエラー, repo 'AppStream?' のメタデータのダウンロードに失敗しました

プロセス(pid)事の状況確認

pidstat のインストール

  1. Ubuntu
    sudo apt install sysstat


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS