Arch安装之后

安装基础软件

 vim : sudo pacman -S vim

或者neovim sudo pacman -S neovim

git : sudo pacman -S git

yay

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 安装AUR基础包
sudo pacman -S --needed base-devel

# 安装yay
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

# yay换AUR源 可修改文件`~/.config/yay/config.json`
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
# 查看配置
yay -P -g

# 添加archlinuxcn源,在文件`/etc/pacman.conf`中添加:
[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
# 安装GPG key
sudo pacman -Syy
sudo pacman -S archlinuxcn-keyring

创建普通用户

创建一个普通用户并创建其家目录和加入whell用户组:

1
useradd -m -G wheel 用户名

wheel 组的概念继承自 UNIX,当需要进行一些系统的高级维护时,往往要用到 root 权限;而“wheel” 组就是一个包含这些特殊权限的用户池;如果不是“wheel”组的成员,就无法取得 root 权限进行一些特权的操作。

将一个已有用户加入wheel用户组: usermod -G wheel 用户名

扩展:

  • staffwheel 的区别: wheel 组是一个拥有 root 特权的用户组;而 staff 组是所有普通用户的集合。
  • 对于服务器来说,希望剥夺 wheel 组用户以外的普通用户通过 su 命令来登录 root 的机会(即只有属于 wheel 组的用户才可以用 su 登录为 root)。这样就进一步增强了系统的安全性。步骤如下:

    • 修改 /etc/pam.d/su 文件,找到 #auth required /lib/security/$ISA/pam_wheel.so use_uid ,将行首的注释 # 去掉。

    • 修改 /etc/login.defs 文件,在最后一行增加 SU_WHEEL_ONLY yes 语句。

    • 将一个用户添加到 wheel 组中。

    • 用被添加到 wheel 组的用户登录,执行 su 命令输入密码即可登录 root 用户。

开放用户组组所有权限(可选)

修改 /etc/sudoers 文件

1
2
3
4
5
6
7
8
## 取消注释以允许 wheel 组成员执行任何命令
# %wheel ALL=(ALL) ALL

## 不输入密码执行命令
# %wheel ALL=(ALL) NOPASSWD: ALL

## 取消注释以允许sudo 组的成员执行任何命令
# %sudo ALL=(ALL) ALL

修改grub等待时间

修改/etc/default/gru文件

1
2
#将时间修改为需要的秒数
GRUB_TIMEOUT=0

每当修改 /etc/default/grub/etc/grub.d/ 中的文件之后,都需要再次生成主配置文件/boot/grub/grub.cfg

1
grub-mkconfig -o /boot/grub/grub.cfg

安装图形化桌面

linux 的图形化桌面有很多(主流:KDE,GNOME,Xfce,LXDE,Deepin,Mate等),这里选择i3,i3是一个动态平铺窗口管理器,主要针对开发人员和高级用户。

图形桌面的安装大多是相同的,举一反三即可安装其他桌面

安装

1
2
3
4
5
6
sudo pacman -S xorg-server i3-gaps i3blocks rofi alacritty wqy-microhei
# 安装一个登录管理器(ly通过AUR库安装)
yay -S ly

# 配置开机启动
sudo systemctl enable ly

若使用xorg-xinit启动:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cp /etc/X11/xinit/xinitrc ~/.xinitrc
vim ~/.xinitrc

# 替换以下内容
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

# 替换为
exec i3

# 然后就可执行startx打开i3
# 也可在shell的配置 ~/.bashrc 最后加入 startx 配置用户登录后自动启动

i3配置
初次进入i3会提示是否生成用户配置文件~/.config/i3/config和设置Mod

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
vim ~/.config/i3/config

# Mod键: Mod1为Alt键,Mod4为Windows/Command键
set $mod Mod4

# 状态栏
# bar {
# status_command i3status
# }
# 改为
bar {
status_command i3blocks
}

# 软件启动器
# bindsym Mod1+d exec dmenu_run
# 改为
bindsym Mod1+d exec rofi -show run

图形界面

  • 直接启用X服务 : xorg-xinit xinit程序允许用户通过startx脚本手动启动X显示服务。

  • 图形显示服务 : xorg-server 启动X显示服务的两种方法是使用显示管理器和直接启动X服务。

  • 显示管理器(登录管理器) :

    • 图形界面
      • GDM : GNOME的显示管理器
      • LightDM : 跨桌面的显示管理器。
      • LXDM : LXDE显示管理器,可以独立于LXDE桌面环境使用。
      • MDM : Linux Mintd中的显示管理器
      • SDDM : 基于QML的显示管理器,替代KDE4的KDM,推荐搭配 Plamsa5 或 LXQt 使用
      • XDM : X显示管理器支持XDMCP(适合服务器的宿主机)
    • 控制台
      • CDM AUR : 控制台显示管理器。
      • Console TDM AUR : 扩展自xinit,由纯粹的Bash脚本编写的。
      • nodm : 支持自动登录的简单显示管理器。
      • Ly AUR : 实验阶段的 ncurses 显示管理器。
  • 窗口管理器 :
    • 平铺窗口管理器
      • i3 : i3-wmi3-gaps平铺窗口管理器(i3-gapsi3-wm的分支,提供更多的功能)。
    • 堆叠窗口管理器
      • Metacity : GNOME2曾经默认使用的窗口管理器,后被Mutter取代。
      • Mutter : GNOME3默认的窗口管理器。
      • Kwin : KDE默认的窗口管理器。
      • Xfwm : Xfce默认的窗口管理器。
      • Marco : Mate默认的窗口管理器。
    • 动态窗口管理器
      • dwm : 用于X 的动态窗口管理器。管理平铺、单片和浮动布局中的窗口。 所有布局都可以动态应用,从而优化了使用中的应用程序和执行的任务的环境。

必备

  • i3blocks 状态栏
  • rofi 软件启动器
  • alacritty 终端
  • wqy-microhei 中文字体

状态栏配置

安装字体: fon-awesome, Pango

1
yay -S otf-font-awesome pango

                
          

修改i3blocks配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[script] 		# 脚本
#align= # 对齐
#color= # 颜色
command= # 命令
#format= # 格式
#full_text= # 完整文字
#instance= # 实例
interval= # 间隔
#label= # 标签
#markup= # 标记
#min_width= # 最小宽度
#name= # 名称
#separator= # 分隔符
#separator_block_width= # 分隔块的宽度
#short_text= # 短文字
#signal= # 信号
#urgent= # 紧急
1
2
3
4
5
6
7
8
9
10
11
12
13
backlight   亮度
bandwidth2 带宽
battery2 电量
cpu_usage2
disk-io
gpu-load
mediaplayer
memory
monitor_manager
volume-pulseaudio
usb
ssid
wifi

yay -S ttf-symbola 提供许多 Unicode 符号,包括 Emoji

SSH

1
yay -S openssh

ssh服务端配置文件 : /etc/ssh/sshd_config

1
2
3
4
5
6
7
8
# 只允许某些用户访问
AllowUsers 用户1 用户2

# 只允许某些用户组访问
AllowGroups 用户组1 用户组2

#禁用root登录
PermitRootLongin no

开机启动 : sudo systemctl enable sshd
重启服务 : sudo systemctl restart sshd

-------------本文结束感谢阅读-------------