| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

Ubuntu

提供: MyMemoWiki
2023年3月9日 (木) 16:19時点におけるPiroto (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

| KVM | Linux | Docker | Multipass | MicroK8s | Mac | MySQL |

目次

Ubuntu

Ubuntu blogs

管理


バージョンを確認

$ cat /etc/os-release

Ubuntu サービスの管理

Linux プロセスの作成、監視、強制終了 top コマンド

仮想化

KVM


VirtualBox


インストール

Multipass


QEMU
  • Ubuntuの標準バックエンドは、QEMU

KVM

UbuntuでMultipass(KVM)のブリッジネットワーク環境を構築
仮想マシンマネージャインストール
$ sudo apt-get install virt-manager

コンテナ

MicroK8s


Docker


名前解決

hostnameを変更する


/etc/hostname を編集する

mDNS(avahi-daemon)


ubuntu@nfs-client:~$ sudo apt       install -y avahi-daemon
ubuntu@nfs-client:~$ sudo systemctl start      avahi-daemon
ubuntu@nfs-client:~$ sudo systemctl enable     avahi-daemon
ubuntu@nfs-client:~$  ping bombay.local
PING bombay.local (192.168.0.47) 56(84) bytes of data.
64 bytes from 192.168.0.47 (192.168.0.47): icmp_seq=1 ttl=64 time=2.31 ms

SSH


sshd をインストールしてssh接続を外部から行う


$ sudo apt-get install ssh
$ sudo apt-get install openssh-server
rootパスワードログインを許可

rsyncによるバックアップ先としたい

  • /etc/ssh/sshd_config
PermitRootLogin yes
PasswordAuthentication yes
  • sshdリスタート
systemctl restart sshd

SSHポートフォワーディング


  • ssh -L {localhostからアクセスするポート}:{踏み台経由でアクセスしたいサーバーアドレス} {踏み台となるサーバー}
$ ssh -L 10443:192.168.64.2:10443 hirotoyagi@delhi.local

基本

直前のコマンドをsudoで再実行


$ !!

ユーザーを作成


$ sudo useradd -m piroto
$ sudo passwd piroto
$ sudo usermod -G sudo piroto

sudoグループにユーザーを追加


# usermod -G sudo piroto

コンソールの青が見にくい対応

bashrc に追記

ls
LS_COLORS=$LS_COLORS:'di=0;36:ow=0;36' ; export LS_COLORS
プロンプト
export PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;36m\]\w\[\033[00m\]\$"

Ubuntu prompt color.png

フォルダ名を英語に変更


$ LANG=C xdg-user-dirs-gtk-update

Ubuntu change dir names.png

ランレベルの変更


  • cuiで起動させる
hirotoyagi@bengaluru:~$ sudo systemctl get-default
graphical.target
hirotoyagi@bengaluru:~$ sudo systemctl set-default multi-user.target
Created symlink /etc/systemd/system/default.target → /lib/systemd/system/multi-user.target.

ファイアウォール(firewall ufw)


$ sudo ufw status
状態: アクティブ
$ sudo ufw allow 80
ルールを追加しました
ルールを追加しました (v6)
$ sudo ufw allow 8080
ルールを追加しました
ルールを追加しました (v6)
piroto@jinmu:~/Downloads$ sudo ufw status
状態: アクティブ

To                         Action      From
--                         ------      ----
80                         ALLOW       Anywhere                  
8080                       ALLOW       Anywhere                  
80 (v6)                    ALLOW       Anywhere (v6)             
8080 (v6)                  ALLOW       Anywhere (v6)       
ファイアウォール無効化

$ sudo ufw disable
ファイアウォールを無効にし、システム起動時にも無効にします

ネットワーク


ネットワークツールのインストール

iproute2

$ sudo apt install iproute2

静的IPアドレス(NetworkManager)


Docker except ip router.png

$ ls /etc/netplan
99-netcfg.yaml  bak
$ sudo vi /etc/netplan/99-netcfg.yaml 
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    enp1s0f1:
      dhcp4: no
      addresses: [192.168.0.23/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [192.168.0.1, 8.8.8.8, 8.8.4.4]
$ sudo netplan apply

ネットワークブリッジを作成

HOST側作業
  • ネットワークを確認
piroto@puli:~$ nmcli con show
NAME        UUID                                  TYPE      DEVICE 
有線接続 1  c2913b62-1b5f-391e-9e02-4bd3e84741e6  ethernet  enp3s0 
virbr0      2f6e833d-797b-4c2d-b70d-8f266af9065b  bridge    virbr0 
  • ブリッジbr0を作成
piroto@puli:~$ sudo nmcli conn add type bridge ifname br0
接続 'bridge-br0' (647b382e-c101-45a8-a635-e047bbc8ba94) が正常に追加されました。
  • ブリッジとアダプターを接続
piroto@puli:~$ sudo nmcli con add type bridge-slave ifname enp3s0 master br0
接続 'bridge-slave-enp3s0' (75daa782-ffc6-4089-ac20-877747340856) が正常に追加されました。
  • ブリッジの有効化
piroto@puli:~$ sudo nmcli con up bridge-slave-enp3s0
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/9)
ゲスト側作業
  • ゲストOS でログイン、ブリッジアダプターを特定
ubuntu@puli-sub1:/etc/netplan$ ip link | grep DOWN
3: ens7: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
  • rootで、以下のコマンド(ens7の部分は適切なネットワークID)を実行
ubuntu@puli-sub1:~# cat > /etc/netplan/60-bridge.yaml" <<EOF
network:
  ethernets:
    ens7:                    # this is the interface name from above
      dhcp4: true
      dhcp4-overrides:       # this is needed so the default gateway
        route-metric: 200    # remains with the first interface
  version: 2
EOF
  • ブリッジネットワークを有効化
ubuntu@puli-sub1:~$ sudo netplan apply
ubuntu@puli-sub1:~$ sudo ip address show dev ens7 up 

シェル


bashに変更


$ chsh -s /bin/bash

ターミナルディレクトリ名色の変更


LS_COLORS=$LS_COLORS:'di=0;36:ow=0;36' ; export LS_COLORS

GUI

ショートカットキー


画面設定


リモートデスクトップサーバーの導入


$ sudo apt install -y xrdp
  • 接続ユーザーでログインし、スクリプト実行(1)
cat <<EOF > ~/.xsessionrc
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
EOF
  • 接続ユーザーでログインし、スクリプト実行(2)
sudo sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini
  • 接続ユーザーでログインし、スクリプト実行(3)
cat <<EOF | \
sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla
[Netowrkmanager]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device
ResultAny=no
ResultInactive=no
ResultActive=yes
EOF
  • 接続ユーザーでログインし、スクリプト実行(4)
sudo systemctl restart xrdp
sudo systemctl restart polkit
xrdpでリモートデスクトップしたときの「カラープロファイルを作成するには認証が必要です」を消す

Ubuntu rdp color profile.png

$ sudo vi /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf
  • subject.isInGroup(“**”))の**にはxRDP からログインするユーザに割り当てているグループから適当なものを設定するようです。
polkit.addRule(function(action, subject) {
   if ((action.id == "org.freedesktop.color-manager.create-device" ||
        action.id == "org.freedesktop.color-manager.create-profile" ||
        action.id == "org.freedesktop.color-manager.delete-device" ||
        action.id == "org.freedesktop.color-manager.delete-profile" ||
        action.id == "org.freedesktop.color-manager.modify-device" ||
        action.id == "org.freedesktop.color-manager.modify-profile") &&
       subject.isInGroup("**")) {
      return polkit.Result.YES;
   }
});

Tweaksのインストール


$ sudo apt-get install gnome-tweaks

トラックパッドジェスチャ

sudo gpasswd -a $USER input
sudo apt-get install xdotool wmctrl libinput-tools
git clone http://github.com/bulletmark/libinput-gestures
cd libinput-gestures
sudo ./libinput-gestures-setup install
libinput-gestures-setup start
gesture swipe up 3      xdotool key super
gesture swipe down 3    xdotool key super
gesture swipe left 3    xdotool key ctrl+alt+Up
gesture swipe right 3   xdotool key ctrl+alt+Down
libinput-gestures-setup autostart
  • 設定変更後
libinput-gestures-setup restart

CapsLockキーをControlキーに変える

$ sudo vi /etc/default/keyboard
  • 以下を追記し、再起動
XKBOPTIONS="ctrl:nocaps"

パッケージ管理

apt-get


apt-get の使い方

nginx

$ sudo apt install nginx
$ sudo systemctl start nginx

Mac


fnキーをデフォルトで押した状態にする

  • 試しに実行
    • 0:無効「fn」キーを無効
    • 1:fkeyslast 「fn」+「F8」を押すと、F8のように動作。
    • 2:fkeysfirst 「F8」キーを押すと、F8のように動作します。 「fn」+「F8」を押すと、特別なキーとして機能します(再生/一時停止)
sudo bash -c "echo 2 > /sys/module/hid_apple/parameters/fnmode"
  • OKなら、以下を実行しリブート
echo options hid_apple fnmode=2 | sudo tee -a /etc/modprobe.d/hid_apple.conf
sudo update-initramfs -u -k all
メルカリで古いMacを購入してUbuntuをインストールしてMac的なトラックバッドジェスチャーを設定する

Windows


Wine


Tips

設定

キーコードの確認

$ xev | grep keycode

NFS構成

rootパスワード

ハードディスクの追加

アプリケーションの追加

日本語入力時にF10押下で半角英数変換切り替える

Eclipse のコード補完をCtrl+Space に変更する

ランチャーにシェルスクリプトを登録する

サスペンド後 Wi-Fi が無効のままの対応

Ubuntu 静的IPアドレス指定

Linux ターミナルの色を変更する

rpm形式をdeb形式に変換

インストール
$sudo apt-get install alien dpkg-dev debhelper build-essential
変換(例 flash-plugin-11.2.202.341-release.x86_64.rpm)
$sudo alien flash-plugin-11.2.202.341-release.x86_64.rpm 

Flash Playerのインストール

13.1
14.4

.bash_profileを使用する

  • .bash_profileは読み込まれない。.profile は読み込まれる。

テキストモードで起動する


編集
$ sudo vi /etc/default/grub
#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX_DEFAULT="text"
反映
$ sudo update-grub

<blockquote>ctrl + F1 ~ F6 (CUI)、ctrl + F7 (GUI)</blockquote>

ディレクトリ名フォント色の変更


VNC


  • サーバーエディション、クラウドエディションではGUIのインストール
$ sudo apt-get install --no-install-recommends ubuntu-desktop
  • すべてのエディションで必要
$ sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
  • vnc4server
$ sudo apt-get install vnc4server
  • Backup
$ sudo cp /usr/bin/vncserver /usr/bin/vncserver.bkp
  • 編集
$ sudo nano /usr/bin/vncserver
  • 検索
"# exec /etc/X11/xinit/xinitrc\n\n".
  • 修正
"# exec /etc/X11/xinit/xinitrc\n\n".
      "gnome-panel &\n".
      "gnome-settings-daemon &\n".
      "metacity &\n".
      "nautilus &\n".
      "gnome-terminal &\n".
  • 起動
$ vncserver

USBメモリ

Java

Oracle JDK のインストール

JDK 6
sudo apt-get update
sudo apt-get install sun-java6-jdk
JDK 7
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer

gedit

正規表現プラグイン

Eclipse

Web開発

Ubuntu13.10でEclipse(XMind含む)のメニューが反応しない

メニューをEclipse(XMind)自体に表示させることで回避
  • シェルスクリプトから実行する例
#! /bin/bash
export UBUNTU_MENUPROXY=0
$(dirname $0)/eclipse