推荐在windows下使用Rufus工具来制作启动盘
使用iso模式做成启动盘后能直接存储文件,传统bios推荐用这种方式,分区方案选择MBR
使用dd模式做成启动盘后,需要自己划分分区才能存储文件,uefi推荐用这种方式,分区方案选择GPT
linux下可以直接使用dd命令,使用该命令做成启动盘后U盘就不能用来存储文件了,具体命令格式可以看wiki
https://wiki.manjaro.org/index.php?title=Burn_an_ISO_File#Using_the_Terminal
磁盘分配/ - 15-20 GB
/ 分区或叫根分区是最重要而且必需的,需要最先挂载,因为包括 /usr 目录,根据安装的软件数量,会产生非常明显的增长。15-20 GB 对于大多数用户来说是一个比较合适的取值。如果你打算在这里放一个交换文件(swap file)的话,需要适当调大取值
/boot - 512 MB
/boot 分区包含内核、ramdisk 镜像以及 bootloader 配置文件和 bootloader stage。它也可以存放内核在执行用户态程序之前所使用的其他数据。/boot 在日常系统运行中并不需要,只在启动和内核升级(包括重建initial ramdisk)的时候用到。
如果使用软RAID0(条带化)系统的话,必须有一个独立的 /boot 分区。
不使用 UEFI 时,/boot 的建议大小时 200 MB,使用 UEFI 时,需要至少 512 MiB 空间。
/var - 8-12 GB
/var 目录存储变量数据例如 spool 目录和文件,管理和登录数据,它通常被用作缓存或者日志记录,因此读写频繁。将它独立出来可以避免由于大量日志写入造成的磁盘空间耗尽等问题。
除了其他数据以外,还包括ABS 树和 pacman 缓存。保留缓存的包提供了包降级的能力,因此非常有用。也正因为这样,/var 的大小会随着时间推移而增长。尤其是 pacman 缓存将会随着新软件的安装、系统的升级而增长。在磁盘空间不足的时候,可以安全的清理这个目录。/var 分配 8-12 GB 对于桌面系统来说是比较合适的取值,具体取值取决于安装的软件数量。
/home - [剩余全部]
将/home目录独立使得/分区可以单独重新划分,但是请注意你可以在 /home 没有独立分区的情况下你仍然可以在不修改 /home 目录内容的情况下重装 Arch —— 删除其他顶级目录,然后执行pacstrap。
不能与使用其他发行版的用户共享同一个home目录,因为不同的发行版可能使用不兼容的软件版本和补丁。可以共享媒体目录,或至少使用 /home 分区下的不同home目录。分区大小跟着存储的内容而定。
swap - 4 GB
以防万一,预留4G
双系统分区下面图片是uefi下win10加manjaro双系统分区方案,我这里有两个硬盘,1T机械运行win10,240G固态运行manjaro
win10系统的硬盘内有个efi的分区,需要指定为/boot/efi分区,注意选择保留不要格式化
黑屏问题 双显卡驱动问题 ctrl+alt+F3进入tty后登录 输入mhwd-tui 选4 Use nonfree graphics,使用闭源驱动 重启 acpi问题vim /etc/default/grub
acpi_osi=! acpi_osi='Windows 2009'
#找到GRUB_CMDLINE_LINUX_DEFAULT在quiet后添加上面内容
#例:GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=! acpi_osi='Windows 2009' resume=UUID=3bae182a-94f7-46fd-898e-06bd4bf798f8"
sudo update-grub
很多硬件厂商的BIOS驱动比如DELL都对Linux不友好,无法顺利加载ACPI模块,而导致无法驱动独立显卡,acpi_osi=’Windows 2009’的意思是告诉ACPI模块,我是‘Windows 7’,别闹情绪了,赶紧工作吧。
如果已经不能进入系统的话就在grub启动项按e进入编辑界面,然后在quiet后面添加上面acpi的内容
cd /etc/modprobe.d
sudo mv r8169_blacklist.conf r8168_blacklist.conf
sudo vim r8168_blacklist.conf
#打开后更改为以下内容
#blacklist r8169
blacklist r8168
Authentication Required
Authentication Required / Configuring networking requires privileges
Authentication Required / Setting RfKill State requires privileges
每次开机后如果有上面提示要求输入密码
sudo vim /etc/polkit-1/rules.d/51-blueman.rules
#添加如下规则
/* Allow users in wheel group to use blueman feature requiring root without authentication */
polkit.addRule(function(action, subject) {
if ((action.id == "org.blueman.network.setup" ||
action.id == "org.blueman.dhcp.client" ||
action.id == "org.blueman.rfkill.setstate" ||
action.id == "org.blueman.pppd.pppconnect") &&
subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
配置源
替换为国内源
sudo pacman-mirrors --country China && sudo pacman -Syyu
#sudo pacman-mirrors --fasttrack && sudo pacman -Syyu
添加archlinuxCN源
sudo nano /etc/pacman.conf
在末尾添加后保存退出
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
Add PGP Keys
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring
更多镜像站
https://github.com/archlinuxcn/mirrorlist-repo
安装yay和base-devel
sudo pacman -S base-devel yay
yay支持彩色
sudo vim /etc/pacman.conf
#将color的注释放开
Color
更新软件
yay -Syu
加快aur软件源码编译速度
sudo vim /etc/makepkg.conf
#设置编译核心数
MAKEFLAGS="-j4"
加快Compressing package速度
sudo vim /etc/makepkg.conf
#PKGEXT='.pkg.tar.xz'
PKGEXT='.pkg.tar'
安装软件
中文字体
sudo pacman -S adobe-source-han-sans-cn-fonts
vim
sudo pacman -S vim
chrome
sudo pacman -S google-chrome
输入法
#sudo pacman -S fcitx-sogoupinyin
sudo pacman -S fcitx-googlepinyin cloudpinyin
sudo pacman -S fcitx-im # 全部安装
sudo pacman -S fcitx-configtool # 图形化配置工具
在~/.pam_environment
内添加如下语句
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
保存后重新登录才能使用输入法
proxychainssudo pacman -S proxychains
#编辑配置文件
sudo vim /etc/proxychains.conf
找到文件最后的socks4 127.0.0.1 9095更改为socks5 127.0.0.1 1080
#使用方法
proxychains yay -S jmeter
git
sudo pacman -S git
git config --global http.proxy "socks5h://127.0.0.1:1080"
# ss的本地端口默认1080
zsh & autojump
sudo pacman -S zsh
sudo pacman -S oh-my-zsh-git
cp /usr/share/oh-my-zsh/zshrc ~/.zshrc #ohmyzsh配置文件
chsh -s /bin/zsh #替换默认shell
sudo pacman -S autojump
在~/.zshrc中添加:
plugins=(git autojump)
vscode
sudo pacman -S visual-studio-code-bin
wps
sudo pacman -S wps-office ttf-wps-fonts
wps-office安装后会导致chrome内字体发虚,需要在chrome内指定字体
uget & aria2sudo pacman -S uget
sudo pacman -S aria2
uget内点击编辑->设置->插件, 在插件匹配顺序内选择aria2
jdk8sudo pacman -S jdk8
sudo archlinux-java set java-8-jdk
kotlin
sudo pacman -S kotlin
jetbrains-tool
yay -S jetbrains-toolbox
#ide
sudo pacman -S intellij-idea-ultimate-edition
#改善字体
sudo pacman -S intellij-idea-ultimate-edition-jre
yay -S datagrip
mysql-workbench
sudo pacman -S mysql-workbench
postman
sudo pacman -S postman-bin
sudo pacman -S android-studio
adb 软链接
# 进入sudo默认PATH:
cd /usr/local/bin/
# 建立软链接:
sudo ln -s /home/gavinandre/android-sdk-linux/platform-tools/adb
android-studio cmake sync 报错
error while loading shared libraries: libtinfo.so.5: cannot open shared
object file: No such file or directory
ninja: build stopped: subcommand failed.
CMake will not be able to correctly generate this project.
报错日志中有上面的错误的话,可以使用如下命令解决
sudo pacman -S ncurses5-compat-libs
android-studio Inotify Watches Limit
sudo bash -c 'echo "fs.inotify.max_user_watches = 524288" >> /etc/sysctl.d/99-inotify-max-watches.conf'
sudo sysctl --system
坚果云
#坚果云主程序
sudo pacman -S nutstore
#坚果云文件夹ui
sudo yay -S nautilus-nutstore
微信
下载后解压到/opt目录
https://github.com/kooritea/electronic-wechat/releases
#创建desktop文件
vim ~/.local/share/applications/electronic-wechat.desktop
#添加如下内容
[Desktop Entry]
Type=Application
Name=Electronic WeChat
Comment=A better WeChat client
Exec= env XDG_CURRENT_DESKTOP=Unity /opt/electronic-wechat-linux-x64/electronic-wechat %f
Icon=/opt/electronic-wechat-linux-x64/icon.png
Categories=Network;InstantMessaging;Application;
Terminal=false
StartupNotify=true
Exec行添加了 env XDG_CURRENT_DESKTOP=Unity 才能在状态栏显示图标,行尾的%f表示只能启动一个实例
安装依赖使图标显示在右上角
sudo pacman -S libappindicator-gtk3
网易云音乐
sudo pacman -S netease-cloud-music
有道词典
sudo pacman -S youdao-dict
alacarte
桌面图标管理软件
sudo pacman -S alacarte
Adbyby
参考这篇
https://blog.csdn.net/lj402159806/article/details/54882211
开机自启设置
#创建desktop文件
vim ~/.local/share/applications/adbyby.desktop
#添加如下内容
[Desktop Entry]
Comment=Adbyby
Terminal=false
Name=Adbyby
#更改为自己的路径
Exec=/home/gavinandre/Adbyby/bin/adbyby
Type=Application
Icon=gnome-panel-launcher
#添加开机自启
cp ~/.local/share/applications/adbyby.desktop ~/.config/autostart
virtualbox
#查看内核版本
uname -r
sudo pacman -S virtualbox
选择与当前内核匹配的版本, 比如uname 输出4.14.40-1-MANJARO则安装linux414-virtualbox-host-modules
#安装扩展包你也可以去官网下载扩展包
sudo pacman -S virtualbox-ext-oracle
#添加当前用户到vboxusers, $USER替换用户名
sudo gpasswd -a $USER vboxusers
#此操作不执行USB外设不能使用
重新启动系统或执行sudo modprobe vboxdrv
bleachbitsudo pacman -S bleachbit
系统配置
双系统时差
sudo timedatectl set-local-rtc 1
快捷键添加
在快捷键设置内添加
logout ctrl+alt+insert
gnome-terminal ctrl+alt+T
gnome-system-monitor ctrl+alt+delete
修改Home下的目录为英文
vim .config/user-dirs.dirs
更改为如下
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"
手动将目录下的文件夹名也改为英文文件夹名后重启生效
主题https://github.com/vinceliuice/vimix-gtk-themes
或者
yay -S vimix-gtk-themes-git
grub美化
https://github.com/vinceliuice/grub2-themes
或者
yay -S grub-theme-tela-git
#打开grub配置文件
sudo gedit /etc/default/grub
#更改GRUB_THEME路径
GRUB_THEME="/usr/share/grub/themes/Tela/theme.txt"
#刷新grub
sudo update-grub
gnome登录界面
如果不喜欢manjaro自带的登录背景的话可以还原成gnome默认登录界面背景
cd /usr/share/gnome-shell
sudo mv gnome-shell-theme.gresource gnome-shell-theme.gresource.old.1
sudo mv gnome-shell-theme.gresource.old gnome-shell-theme.gresource
关闭登录界面的night light功能
sudo -u gdm dbus-launch --exit-with-session gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled false
gnome透明终端
yay -S gnome-terminal-transparency
gnome扩展
Drop Down Terminal
全局终端
TopIcons Plus
状态栏显示应用图标,与自带appindicator support配合使用
该插件装上后会出现两个输入法图标,解决方法:
打开fcitx configuration->Addon->Classic->Use System Tray Icon不选中,重新登录后生效
pacman用法 忽略升级包sudo vim /etc/pacman.conf
#更改要忽略升级的包
IgnoreGroup = package
如果只打算忽略一次升级,可以使用 --ignore 选项。
sudo pacman -Syyu --ignore package
覆盖安装
如果碰到如下错误:
error: could not prepare transaction
error: failed to commit transaction (conflicting files)
package: /path/to/file exists in filesystem
Errors occurred, no packages were upgraded.
可以使用–overwrite glob命令来强制覆盖安装
sudo pacman -S --overwrite glob package
清理pacman pkg包缓存
删除已安装和已卸载软件包的所有缓存版本,但默认保留最近的3个版本
paccache -r
删除所有但保留指定的版本数
#保留最近的一个版本
paccache -rk1
删除所有已卸载软件包的缓存版本
paccache -ruk0
删除pacman安装包目录下大于500M的文件
sudo find /var/cache/pacman/pkg/ -size +500M -exec rm {} \;
yay用法
通过仓库和aur查询和安装软件
yay foo
更新包列表并更新所有从仓库和aur安装的软件
yay -Syu
更新所有从aur安装的软件
yay -Sua
通过仓库或aur安装软件
yay -S foo
通过仓库或aur查询软件
yay -Ss foo
通过仓库或aur获取软件信息
yay -Si foo
编辑PKGBUILDS,关闭查看PKGBUILDS不同点
yay --editmenu --nodiffmenu --save