mpd で音楽再生していると,やはり debian だとリアルタイムカーネル, ubuntu だと linux-lowlatency カーネル入れた方が音が良くなるんすよね.
debian 11 の場合
$ sudo apt update
$ sudo apt install linux-image-rt-amd64
ちなみに ubuntu 20.04 LTS の場合
$ sudo apt update
$ sudo apt install linux-lowlatency
バイクとかUbuntuとか
mpd で音楽再生していると,やはり debian だとリアルタイムカーネル, ubuntu だと linux-lowlatency カーネル入れた方が音が良くなるんすよね.
debian 11 の場合
$ sudo apt update
$ sudo apt install linux-image-rt-amd64
ちなみに ubuntu 20.04 LTS の場合
$ sudo apt update
$ sudo apt install linux-lowlatency
本当にメモ程度.
まずインストール.https://www.dropbox.com/ja/install-linux のコマンドラインを使った Dropbox のヘッドレス インストール を参照.
$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
新規作成した.dropbox-dist
フォルダから Dropbox デーモンを実行.
$ ~/.dropbox-dist/dropboxd
以下引用.
サーバーで初めて Dropbox を実行する場合、使用中のブラウザでリンクをコピーして貼り付けて新規アカウントを作成するか、既存のアカウントとサーバーを連携させるように指示が表示されます。その後、Dropbox フォルダがホーム ディレクトリに作成されます。コマンド ラインから Dropbox を管理するには Python スクリプト をダウンロードしてください。アクセスしやすくするには、PATH のどこかでスクリプトに symlink します。
Dropbox をインストールしてアカウントを最大限に活用
https://www.dropbox.com/ja/install-linux
Python スクリプトをダウンロードする.Dropbox を Linux (CUI環境)で利用する を参照.
$ mkdir ~/bin
$ cd ~/bin
$ wget -O dropbox.py "http://www.dropbox.com/download?dl=packages/dropbox.py"
$ chmod a+x dropbox.py
適時動作確認.スクリプトコマンドは以下.
$ dropbox.py
Dropbox command-line interface
commands:
Note: use dropbox help <command> to view usage for a specific command.
autostart automatically start Dropbox at login
exclude ignores/excludes a directory from syncing
filestatus get current sync status of one or more files
help provide help
lansync enables or disables LAN sync
ls list directory contents with current sync status
proxy set proxy settings for Dropbox
puburl get public url of a file in your Dropbox's public folder
running return whether Dropbox is running
sharelink get a shared link for a file in your Dropbox
start start dropboxd
status get current status of the dropboxd
stop stop dropboxd
throttle set bandwidth limits for Dropbox
update download latest version of Dropbox
version print version information for Dropbox
同期が終わっていたら,下記のコマンドで「最新の状態」と表示される.
$ dropbox.py status
最新の状態
このままだと OS を再起動した場合,Dropbox は起動しない.デスクトップでログインすると,自動起動するようにデフォルトではなっている.それでも構わないが,Debian をサーバとして使う際は,OS 起動時に Dropbox も起動して欲しい.Dropbox を ubuntu にインストールして自動で同期する設定 及び [CentOS 7] systemctl で動かしている Dropbox が気がつけば落ちてしまう現象を解消した方法 を参照.
$ sudo vi /lib/systemd/system/dropbox.service
[Unit]
Description=Dropbox Client Service
[Service]
User=USER
Type=simple
ExecStart=python3 /home/USER/.dropbox-dist/dropboxd
Restart=always
[Install]
WantedBy=multi-user.target
USER はユーザー名に置き換えて下さい.記述が終わったら読み込み.
$ sudo systemctl daemon-reload
$ sudo systemctl enable dropbox
$ sudo systemctl start dropbox
色々書きようはあるのでしょうけど,とりあえずこれで動いている.
ユーザー追加が色々あって,メモ.
まず,samba 自体をインストール.
$ sudo apt install samba
samba へのユーザー追加.debian のユーザー名を hoge とする.
$ sudo pdbedit -a hoge
new password:
retype new password:
あとは /etc/samba/smb.conf を適当に編集して(ヲイ ,samba を再起動.
$ sudo systemctl restart smbd
Linux の起動時のオーディオデバイスの検出順によってはカード番号が mpd.conf に記載したカード番号とずれて,音声が出力されないことがある.その対策.
例えば,aplay -l を実行したとする.
$ aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: PCH [HDA Intel PCH], デバイス 0: ALCS1200A Analog [ALCS1200A Analog]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 0: PCH [HDA Intel PCH], デバイス 1: ALCS1200A Digital [ALCS1200A Digital]
サブデバイス: 0/1
サブデバイス #0: subdevice #0
カード 2: HDMI [HDA ATI HDMI], デバイス 3: HDMI 0 [HDMI 0]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 2: HDMI [HDA ATI HDMI], デバイス 7: HDMI 1 [HDMI 1]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 3: V3 [Pebble V3], デバイス 0: USB Audio [USB Audio]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
マザーボードの光 SPDIF 出力ポートが カード 0 , デバイス 1 となっている.ここから出力したい.mpd.conf の audio_output には
audio_output {
type "alsa"
name "My ALSA Device"
device "hw:0,1" # optional
(中略)
}
と記載するところ,カード名称がこの場合 “PCH” であることから,
audio_output {
type "alsa"
name "My ALSA Device"
device "hw:PCH,1" # optional
(中略)
}
と記載する.
これで,カードの番号が変わったとしても影響を受けない.
Debian 11 PC で使っている Intel Pentium G4600 の内蔵グラフィックが遅いので,余っている NVIDIA GeForce GT 1030 を使う.こちらの記事を参考にしました.なお,Music Player Daemon (MPD) を使うためにリアルタイムカーネルをインストールすると,ブート時にこの NVIDIA のドライバー絡みでエラーを吐くようになるので注意.
参考にしたのは以下の記事.
https://linuxhint.com/install-nvidia-drivers-debian-11/
まずは apt-line に contrib と non-free を追加
$ sudo apt-add-repository contrib
$ sudo apt-add-repository non-free
$ sudo apt update
これから debian PC をシャットダウンして,NVIDIA GeForce GT 1030 を挿した.
さて,起動するが,画面が映らない.他の PC から ssh で debian PC (foober) にログインする.
$ ssh hoge@foober
確認.
$ lspci | egrep 'VGA|NVIDIA'
01:00.0 VGA compatible controller: NVIDIA Corporation GP108 [GeForce GT 1030] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GP108 High Definition Audio Controller (rev a1)
NVIDIA のドライバをインストールする.
$ sudo apt install nvidia-driver
途中,nouveau とコンフリクトするから再起動しろとダイアログボックスが表示されるので,OKする.インストール終わったら,再起動.
$ sudo reboot
確認.
$ lsmod | grep nvidia
nvidia_drm 61440 3
drm_kms_helper 278528 1 nvidia_drm
nvidia_modeset 1232896 6 nvidia_drm
nvidia 34205696 198 nvidia_modeset
drm 618496 6 drm_kms_helper,nvidia_drm
多分英語配列キーボードを使っているからかもしれない.しかも HHKB ユーザーだし.https://wiki.debian.org/ja/I18n/Fcitx5 参照.
まず ibus を削除.
# apt remove ibus
fcitx5 と fcitx5-mozc と gnome-shell-extension-kimpanel をインストールし,uim をアンインストール.
# apt install fcitx5 fcitx5-mozc gnome-shell-extension-kimpanel
# apt remove uim uim-mozc
im-config を実行.Fcitx5 を選択.
$ im-config
一旦再起動.
「アクティビティ」から「検索ワードを入力」で fcitx5-configtool を実行.あるいは「アクティビティ」「アプリケーションを表示」から「Fcitx5 設定」を実行.
「アクティビティ」「アプリケーションを表示」から「拡張機能」を実行.”Input Method Panel” を ON にする.
ユーザー名を hoge とします.
まずこのエントリーを参考に設定しています.
$ su -
パスワード:
# adduser hoge sudo
ユーザ `hoge' をグループ `sudo' に追加しています...
ユーザ hoge をグループ sudo に追加
完了。
試してみる.
$ sudo whoami
hoge は sudoers ファイル内にありません。この事象は記録・報告されます。
あれ?
ではこちらの記事を参考に.
# visudo
# 最終行に以下を追記
hoge ALL=(ALL:ALL) ALL
これで OK .
usermodコマンドを使ったほうが良かったのだろうか?
# usermod -G sudo hoge
# cat /etc/group | grep hoge
Ubuntu 20.04 PC にて動画を保存している 3TB の HDD が既に 75% 使用されていることから,余っている 3TB の HDD を増設することにする.GUI 上で行う方法も見つけた (HDDをフォーマットする – Ubuntu 20.04編) が,後で Debian PC にも HDD を増設することから,コマンドラインで作業する.
こちらの LinuxにHDDを増設・マウントする という記事より,既にハード的に増設された HDD がどのように認識されているかを確認します.
$ sudo lshw -C
*-namespace
詳細: NVMe namespace
物理ID: 1
論理名: /dev/nvme0n1
サイズ: 931GiB (1TB)
性能: gpt-1.00 partitioned partitioned:gpt
設定: guid=cb12aa7e-d925-4745-b134-d4cea00c8527 logicalsectorsize=512 sectorsize=512
*-disk
詳細: ATA Disk
製品: WDC WD30EFRX-68E
ベンダー: Western Digital
物理ID: 0.0.0
バス情報: scsi@2:0.0.0
論理名: /dev/sda
バージョン: 0A80
シリアル: WD-WMC4N2519488
サイズ: 2794GiB (3TB)
性能: gpt-1.00 partitioned partitioned:gpt
設定: ansiversion=5 guid=9c1c077e-2921-4972-869d-6ab753277752 logicalsectorsize=512 sectorsize=4096
*-disk
詳細: ATA Disk
製品: WDC WD30EZRZ-00Z
ベンダー: Western Digital
物理ID: 0.0.0
バス情報: scsi@4:0.0.0
論理名: /dev/sdb
バージョン: 0A80
シリアル: WD-WCC4N7XXPN25
サイズ: 2794GiB (3TB)
性能: gpt-1.00 partitioned partitioned:gpt
設定: ansiversion=5 guid=53238609-af2a-204a-82f3-c49370923797 logicalsectorsize=512 sectorsize=4096
論理名: /dev/sdb ですね.
fdisk だと出力が長いので,該当分だけ書きます.
$ sudo fdisk -l
~省略~
ディスク /dev/sdb: 2.75 TiB, 3000592982016 バイト, 5860533168 セクタ
Disk model: WDC WD30EZRZ-00Z
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 53238609-AF2A-204A-82F3-C49370923797
デバイス 開始位置 最後から セクタ サイズ タイプ
/dev/sdb1 2048 5860533134 5860531087 2.7T Linux ファイルシステム
~省略~
lsblk だとどうでしょうか.これも長いので,該当分だけ書きます.
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
~省略~
sdb 8:16 0 2.7T 0 disk
└─sdb1 8:17 0 2.7T 0 part /media/(username)/e2c28fef-fb32-487d-959b-02cdb3963221
~省略~
では, root になって fdisk コマンドでパーティション削除,作成をします.
$ sudo su
# fdisk /dev/sdb
fdisk (util-linux 2.34) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。
コマンド (m でヘルプ): d
パーティション 1 を選択
パーティション 1 を削除しました。
コマンド (m でヘルプ): p
ディスク /dev/sdb: 2.75 TiB, 3000592982016 バイト, 5860533168 セクタ
Disk model: WDC WD30EZRZ-00Z
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 53238609-AF2A-204A-82F3-C49370923797
コマンド (m でヘルプ): i
パーティションは何も設定されていません!
コマンド (m でヘルプ): n
パーティション番号 (1-128, 既定値 1): 1
最初のセクタ (2048-5860533134, 既定値 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-5860533134, 既定値 5860533134):
新しいパーティション 1 をタイプ Linux filesystem、サイズ 2.7 TiB で作成しました。
パーティション #1 には ext4 署名が書き込まれています。
署名を削除しますか? [Y]es/[N]o: y
署名は write (書き込み)コマンドを実行すると消えてしまいます。
コマンド (m でヘルプ): w
パーティション情報が変更されました。
ディスクを同期しています。
パーティションを確認します.
# fdisk -l /dev/sdb
ディスク /dev/sdb: 2.75 TiB, 3000592982016 バイト, 5860533168 セクタ
Disk model: WDC WD30EZRZ-00Z
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 53238609-AF2A-204A-82F3-C49370923797
デバイス 開始位置 最後から セクタ サイズ タイプ
/dev/sdb1 2048 5860533134 5860531087 2.7T Linux ファイルシステム
ファイルシステム作成
# mkfs.ext4 /dev/sdb1
mke2fs 1.45.5 (07-Jan-2020)
/dev/sdb1 contains a ext4 file system
last mounted on /srv on Sun Apr 3 22:39:33 2022
Proceed anyway? (y,N) y
/dev/sdb1 is mounted; will not make a filesystem here!
あれw 実は以前に ext4 でフォーマットした HDD だったので,こうなったww
HDD をマウントしてみます.
# mkdir /mnt/hdd
# mount /dev/sdb1 /mnt/hdd
さて,この HDD を起動時に自動マウントするよう, /etc/fstab に書いておきます.HDD の UUID を確認します.
# blkid /dev/sdb1
/dev/sdb1: UUID="e2c28fef-fb32-487d-959b-02cdb3963221" TYPE="ext4" PARTUUID="7317d376-9a0b-f247-b5ce-f164b6ed67d1"
私は vi / Vim ユーザーなので, vi で /etc/fstab を編集します.
# vi /etc/fstab
# /mnt/hdd was on /dev/sdb1
UUID=e2c28fef-fb32-487d-959b-02cdb3963221 /mnt/hdd ext4 defaults 0 2
面倒なので,再起動します.無事にマウントされていることを確認しましょう.