位置: 编程技术 - 正文

把Arch Linux安装到U盘上的具体教程(archlinux安装zsh)

编辑:rootadmin

推荐整理分享把Arch Linux安装到U盘上的具体教程(archlinux安装zsh),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:arch linux安装yay,arch linux安装deb,arch linux2020安装教程,arch linux2020安装教程,arch linux安装yay,arch linux2020安装教程,arch linux2020安装教程,arch linux2020安装教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Arch Linux简介Arch Linux(或称Arch)是一种以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅、正确和代码最小化的设计宗旨。Arch Linux 项目受 CRUX 启发,由 Judd Vinet 于年启动。Arch Linux是起源于加拿大的一份致力于使用简单、系统轻量、软件更新速度快的GNU/Linux发行版。创始人Judd Vinet出于对Debian以及Red Hat的包管理器不满,以及受CRUX影响而创立。最初针对i,但是如今对x_也支持良好,而且还派生出了针对ARM平台的Arch Linux ARM以及针对HURD内核的Arch Hurd(发展缓慢)。Arch Linux 将简洁定义为:避免任何不必要的添加、修改和复杂增加。它提供的软件都来自原始开发者((上游),仅进行和发行版(下游)相关的最小修改。不包含上游不愿意接受的补丁。绝大部分 Arch 下游补丁都已经被上游接受,下一个正式版本里会包含。配置文件也是来自上游,仅包含发行版必须的调整,比如特殊的文件系统路径变动。Arch 不会在安装一个软件包后就自动启动服务。软件包通常都和一个上游项目直接对应。仅在极少数情况下才会拆分软件包。Arch尽全力保持软件处于最新的稳定版本,只要不出现系统软件包破损,都尽量用最新版本。Arch采用滚动升级策略,安装之后可以持续升级,无需重装。只敲一个命令,Arch就可以保持最新。Arch向GNU/Linux用户提供了许多新特性,包括systemd初始化系统、现代的文件系统(Ext2/3/4、Reiser、XFS、JFS、BTRFS)、LVM2/EVMS、软件磁盘阵列(软RAID)、udev支持、initcpio(附带mkinitcpio)以及最新的内核。

基本系统安装本想使用 GPT 分区表,查了一些资料, 为了使这个U盘在 BIOS 和 UEFI 电脑上都能用, 需要创建一个 BIOS boot 分区,2M 大小足够,位置尽量靠前。 多系统的话还要创建一个 M 的 EFI System Partition(ESP) 分区。 这些都不是问题,但实际做下来, GPT 中的 NTFS 分区在 Win7 下死活不认, 想用这个分区作为常规U盘使用就不行了, 只好再回到 MBR 分区表。 如果是移动硬盘用 GPT 应该没有问题。

所以仍然使用 MBR 分区,所以就要用 fdisk 或者 cfdisk 了, 不能使用支持 GPT 的 gdisk 和 cgdisk, 4k 对齐也是自动完成。 有趣的是,如果想把 GPT 分区表转换成 MBR 分区表, 还得借助 gdisk:r 进入 Recovery 模式, g 进入 MBR 模式,w 进行转换。 根据实际情况, 有些分区转换未必能够成功, 不过变回 MBR 分区表是没有问题的。

NTFS 分区得在第一个分区,不然 Windows 不认。

启动U盘是 /dev/sdb,目标U盘就成了 /dev/sdc。复制代码代码如下:# fdisk /dev/sdb Disk /dev/sdc: MB, bytes, sectorsUnits = sectors of 1 * = bytesSector size (logical/physical): bytes / bytesI/O size (minimum/optimal): bytes / bytesDisk label type: dosDisk identifier: 0x Device Boot Start End Blocks Id System/dev/sdb1 7 HPFS/NTFS/exFAT/dev/sdb2 * Linux/dev/sdb3 Linux/dev/sdb4 Linux第一个分区先用 ntfs,当正常U盘使用, 如果以后需要用到 ESP 分区,直接用这个分区转,或者切一部分空间过去。 第二个分区 M,挂 /boot; 第三个分区 4G,作为 ArchLinux 根分区; 第四个分区 2.5G,作为 $HOME ;

格式化分区:

如果使用 xfs 分区格式:复制代码代码如下:# mkfs.ntfs -f /dev/sdc1 -L f-c# mkfs.xfs -n size=k -l lazy-count=1 /dev/sdc2 -L f-boot# mkfs.xfs -n size=k -l size=m,lazy-count=1 /dev/sdc3 -L f-a# mkfs.xfs -n size=k -l size=m,lazy-count=1 /dev/sdc4 -L f-b-n size=k 参数增加了文件名(目录)区域大小(默认 4k), 这样可以减少 IO 消耗,代价是 CPU 消耗多一些, 这对现代计算机显然不是问题。 -l size=m 参数扩大日志的容量(默认 m),更安全, 代价是挂载时间会长一些。 -l lazy-count=1 参数减少 superblock 读写次数,提高性能。

如果使用 ext4 分区格式:复制代码代码如下:# mkfs.ntfs -f /dev/sdc1 -L f-c# mkfs.ext4 -b -m 0 -i -O '^has_journal' /dev/sdc2 -L f-boot# mkfs.ext4 -b -m 1 -i -O '^has_journal' /dev/sdc3 -L f-a# mkfs.ext4 -b -m 0 -i -O '^has_journal' /dev/sdc4 -L f-b-b 是每个存储块的大小。 -m 1 是指定 root 保留空间为 1%,home 区就不留了。 -i 是指定多少字节的数据设置一个 inode 节点, 增加它的值会减少 inode 的总数,占用的空间会少一些, 相应的能够存储的文件数量也减少了,这个稍微注意一下就好,一般都够用。 -O '^has_journal' 是关掉文件系统日志,有点小危险。

经过两天的折腾,个人感觉 ext4 在U盘上读写速度快一些。

挂载分区:复制代码代码如下:# mount /dev/sdc3 /mnt# mkdir /mnt/boot# mount /dev/sdc2 /mnt/boot# mkdir /mnt/home# mount /dev/sdc4 /mnt/homedf -h 检查一下:复制代码代码如下:# xfsFilesystem Size Used Avail Use% Mounted on/dev/sdc3 3.9G M 3.9G 1% /mnt/dev/sdc2 M 5.2M M 7% /mnt/dev/sdc4 2.4G M 2.4G 2% /mnt/home # ext4Filesystem Size Used Avail Use% Mounted on/dev/sdc3 3.9G 8.1M 3.8G 1% /mnt/dev/sdc2 M K M 1% /mnt/dev/sdc4 2.5G 3.8M 2.4G 1% /mnt/homeext4 改变 bytes-per-inode 确实对分区所占空间影响很大。

安装基本系统

家里有无线路由,网络不用配置,已经自动连上了。

编辑 /etc/pacman.d/mirrorlist ,把最快的源挪到最上面。 一般来说 和台湾的源比较快, 似乎有时候不稳定, 几个中国大学的源有些是 ipv6 的,用不了。 安装完成后,这个配置文件也会自动拷贝到新系统中。 自带的 vi 真的是比 vim 难用多了,一会儿第一时间换掉。

按照官网说明,用 # pacstrap /mnt base base-devel 安装基本系统, base-devel 也一并装上,迟早会用到 AUR 或 ABS。 提示共 个软件包,需要下载 .M 内容,安装完成后是 .M。

安装复制代码代码如下:grub: # arch-chroot /mnt pacman -S grub。

生成复制代码代码如下:fstab: # genfstab -p -U /mnt >> /mnt/etc/fstab, 然后更改 fstab (系统默认一般就比较好了,不优化也行):

使用 relatime 挂载参数。

把Arch Linux安装到U盘上的具体教程(archlinux安装zsh)

以前是推荐增加 noatime 挂载参数,不记录文件读取时间, 但这会导致 Mutt 等需要文件读取时间的软件出错。 现在改为使用 relatime 参数了 (已经默认加上了,Linux 2.6. 起此参数成为默认值), 只有在文件读取时间早于文件更新时间时,才更新读取时间数据。

使用 nodiratime 挂载参数,不记录目录读取访问时间。

把 /tmp 放到 tmpfs 上去。(没单独分区,免了)

不再使用 discard 挂载参数。

这个参数主要是针对 SSD 硬盘的,对不支持 TRIM 的机械硬盘无效, 对U盘貌似作用不明显。

不再使用 async 挂载参数,开启异步读写模式。 由于只是“看起来”快了,实际数据写入速度并没有改善, 考虑到稳定性,是否应使用此参数?

不要使用 barrier=0 挂载参数,这个选项似乎在突然断电、 拔U盘时,有几率丢失文件或损坏分区。 (基于我的经历 + 参考 )

由于不会跑什么大应用,为了降低 swap 的使用频率, 修改 /mnt/etc/sysctl.conf :复制代码代码如下:vm.swappiness = 1vm.vfs_cache_pressure = 前一句是尽量不使用 swap,后一句是缓存文件系统信息。

下面的操作可以在 chroot 环境下运行:复制代码代码如下:# arch-chroot /mnt设置 hostname: echo 'f' > /etc/hostname 。

设置时区:复制代码代码如下:# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime新建 /etc/locale.conf 内容为:复制代码代码如下:LANG='en_US.UTF-8'LC_COLLATE='C'LC_MESSAGES='C'编辑 /etc/locale.gen ,取消 en_US.UTF-8, zh_CN.UTF-8, zh_TW.UTF-8 前面的注释,然后执行 locale-gen 命令。

更改 root 密码: passwd root 。

安装 Grub 引导系统。

仍然在 chroot 环境中操作。 编辑 /etc/mkinitcpio.conf ,检查 HOOKS 段, 让 block 参数紧挨着 udev 参数之后(早一点加载), 然后 # mkinitcpio -p linux 生成 img 文件。 同时加上了 shutdown 参数,作用以后再试。 resume 参数就算了,U盘本来就小、慢,支持休眠更痛苦。 (注:新版本中 block 参数替代了 usb pata sata scsi 等一众参数)

安装 grub:复制代码代码如下:# grub-install --target=i-pc --recheck --boot-directory=/boot --no-floppy /dev/sdc# cp -v /usr/share/grub/{unicode.pf2,ascii.pf2} /boot/grub/# cp -v /usr/share/locale/en@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo无论是 位还是 位系统,都是使用 --target=i-pc 参数, --no-floppy 是不检查软驱(这玩意儿现在应该没人用了)。 后两句不执行也行,还没弄懂是做什么的。

然后,千万不要忘记 生成 grub.cfg 文件 :复制代码代码如下:# grub-mkconfig -o /boot/grub/grub.cfg# grep 'set=root' /boot/grub/grub.cfg# blkid /dev/sdc2现在的 Grub2 使用 UUID 来找硬盘分区, 后两句就是检查新生成的 grub.cfg 使用的分区 UUID 和硬盘是否相符。 如果忘记生成 grub.cfg 了,可以再次用光盘启动进去做。

最后,退出 chroot 环境,umount,重启。 启动U盘可以收起来了。

启动后,新安装的U盘变成了 /dev/sdb, 此时最好将 mkinitcpio grub-install grub-mkconfig 重新做一遍, 否则有可能在下次或另外一台机器上启动时,损坏分区表,丢失文件。 或许没有道理,但这是我重复安装好多次以后的感觉,可能有以下原因:

带电插拔,可我都是 umount 了啊,不应当这么脆弱。被 USB 3.0 高电流给破坏了,没拔U盘烧了算我走运? 倒是听说过 USB 3.0 损坏U盘数据。/boot 原先没有单独分区,这个不应该。是原先使用 GPT 分区在 BIOS 电脑上水土不服? U盘难道就不能用 GPT 分区么?反正换回 MBR 分区后,貌似比较正常了。

Arch Linux安装后的一些初始设置简介 配置有线网络。没网络的时候,可以直接设定ip应急,后面netctl才是正规设置:复制代码代码如下:#ipaddradd..0./devenp0s4#iplinksetdevenp0s4up#iprouteadddefa

Linux下的sed命令使用详解 sed是streameditor的简称,也就是流编辑器。它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为模式空间patternspace,接着用sed命令

Linux系统的垃圾清理方法总结 Linux的最大优点之一就是,使用一段时间后,它照样很稳定。Linux面临的最大挑战就是,将它安装起来,并找到并配置你完成工作所需要的软件。一旦你

标签: archlinux安装zsh

本文链接地址:https://www.jiuchutong.com/biancheng/353373.html 转载请保留说明!

上一篇:Linux中使用ipvsadm配置LVS集群的基本方法(linux中使用fdisk命令进行硬盘分区)

下一篇:Arch Linux安装后的一些初始设置简介(arch linux安装yay)

  • 固定资产的进项税额可以抵扣吗
  • 用友财务软件怎么设置二级科目
  • 增值税普通发票几个点
  • 增值税减免税款怎么算
  • 小规模纳税人增值税申报表怎么填
  • 从租计征的房产税纳税期限
  • 印花税计入哪个费用
  • 化妆品的成本利润是多少
  • 受托方提供材料怎么写
  • 固定资产报废残料收入的账务处理
  • 应收账款处置损益
  • 投资理财产品的优势和劣势
  • 城市建设维护税和教育费附加怎么算
  • 旧税号还能开票吗
  • 承包食堂管理费用收取的依据
  • 增值税专普票清卡失败的原因是什么?
  • 应纳税所得额应纳税额公式
  • 个人所得税自行纳税申报
  • 提供鉴证咨询服务属于增值税征税范围吗
  • 三免三减半税收优惠政策文件
  • 月销售额不超10万,免征教育费附加分录
  • 开票软件的地址怎么修改
  • 报销差旅费抵扣进项税分录
  • 保税区内的货物交易
  • 债务重组损益如何确定
  • 工资扣员工的罚款入什么科目
  • 借用下属单位人员违反什么政策
  • 包装物押金为什么含税
  • 桌面级cpu天梯图2023
  • fast processing
  • php参数过滤封装类
  • 苹果系统的声音
  • linux系统基础教程
  • php字符串定义
  • 购买农产品没有承担增值税为什么还要计算抵扣
  • 深入理解php内核
  • 特殊性税务处理弥补亏损限额
  • 企业公益性捐赠税前扣除标准
  • 招待费增值税能抵扣吗
  • php file_get_contents smb
  • thinkphp-5.0
  • php中foreach循环遍历数组
  • vue项目首屏加载过慢
  • sessionn
  • js怎么制作
  • 专票减免政策
  • 电子发票怎么开具?
  • 利息发票可以抵扣吗
  • 双重数组
  • mysql有几种
  • 事业单位成本核算具体指引—公立医院
  • 网购会计如何确认成本
  • 销货方怎么开红字发票
  • mysql select语句操作实例
  • 中餐补助
  • 为什么要缴纳保险
  • 生产企业购进的生产原材料用来装修公司会计处理
  • 安置房买卖过户流程
  • 现金股利征收个人所得税吗
  • 公司开业两年后辞职
  • 取得投资款缴纳企业所得税吗
  • 免税发票怎么抵扣
  • 以销定产会计怎么做账科目
  • 人力成本工资总额指应发工资
  • 公司投资银行理财产品如何做账
  • drop table select
  • sql行变列有几种方法
  • win10系统优酷播放不了
  • Ubuntu 12.04/14.04 LTS版内核更新 修复七个重大安全漏洞
  • win10系统预览版
  • linux ultrasphinx Anonymous modules have no name to be referenced by
  • 如何将win7系统装进移动硬盘
  • 如何理解vue
  • 从零开始学什么好
  • python计算文件大小
  • jquery关闭当前页面
  • jquery自定义表单
  • jquery提交
  • 总包发票税率
  • 电子税务局开的发票怎么作废
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设