Lenovo G50-70 BCM43142网卡,Win10原版镜像。

主板调成EFI启动。

制作Win10启动盘,打开Rufus。

按左边电源边的小按钮,选择Boot Menu,选择EFI USB Device,进入Win10安装界面,一路下一步,直到分区。

Shift+Fn+F10调出命令行

diskpart启动分区管理工具

list disk列出磁盘

Select disk n选中磁盘(n是磁盘号,我这里是0)

clean清除磁盘数据

convert gpt磁盘转换为gpt格式

exit退出分区管理工具

exit退出命令行

在可视化分区管理处刷新,然后进行分区。

然后选中作为C盘的盘下一步。

用Rufus刻录Arch盘。插网线

验证网络是否连通

#ping -c 3 archlinux.org

更新时间

#timedatectl set-ntp true

列出磁盘

#lsblk

选择磁盘进行分区,不分/boot,因为将挂载Windows的efi分区(这里使用/dev/sda)

#fdisk /dev/sda

在fdisk中分别键入

分交换分区: n,回车键,回车键,+2G

/: n,回车键,回车键,+60G

/tmp: n,回车键,回车键,+5G,(这里分了一个/tmp分区,默认分的/tmp很小,否则在装AS时需要临时挂载U盘作为/tmp)

/home: n,回车键,回车键,回车键,

w,至此,分区完成。

格式化分区

#mkswap /dev/sda8

#mkfs.ext4 /dev/sda9

#mkfs.ext4 /dev/sda10

#mkfs.ext4 /dev/sda11

挂载分区

首先挂载根分区

#mount /dev/sda9 /mnt

使用swap分区

#swapon /dev/sda8

挂载/tmp与/home

#mkdir /mnt/tmp

#mount /dev/sda10 /mnt/tmp

#mkdir /mnt/home

#mount /dev/sda11 /mnt/home

此处还要挂载Windows所分出的EFI分区

#mkdir -p /mnt/boot/efi

#mount /dev/sda2 /mnt/boot/efi

选择镜像源

#vim /etc/pacman.d/mirrorlist

文件开头加入阿里源

Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch

安装基本系统

#pacstrap /mnt base linux linux-firmware

生成fstab

#genfstab -U /mnt >> /mnt/etc/fstab

切换到新系统

#arch-chroot /mnt

装几个必要的

# pacman -S vim dhcpcd

设置时区

#ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

删除/etc/locale.gen中需要使用的行前的注释符#

建议使用en_US.UTF-8 UTF-8

生成locale信息

#locale-gen

创建locale.conf

#echo LANG=en_US.UTF-8 > /etc/locale.conf

修改主机名

#echo studio > /etc/hostname

修改/etc/hosts如下

127.0.0.1	localhost
::1 localhost
127.0.1.1 studio.localdomain studio

设置root密码

#passwd

安装grub引导

#pacman -S dosfstools grub efibootmgr

#grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck

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

安装完成,退出chroot

#exit

重启

#umount -R /mnt

#reboot

重启后自动进入Arch插入网线还是没网

查看网卡

#ip link

此处为 ens1s0

启用网卡

#ip link set ens1s0 up

#systemctl enable dhcpcd.service

#systemctl start dhcpcd.service

等待一会 ping 一下

先创建一个普通用户

# useradd -m -s /bin/bash seliote

passed seliote

接下来安装X Window 以及登陆管理器

#pacman -S xorg xorg-server xorg-xinit xf86-video-ati xfce4 wqy-zenhei sddm

设置登陆管理器自启, sddm 默认不允许 root 登陆

#systemctl enable sddm

下面安装无线网卡驱动

#vim /etc/pacman.conf

最末加入以下内容

没设置 SigLevel = Optional TrustAll

[archlinuxcn]
Server = http://repo.archlinuxcn.org/$arch

更新源

#pacman -Syy

安装驱动

#pacman -S linux-headers broadcom-wl-dkms rfkill

重启

以下控制台以及 xfce 无线管理方式二选一

控制台使用 WiFi 的步骤

安装 wifi-menu

#pacman -S dialog wpa_supplicant

#ip link

查看无线网卡,此处得到wlp2s0

#rfkill unblock all

#ip link set wlp2s0 down

#wifi-menu

即可使用

以后使用WiFi步骤为

#ip link set wlp2s0 down

#wifi-menu

重新连接

#rfkill unblock all

#ip link set wlp2s0 up

#wifi-menu

xfce 使用 WiFi 的步骤

#pacman -S network-manager-applet

#systemctl enable NetworkManager

#systemctl disable netctl(如果有开启的话,默认没开)

然后在图形界面使用需要执行一次

#rfkill unblock all

#ip link set wlp2s0 up

Grub中添加Windows引导

#grub-probe --target=fs_uuid $esp/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi 获取到$UUID

#grub-probe --target=hints_string $esp/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi 获取$hints_string

编辑文件 # vim /boot/grub/grub.cfg,在行 ### END /etc/grub.d/10_linux ### 前加入

menuentry 'Windows 10' {
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root $hints_string $UUID
chainloader /efi/Microsoft/Boot/bootmgfw.efi
}

将其中$hints_string与$UUID替换为前文得到的

重启则加入了Win10引导

去除烦人的beep声

#rmmod pcspkr

#echo "blacklist pcspkr" > /etc/modprobe.d/nobeep.conf

去除静音

#sudo vim /etc/asound.conf 加入

defaults.pcm.card 1
defaults.pam.device 0
defaults.ctl.card 1

安装声卡管理器

#pacman -S alsa-utils

#sudo alsamixer

按F6选择第二个声卡(第三行),按 m 挨个去除所有的静音

这个这次安装发现并不必要,还是留下来以备后面使用

把装不上驱动的AMD显卡扔进blacklist里(还有个方法是在 BIOS 里直接禁用掉独显)

#sudo vim /etc/modprobe.d/noradeon.conf

install radeon /bin/false
install amdgpu /bin/false

#sudo mkinitcpio -p linux

PS1 的设置 #vim ~/.bashrc

PMT_COLOR="\[$(tput bold)$(tput setab 0)$(tput setaf 2)\]"
PMT_RESET="\[$(tput sgr0)\]"
export PS1="${PMT_COLOR}\u \A \w >>>${PMT_RESET} "

~~

安装几个xfce插件,网速以及截图

#pacman -S xfce4-netload-plugin xfce4-screenshooter

设置几个快捷方式

Setting -> KeyBoard -> Application Shortcuts

amixer set Master 100%- 是静音键

amixer set Master 5%+ 是音量加

amixer set Master 5%- 是音量减

xfce4-screenshooter -fm -s /home/seliote/Pictures/Screenshooter 是截图键

解决双系统下不同时间标准导致时间错乱,此处更改的是 Linux 的

# timedatectl set-local-rtc 1

设置 grub 等待时长

#vim /boot/grub/grub.cfg

找到

set timeout=5

5 修改为指定的数值

安装并修改一下 SSH 配置,避免连接服务器一段时间不操作自动断开

#pacman -S openssh

#vim /etc/ssh/sshd_config

查找ClientAliveInterval

取消行前注释并设置 30 秒发送一次心跳包

ClientAliveInterval 30

之后安装 keyring 可能会报错,解决方案如下

#pacman -Syu haveged

#systemctl start haveged

#systemctl enable haveged

#rm -fr /etc/pacman.d/gnupg

#pacman-key --init

#pacman-key --populate archlinux

#pacman-key --populate archlinuxcn

#pacman -S archlinux-keyring && pacman -S archlinuxcn-keyring

#vim ~/.vimrc

set mouse=v
set number
set ts=4
set expandtab
set autoindent
syntax on
set hlsearch
set nowrapscan

装个中文输入法

#pacman -S fcitx-im fcitx-configtool

选择依赖的时候那几个 gtk 的和 qt 的都需要装,否则会没有输入框

安装完成后重新登录,右键右上角输入法标志,进入configuration,左下角加号,取消勾选Only Show Current Language,添加google-pinyin,默认的english需要留下,否则输入不了英文

添加环境变量

#sudo vim /etc/profile

文件开始结尾处添加

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

安装Android Studio

# pacman -S android-studio android-sdk

# sudo chmod -R 777 /opt/android-sdk

最好还是不要把 Android SDK 直接装吧,进了 Android Studio 后会自动下载

创建项目之后即便配置了 gradle 的本地仓库,但是部分还是不能用,需要设置全局代理

# export http_proxy='http://localhost:1080'
# export https_proxy='http://localhost:1080'

之后模拟器启动不了

#sudo ln -sf /usr/lib/libstdc++.so.6 ~/Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6

要用真机调试,手机打开USB调试

#pacman -S android-tools android-udev

#sudo usermod -a -G adbusers seliote

#sudo gpasswd -a seliote adbusers

AS今天滚完报错 Emulator: /home/seliote/Android/Sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64: error while loading shared libraries: libpulse.so.0: cannot open shared object file: No such file or directory

解决办法是 #pacman -S libpulse

Markdown 编辑器用这个

# sudo pacman -S retext

安装网易云

#sudo vim /etc/pacman.conf

删除 /etc/pacman.conf 中 [archlinuxcn] 下的 SigLevel= 行,以使用默认设置

#pacman -Syy

#pacman -Syu

#pacman -S archlinuxcn-keyring

#pacman -S netease-cloud-music

恕我直言,内存泄漏真可怕,音乐列表滑动也严重卡顿,听个响

#pacman -Rs netease-cloud-music

安装 TeamViewer 后还需要设置一下

# sudo pacman -S teamviewer

# sudo systemctl enable teamviewerd

为写个服务端PHP爬虫,本地搭建LNMP,因为LNMP用的比较少,所以全部没有设置服务自启

安装Nginx主线版本

#pacman -S nginx-mainline

手动启动Nginx

#sudo systemctl start nginx

浏览器进入127.0.0.1看Nginx是否安装成功

安装MariaDB

#pacman -S mariadb

执行自安装程序

#sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql

启动

#sudo systemctl start mysqld

安全启动,按照提示设置root密码等

#sudo mysql_secure_installation

安装PHP 7

#pacman -S php-fpm

为Nginx配置PHP,去掉前面的分号并改为如下

#sudo vim /etc/nginx/nginx.conf

line65:   location ~ \.php$ {
line66: root /usr/share/nginx/html;
line67: fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
line68: fastcgi_index index.php;
line69: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
line70: include fastcgi_params;
line71: }

启动PHP

#sudo systemctl start php-fpm

写一个PHP文件然后用浏览器测试一下

#sudo vim /usr/share/nginx/html/index.php

<? php
echo 'Hello world!'

设置PHP扩展,找到下面文件的这两行,去掉前面的分号

#sudo vim /etc/php/php.ini

;extension=mysqli
...
;extension=pdo_mysql

重启配置过的服务

#sudo systemctl reload nginx

#sudo systemctl reload php-fpm

添加LNMP快捷启动与停止shell bash

#vim ~/.bashrc

alias lnmp_start='sudo systemctl start mysqld ; sudo systemctl start nginx ; sudo systemctl start php-fpm'
alias lnmp_stop='sudo systemctl stop mysqld ; sudo systemctl stop nginx ; sudo systemctl stop php-fpm'

安装Tomcat

pacman -S tomcat8

sudo gpasswd -a seliote tomcat8

sudo vim /etc/tomcat8/tomcat-users.xml

<!-- 添加管理用户,记得改密码 -->
<!-- </tomcat-users> 标签前一行添加 -->
<user username="admin" password="admin" roles="manager-gui,admin-gui" />

idea 报错,权限不够

#sudo chmod -R 777 /etc/tomcat8

#sudo chmod -R 777 /usr/share/tomcat8

快捷启动

vim ~/.bashrc

alias java_web_start='sudo systemctl start tomcat8; sudo systemctl start mysqld'
alias java_web_start='sudo systemctl stop tomcat8; sudo systemctl stop mysqld'
export JAVA_WEB_PATH="/var/lib/tomcat8/webapps"

最近做C#开发, 每次GRUB引导后都要手动选择排在第三的Win很不方便, 修改一下吧

#sudo vim /boot/grub/grub.cfg

然后查找set default = 0, 修改为set default = 2重启即可

做完ARCH镜像后U盘会出问题,Win下cmd,diskpart,list disk,select disk n,clean,然后打开计算机右键管理,磁盘管理,右键磁盘,新建简单卷,然后下一步就OK

-------------------------------------------我是分割线----------------------------------------

2019.01.02 系统滚挂了,wifi_menu 提示 no network found。距离上次安装正好差一个月一年,记录一下修复过程。

  • 查看更新记录,寻找可能导致滚挂的包 $ sudo vim /var/log/pacman.log,比如这里日志的 [2019-01-02 11:48] [ALPM] upgraded wpa_supplicant (1:2.6-12 -> 1:2.7-1)

  • 如果之前没有删过缓存包的话 $ sudo pacman -U /var/cache/pacman/pkg/.... 即可回滚,可惜我删了。

  • 电脑插上网线或者手机共享一下网络

  • 这里 找旧版的 tar.gz 并下载,解压 $ tar -zxvf packages-aaccde99f510add8851ca05febe9cca64406a27d.tar.gz

  • 进入子目录 $ cd packages-aaccde99f510add8851ca05febe9cca64406a27d/repos/core-x86_64/

  • 尝试打包 $ makepkg,我这里报错 ==> ERROR: One or more PGP signatures could not be verified! 签名不对,那就别校验了,$ makepkg --skippgpcheck

  • 安装打包后的软件 $ sudo pacman -U wpa_supplicant-1:2.6-12-x86_64.pkg.tar.xz

  • 重启测试一下 WiFi 能不能用了,OK 后忽略这个软件包的升级,$ vim /etc/pacman.conf 添加或新增 IgnorePkg = wpa_supplicant

Arch + Win10 EFI 引导重装记录的更多相关文章

  1. 一次修复linux的efi引导的集中方法总结记录

    本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/grub_uefi_repair 起因:EFI分区被删除导致引导问 ...

  2. 实测win10 efi启动及centos7双系统引导顺序修改

    安装win10 安装win10过程中,系统自动建立esp分区,分区格式为FAT16,目录如下 1,EFI/Boot文件夹保持不动 删除 EFI/Microsoft/boot/ 文件夹下面除BCD文件外 ...

  3. Arch Linux实体机安装记录

    下面将记录笔者在戴尔笔记本安装arch linux的过程,用于记录,以便下次使用. 本文的内容参考arch linux官方Wiki. 首先,使用Power ISO把镜像安装到U盘,使用U盘安装. 通过 ...

  4. 使用EFI引导从硬盘(U盘)安装Win7的图文教程

    目前仅支持vista后的64位系统 大部分使用EFI引导安装Win7的教程都是采用光盘启动安装,虽然光盘安装比较简单,但是对于没有光驱的朋友来说还是相当不便,更不用说光盘安装的两大缺点了,一速度慢,二 ...

  5. Mac OS 挂载 EFI 引导分区

    正如Windows下的EFI分区一样在资源管理器中默认不显示EFI引导分区(即ESP分区),Mac OS也是如此,为了安全嘛,不让用户随意操作. 那么怎么挂载显示出来呢? 命令转自 https://b ...

  6. Arch Linux 硬盘引导-联网安装

    Arch Linux 硬盘引导-联网安装 ============https://www.archlinux.org/https://wiki.archlinux.org/https://wiki.a ...

  7. 小米Pro 15.6 系统重装记录

    参考链接:http://bbs.xiaomi.cn/t-14321262,主要是miui论坛和小米社区的一位同学的教程,. 这位同学是针对12.5和13.3的版本做的教程,15.6和之前的版本有一小点 ...

  8. 使用PXE+NFS EFI引导安装RHEL6/7以及Kickstart安装

    PXE引导的步骤: 1.开机后选择网络启动,client端向server端的dhcpd发起获取IP地址的dhcp请求. 2.server端分配IP后,dhcpd会同时根据其配置文件,通过TFTP协议发 ...

  9. win10 EFI装ubuntu14.04双系统 及初始配置

    这次第二次装ubuntu系统了,第一次是在win7下安装的,到了win10,由于用了efi,跟win7的安装方法不太相同,相同点有: 1.仍然可以用u盘启动,我用的是UltroISO这个软件. 2.装 ...

随机推荐

  1. Python中open文件的各种打开模式

    对于Python打开文件的模式,总是记不住,这次在博客里记录一下 r+: Open for reading and writing.  The stream is positioned  at  th ...

  2. u-boot分析(十)----堆栈设置|代码拷贝|完成BL1阶段

    u-boot分析(十) 上篇博文我们按照210的启动流程,分析到了初始化nand flash,由于接下来的关闭ABB比较简单所以跳过,所以我们今天按照u-boot的启动流程继续进行分析. 今天我们会用 ...

  3. Web前端开发规范(一)

    1.前言 网页开发技术从1989年开始至今已经走过了20余年,从最初纯粹的学术交流,到门户网站.电子商务网站.博客.E-mail.Web游戏.SNS网站等,以及到如今的移动Web网站(其实可以认为是P ...

  4. 【MATLAB】对离散采样信号添加高斯白噪声(已知Eb/N0)

    (1)首先计算已知信号序列(采样之后得到的信号)的平均功率.该序列在第n个点处的功率为: 如果已知的信号序列中的总共的点数为N个,则该序列的平均功率为: 在MATLAB中求平均功率的方法是: Pav= ...

  5. 如何使用ABAP代码反序列化JSON字符串成ABAP结构

    假设我有这个JSON字符串如下图所示: 我的任务是解析出上图黑色方框里的几个字段,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它们的值存储到对应A ...

  6. HTML入门2—HTML常用标签

    HTML常用标签练习 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...

  7. IOS 通过 代码 自定义cell(Cell的高度不一致)(优化性能)

    创建cell的步骤 1.新建一个继承自UITabelViewCell的类 2.重写 initWithStyle:ReuseIdentifier: 方法 添加所有需要显示的子控件(不需要设置子控件的数据 ...

  8. http协议,tcp协议,ip协议,dns服务之前的关系和区别

    长期以来都有一个问题,大家都在说http协议,tcp协议,ip协议,他们之间到底什么区别,有什么用,没人告诉我,最近看了这本<图解http>明白了一些,以下图片摘自这本书 一.理解一个传输 ...

  9. 【转】基于JavaMail的Java邮件发送

    http://blog.csdn.net/xietansheng/article/details/51673073 http://blog.csdn.net/xietansheng/article/d ...

  10. pyinstaller打包后的exe退出时,类中的__del__不执行问题

    关于pyinstaller打包后的exe退出时,类中的__del__不执行问题,完善中