切换到Linux系统上进行工作这个想法其实一直都有,但苦于执行力不够以及某些原因,这个想法一直未能实现,不过,最近终于放下包袱进行了一番尝试,(过程还是有一点艰辛的,不过还好有ArchLinux详细完备的wiki)安装配置好了之后真的只能说感觉好极了!下面记录一下我在硬盘安装ArchLinux的过程:
#查询是否已进入UEFI模式 efivar -l #列出所有可用的键盘布局 localectl list-keymaps #查看网络连通情况 ping -c 2 baidu.com
==分区/格式化/挂载==
用 cfdisk 增加4个分区(这里假设硬盘容量为100G)(有一点需要注意的就是主分区和扩展分区的差别,主分区在一块硬盘上最多有4个,而扩展分区的个数就没有限制,一般情况下这种情况是不会对你造成困扰的,就怕在那块硬盘上同时还存在Windows的主分区,然后你的选择就少了许多):
sda1 ext4 /boot 200MB sda2 ext4 / 60GB sda3 ext4 /home 30GB sda4 swap 9.8GB
mkfs.ext4 /dev/sda1 #设置为ext4格式 mkfs.ext4 /dev/sda2 #设置为ext4格式 mkfs.ext4 /dev/sda3 #设置为ext4格式 mkfs.ext4 /dev/sda4 #设置为ext4格式
mkswap /dev/sda4 #将 /dev/sda4 设置为交换分区 swapon /dev/sda4 #挂载交换分区
mount /dev/sda2 /mnt #先挂载根分区 mkdir /mnt/home mount /dev/sda3 /mnt/home mkdir /mnt/boot mount /dev/sda1 /mnt/boot
==连接网络==
因为Arch Linux的安装过程对网络的依赖比较大,所以,如果你的网络情况不太好/或者根本就没联网,我劝你等待一个合适的时间去到一个合适的空间再来安装Arch Linux。
如果是有限网卡,直接连上网线即可(一般情况下局域网中是用dhcp分配的IP,直接连上网线就可上网)因此,这里无需其它设置。
如果是无线网卡,需要运行 iw/wpa_supplicant 命令手动进行联网操作。
确定有线/无线连接的接口名:# ip link
参考:
https://wiki.archlinux.org/index.php/Wireless_network_configuration#Association
==编辑镜像列表/安装基本系统==
cp /etc/pacman.d/mirrorlist{,.bak} vim /etc/pacman.d/mirrorlist #使用Vi命令进行快速编辑 :7,/China/d pacman -Syy #确定一下镜像没问题 pacman -Syu
pacstrap -i /mnt base base-devel #安装ArchLinux(对于我来说这一步出错了好几次,教训惨痛)(大多数的解决办法都没用) >>> https://wiki.archlinux.org/index.php/Pacman pacman -S archlinux-keyring #解决问题的关键 pacman-key --init && pacman-key --populate archlinux pacman-key --refresh-keys ntpd -qg && hwclock -w #ntpd命令执行那里报错 <<<
genfstab -U -p /mnt >> /mnt/etc/fstab #保存fstab
==切换至新系统/相关初始化操作==
arch-chroot /mnt /bin/bash
#设置主机名和时区 vim /etc/hostname vim /etc/hosts ln -s /usr/share/zoneinfo/Asia/Chongqing /etc/localtime ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#修改locale vim /etc/locale.gen #去掉 'en_US.UTF-8 UTF-8' 的注释 locale-gen #生成/更新 locale 文件 vim /etc/locale.conf # echo LANG=en_US.UTF-8 > /etc/locale.conf export LANG=en_US.UTF-8
#将硬件时间设置为 UTC hwclock --systohc --utc
#设置 root 密码 passwd
#安装并配置 bootloader (对于 BIOS 主板) pacman -S linux-lts grub os-prober grub-install --recheck /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
#退出 chroot exit
#卸载挂载的分区,这一步千万不要忘掉,否则等会重启机子会无法进入系统 umount -R /mnt 或 umount /mnt/{boot,home,}
#重启 reboot
==安装之后==
在系统重启之后你会发现你的网络连接断了,这是因为在重启之后网卡名变了。为了处理这个问题,只需要在重新登录之后用有权限的用户执行几个命令即可:
# ip link # sudo systemctl enable [email protected] # sudo systemctl start [email protected]
如果你有多个网卡使用的DHCP服务,你可以使用下面的命令进行处理:
# sudo systemctl enable dhcpcd.service
#查看网卡信息 ip link ifconfig #默认情况下是没有这个命令的,需要安装 net-tools 才行 http://blog.woralelandia.com/2013/06/29/howto-use-ip-instead-of-ifconfig/
#安装网络工具 pacman -S iw wpa_supplicant wpa_actiond pacman -S dialog
#添加新用户 useradd -m -g users -G wheel,storage,power -s /bin/bash zero passwd zero 或 useradd -m -U -s /bin/bash zero passwd zero usermod -a -G wheel,users gpasswd -a video/audio/... pacman -S sudo # pacman -Ss sudo vim /etc/sudoers # uncomment '%wheel ALL=(ALL) ALL'
#安装Gnome/gdm并设置开机进入图形界面 pacman -S gnome gnome-extra pacman -S gdm vim ~/.xinitrc #添加一行 "exec gnome-session" 或 systemctl enable gdm
#添加字体 pacman -S ttf-dejavu wqy-microhei
#Bash补全 pacman -Ss bash-completion
#输入法设置(IBus) pacman -S ibus ibus-googlepinyin ibus-libpinyin 在 $HOME/.bashrc 中添加下面4行,然后重新载入: export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULE=ibus ibus-daemon -drx 打开系统的 Settings -> 'Region & Language' -> 'Input Sources' 设置一下即可。 #### #还有 fcitx 这个小企鹅输入法(我后来也从ibus转向了fcitx) #安装起来都非常简单,按照ArchLinux的官方wiki一步一步来就行
#驱动(声卡/显卡/鼠标/触摸板...) pacman -S alsa-utils pulseaudio-alsa lspci | grep -i 'vga' pacman -Ss xf86-video | less pacman -S xf86-video-intel pacman -Ss xf86-
#常用软件的安装 Firefox / Chromium #浏览器 Virtualbox #虚拟机 unrar / unzip / p7zip #[解]压缩工具 FileZilla #SCP/FTP gstreamer ffmpeg smplayer #多媒体 NetworkManager #网络管理 util-linux / libutil-linux #Linux小工具 tmux / screen goagent PHP/Apache/MySQL/Redis/Memcache/MongoDB
#配置文件 .bashrc: Shell配置 .xprofile: 进入X时的环境文件 .vimrc: vim配置文件 .tmux.conf: tmux配置文件 .fonts/: 一些字体 .config/fontconfig/: 字体配置
#整体推荐
https://wiki.archlinux.org/index.php/General_recommendations
#Gnome快捷键
https://wiki.archlinux.org/index.php/GNOME#Navigation
https://wiki.gnome.org/Projects/GnomeShell/CheatSheet
#新手指导
https://wiki.archlinux.org/index.php/Beginners%27_guide_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29
- VirtualBox安装配置中的一些问题小结
- Firefox使用的一些tips[ScreenShot]
- Chromium使用的一些tips[ProxySwithchSharp/GoAgent]
- ……
参考链接:
- https://wiki.archlinux.org/index.php/Beginners%27_guide
- 再装ArchLinux » Hacklog
- ArchLinux 10.06 安装
- ArchLinux 安装笔记
- Archlinux 安装教程
- 给妹子看的 Arch Linux 桌面日常安装
- Arch Linux 安装指引
- 投奔 Arch Linux
=EOF=
《 “拥抱ArchLinux” 》 有 6 条评论
ArchLinux 的 安装/配置 脚本
https://github.com/inject3d/dotfiles
https://github.com/MatMoul/archfi
https://github.com/drizzt/vps2arch
https://github.com/altercation/archblocks
https://github.com/ArchStrike/ArchStrike
https://github.com/tokland/arch-bootstrap
https://github.com/archlinuxcn/repo
https://github.com/deadhead420/arch-linux-anywhere
https://github.com/windelicato/dotfiles
https://github.com/nicholasglazer/arch-cheat-sheet
https://github.com/jreese/arch
https://github.com/elasticdog/packer-arch
chw00t: chroot escape tool(chroot环境逃逸工具)
https://github.com/earthquake/chw00t
从内存转储中提取所有打开的 Xwindows 的屏幕截图
https://github.com/eurecom-s3/linux_screenshot_xwindows
Xfce/指南
https://wiki.gentoo.org/wiki/Xfce/Guide/zh-cn
`
Xfce是一个快捷的、轻量级的,功能齐全的桌面环境。
GNOME 和 KDE 是类Unix操作系统上的重量级的桌面环境。
`
Xorg/指南
https://wiki.gentoo.org/wiki/Xorg/Guide/zh-cn
X.Org
https://www.x.org/wiki/FAQ/
linux图形界面编程基本知识
https://blogs.gnome.org/raywang/2007/10/11/linux%E5%9B%BE%E5%BD%A2%E7%95%8C%E9%9D%A2%E7%BC%96%E7%A8%8B%E5%9F%BA%E6%9C%AC%E7%9F%A5%E8%AF%86/
https://blog.csdn.net/huang_xw/article/details/9224683
`
一、linux本身没有图形界面,linux现在的图形界面的实现只是linux下的应用程序实现的。
二、X是协议,不是具体的某个软件。
三、X和XFree86的关系。
四、X和X11R6又是什么关系?
五、X服务器和WM(window manager 窗口管理器)之间是什么关系.
六、关于KDE和GNOME
七、linux图形界面层次关系总结
`
Difference between Xorg and Gnome/KDE/Xfce
https://unix.stackexchange.com/questions/345344/difference-between-xorg-and-gnome-kde-xfce
`
1. What is GUI composed of?
2. What is X?
3. What is GNOME/KDE
`
CentOs 6-x_64 Setting DISPLAY variable
https://unix.stackexchange.com/questions/319828/centos-6-x-64-setting-display-variable
`
If you have a headless CentOS and want to run GUI Apps by logging in remotely you will need to :
1. yum install xorg-x11-xauth
2. yum install xorg-x11-apps
3. ssh -X yourserver
4. xclock
Obvioulsy you need to run ssh -X from the system running X11 server.
* If you are on Linux – no extra steps needed.
* If you are on Mac OS X – install XQuartz
* If you are on Windows – use either xming, mobaxterm, Exceed or anything else that adds X11 support.
`
How can I export DISPLAY from a Linux terminal to a Windows PC?
https://superuser.com/questions/325630/how-can-i-export-display-from-a-linux-terminal-to-a-windows-pc