User:OnionBulb/UbuntuBook
外观
這是OnionBulb的子頁面,內容是Ubuntu使用手冊。
掛載磁碟
[编辑]#
# 手動建立掛載用的資料夾
#
sudo mkdir /home/xxx0123/mount0123
#
# 掛載 NTFS
# 假設來源 /dev/sdx9
#
sudo mount -t ntfs /dev/sdx9 /home/xxx0123/mount0123
#
卸載
[编辑]#
# 卸載
#
sudo umount /home/xxx0123/mount0123
#
程序忙碌
[编辑]#
# 卸載失敗狀況
# 找出有哪些處理程序正在使用該資料夾
#
sudo fuser -i -k -m -v /home/xxx0123/mount0123
#
保護狀態
[编辑]
視窗系統處在休眠模式,或是快速啟動選項已開啟,最近關機前的系統參數資料以及硬體參數都儲存在視窗系統快取內,也就是休眠系統檔(C:\hiberfil.sys),使視窗系統分割區處在保護狀態而禁止掛載,或是只能唯讀。
以下模式令視窗系統分割區處在保護狀態而發生掛載問題:
- 快速啟動(英語:fast startup)自Win8才有的功能,關機直到下次開機會比較快,開機啟動後讀取休眠系統檔恢復最近關機前的系統狀態(不包含應用程式),再初始化驅動程式以及使用者設定,但是重新開機無法進入快速啟動。
- 休眠模式(英語:hibernation)包含關機前應用程式的狀態都儲存在休眠系統檔。
#
# Metadata kept in Windows cache, refused to mount.
#
# 視窗系統的快取,存有系統參數資料檔,拒絕掛載。
#
系統更新
[编辑]【指令】:
#
# 以管理員身分執行
#
sudo su
#
# 取得更新
#
apt-get update
#
# 更新套件包括相依性套件
#
apt-get dist-upgrade
#
#
# 更新套件不含相依性套件
#
apt upgrade
#
系統核心
[编辑]移除核心
[编辑]【指令】:
#
# 移除舊核心
#
sudo apt autoremove --purge
移除特定核心
[编辑]【指令】:
#
# 顯示已安裝的核心
#
dpkg --list | grep linux-image
#
# 移除核心
#
sudo apt-get purge linux-image-x.x.x-x-generic
【範例】:
sudo apt-get purge linux-image-3.8.0-19-generic
工具軟體
[编辑]Avidemux
[编辑]【軟體】﹕Avidemux
DOSBox
[编辑]【軟體】﹕DOSBox
【遊戲】﹕大富翁3
從steam取得遊戲,置於任一資料夾例如家目錄。
#
# 大富翁richman123資料夾的steam路徑
#
# C:\Program Files (x86)\Steam\steamapps\common
#
# 安裝dosbox
#
sudo apt install dosbox
#
# 移除dosbox
#
sudo apt remove dosbox
#
# dosbox設定檔,啟動dosbox也可以自動產生設定檔
#
# ~/.dosbox/dosbox-0.74-3.conf
#
# 大富翁的dosbox設定檔
#
# richman123/dosbox.conf
#
# 注意[autoexec]批次指令,/three三代資料夾
#
# mount c ./three -freesize 1024
#
# 自己寫sh執行檔與遊戲資料夾置於相同資料夾
#
#!/bin/bash
cd "./richman123"
dosbox -conf "./dosbox.conf"
#
# 安裝SDL2函式庫
# 注意:2025年1月SDL3可能不穩定或是有執行問題
#
# sudo apt install libsdl2-dev
#
// 檔案:vscode tasks.json
//
// GMP函式庫Linux編譯參數
"-lgmp",
// SDL2函式庫
"-lSDL2",
"-o",
#
自行編寫執行檔主函式如下所示…
#include "ProjTest.h"
//
int main(int argc, char **argv)
{
//
// SDL2 lib video initial
SDL_Init(SDL_INIT_VIDEO);
//
// int ret = 0;
// ret = system("cd ./GameRichman123 && /usr/bin/dosbox -conf \"dosbox.conf\"");
// if (ret != 0)
// {
// cout << "Warning: return code " << WEXITSTATUS(ret) << ", system() failed." << endl;
// }
//
int retexe = 0, retcd = 0;
//
// Directory of game Richman123
char *dir = (char *)"./GameRichman123";
//
// To load config file
// Bash command "dosbox -conf dosbox.conf"
char *av[] = {(char *)"dosbox", (char *)"-conf", (char *)"\"dosbox.conf\"", NULL};
//
// Changing directory to game folder
retcd = chdir(dir);
if (retcd != 0)
{
char dirnow[PATH_MAX];
getcwd(dirnow, PATH_MAX);
string t = "Warning...", s = "Current directory \"";
s += dirnow, s += "\"\nWarning: changing directory \"", s += dir, s += "\" failed.";
cout << s << endl;
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_WARNING, t.c_str(), s.c_str(), NULL);
//
// Quit SDL2 lib
SDL_Quit();
cout << endl;
return EXIT_SUCCESS;
}
//
// Running dosbox
retexe = execv("/usr/bin/dosbox", av);
if (retexe != 0)
{
cout << "Warning: return " << retexe << ", execve() failed." << endl;
}
//
cout << endl;
return EXIT_SUCCESS;
}
標頭檔ProjTest如下所示…
// #pragma once
#ifndef _PROJTEST_H_
#define _PROJTEST_H_
//
#include <iostream>
#include <string>
#include <unistd.h>
#include <limits.h>
//
#include "SDL2/SDL.h"
// #include "./BigNumber/BigNumber.h"
// #include "gmpxx.h"
//
using std::cin;
using std::cout;
using std::endl;
using std::string;
//
#endif
gedit
[编辑]【軟體】﹕gedit
【指令】:
#
# 以管理員身分執行
#
sudo su
#
# 取得更新
#
apt-get update
#
# 安裝 gedit
#
apt install gedit
OBS Studio
[编辑]【軟體】﹕OBS Studio
【指令】﹕
#
# 以管理員身分執行
#
sudo su
#
# 增加未信任的PPA到系統
# OBS的PPA(Personal Package Archive)
#
add-apt-repository ppa:obsproject/obs-studio
#
# 檢查可用軟體更新的最新資訊但不更新
#
apt update
#
# 安裝軟體
#
apt install ffmpeg obs-studio
OpenShot
[编辑]【軟體】﹕OpenShot
Pinta
[编辑]【軟體】﹕Pinta
STEAM
[编辑]【說明】﹕無法觀看遊戲直播的問題。
xdg-open steam://unlockh264
sView
[编辑]【軟體】﹕sView
【指令】﹕
#
# 以管理員身分執行
#
sudo su
#
# 增加未信任的PPA到系統
# sView的PPA(Personal Package Archive)
#
add-apt-repository ppa:sview/stable
#
# 檢查可用軟體更新的最新資訊但不更新
#
apt update
#
# 更新軟體
# 或是取得資訊直接更新
# sudo apt update && sudo apt upgrade
#
apt upgrade
VirtualBox
[编辑]【軟體】﹕VirtualBox
VLC
[编辑]【軟體】﹕VLC多媒體播放器
VScode
[编辑]【項目】:GNU多重精度運算函式庫
# 官方網站下載
# 解壓縮
# 進入資料夾
#
~$ ./configure
~$ make
#
# 檢查
~$ make check
#
# 安裝
~$ make install
#
# 如果顯示錯誤 可能需要其他必要套件
# 例如 GNU m4
// 檔案:tasks.json
//
"-g",
//
// 原始碼檔案
"${file}",
//
// 其他自訂函式庫資料夾
"${cwd}/*/*",
//
// GMP函式庫Linux編譯參數
"-lgmp",
"-o",
【項目】:簡單直接媒體層函式庫
#
# 安裝SDL2函式庫
# 注意:2025年1月SDL3可能不穩定或是有執行問題
#
# sudo apt install libsdl2-dev
#
// 檔案:vscode tasks.json
//
// GMP函式庫Linux編譯參數
"-lgmp",
// SDL2函式庫
"-lSDL2",
"-o",
#
GRUB2
[编辑]【版本】:2.00
視窗工具
[编辑]
Grub Customizer﹕https://launchpad.net/grub-customizer
管理指令
[编辑]#
# 以管理員身分執行
#
sudo su
#
# 更新 GRUB2
#
sudo update-grub
字型色彩
[编辑]【指令】:
#
# 以管理員身分編輯文字檔
#
# sudo su
# gedit /etc/grub.d/05_debian_theme
#
gksu gedit /etc/grub.d/05_debian_theme
#
# 更新 GRUB2
#
# update-grub
#
sudo update-grub
【範例】:
if [ -z "${2}" ] && [ -z "${3}" ]; then
##################################################
#
# User's settings: if [ -z "${2}" ] && [ -z "${3}" ]; then
#
##################################################
#
# echo " true"
#
# 文字色彩:white
# 背景色彩:black
#
echo " set color_normal=white/black"
#
# 光棒文字:yellow
# 光棒色彩:red
#
echo " set color_highlight=yellow/red"
fi
背景圖片
[编辑]【指令】:
#
# 以管理員身分複製圖檔
# 圖檔名稱自訂,類型可以是 PNG/JPG/TGA
#
# sudo su
# cp ABCDEFG.png /boot/grub/
#
gksu cp ABCDEFG.png /boot/grub/
#
# 更新 GRUB2
#
# update-grub
#
sudo update-grub
#
# 以管理員身分移除圖檔
#
# sudo su
# rm /boot/grub/ABCDEFG.png
#
# gksu rm /boot/grub/ABCDEFG.png
#
# 更新 GRUB2
#
# update-grub
#
# sudo update-grub
解析度
[编辑]【查詢】:
#
# GRUB2 指令:查詢可用的解析度
#
grub> vbeinfo
【指令】:
#
# 以管理員身分編輯文字檔
#
# sudo su
# gedit /etc/default/grub
#
gksu gedit /etc/default/grub
#
# 更新 GRUB2
#
# update-grub
#
sudo update-grub
【範例】:
#
# GRUB_GFXMODE=640x480
#
GRUB_GFXMODE=1280x800
倒數計時
[编辑]【指令】:
#
# 以管理員身分編輯文字檔
#
# sudo su
# gedit /etc/default/grub
#
gksu gedit /etc/default/grub
#
# 更新 GRUB2
#
# update-grub
#
sudo update-grub
【範例】:
#
# GRUB_TIMEOUT=10
#
GRUB_TIMEOUT=20
選單標題
[编辑]【指令】:
#
# 以管理員身分編輯文字檔
#
# sudo su
# gedit /etc/grub.d/30_os-prober
#
gksu gedit /etc/grub.d/30_os-prober
#
# 更新 GRUB2
#
# update-grub
#
sudo update-grub
【範例】:
##################################################
#
# User's settings: if [ "${LONGNAME}" = "Windows 7 (loader)" ] ; then
#
##################################################
#
# if [ -z "${LONGNAME}" ] ; then
# LONGNAME="${LABEL}"
# fi
if [ "${LONGNAME}" = "Windows 7 (loader)" ] ; then
LONGNAME="My Windows OS"
fi
##################################################
#
# User's settings: onstr="$(gettext_printf "(on %s)" "${DEVICE}")"
#
##################################################
#
# onstr="$(gettext_printf "(on %s)" "${DEVICE}")"
onstr="$(gettext_printf "of %s" "HDD")"
登入畫面
[编辑]背景圖片
[编辑]#
# 下載 GDM background changer script 工具包
#
wget https://github.com/PRATAP-KUMAR/ubuntu-gdm-set-background/archive/main.tar.gz
#
# 解壓縮再進入資料夾
#
cd ~/main/ubuntu-gdm-set-background-main
#
# 換圖指令
#
sudo ./ubuntu-gdm-set-background --image ~/欲使用的背景圖片.jpg
BUG
[编辑]NTFS
[编辑]在Ubuntu GNOME環境下使用檔案管理員直接掛載NTFS可能造成掛載失敗的狀況,停用ntfs3驅動來解決。
【核心版本】:6.8
#
# 把ntfs3驅動列入黑名單 再重新開機
#
echo 'blacklist ntfs3' | sudo tee /etc/modprobe.d/disable-ntfs3.conf
#