当前位置: 首页 > news >正文

gentoo基本安装过程

该文章是本人在gentoo官方安装文档的基础上简单总结的,也是本人自己实践过的,目前本人用的就是gentoo,对于真的需要安装gentoo的朋友,建议还是参考官方文档,说的比较详细,这个可以简单看看,可以从整体上把握gentoo的安装过程。

安装步骤

  1. 选择install-amd-minimal-.iso刻录到u盘中,作为安装系统的最基本的环境
    注:也可以用已安装好的系统作为基本系统环境,如fedora或ubuntu等其它的发行版

  2. 下载stage3包,其包含了一个最小的gentoo系统环境

  3. 网络配置额外分析

  4. 磁盘准备常规:(使用的是单独的磁盘,/dev/sdb),要求准备三个分区,分别用于boot,swap和root.步骤如下
    注:由于本人第一次安装的时候是在移动硬盘上进行的,所以这里的盘符是使用的/dev/sdb

# fdisk /dev/sdb
# n    添加分区1,用于boot
# p    选择建立主分区
# +128M     设置大小为128M# n      添加分区2,用于swap
# p      选择建立主分区
# +2G       设置大小为2G
# t    选择分区2,设置分区类型为82# n    添加分区3
# p    选择建立主分区
# +30G    设置大小为30G
  1. 分区格式化
  # mkfs.ext2 /dev/sdb1# mkfs.ext4 /dev/sdb3
  1. swap 分区格式化
 # mkswap /dev/sdb2# swapon /dev/sdb3
  1. 挂载刚刚建立的分区
 # mkdir /mnt/gentoo# mount /dev/sdb3 /mnt/gentoo# mkdir /mnt/gentoo/boot# mount /dev/sdb2 /mnt/gentoo/boot
  1. 安装stage3包
# cd /mnt/gentoo        切换到/mnt/gentoo目录
# links   连接到该网站下载stage3文件包当然也是可以提前下好,只要放在要安装的分区下面即可。
# tar xvjpf stage3-*.tar.bz2
  1. 安装portage快照(在最新的官方文档中是没有这一步的,但本人实际操作的时候缺了这部是没有办法继续进行的)
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
  1. 配置编译选项
# nano -w /mnt/gentoo/etc/portage/make.conf  (vim /mnt/gentoo/portage/make.conf)
# CFLAGS="-march=k8 -02 -pipe" 
# CXXFLAGS="${CFLAGS}"可选:MAKEOPTS="-j2"
  1. 复制host系统的dns信息到新系统中,为后面联网做准备
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
  1. 挂载一些必要的文件系统
# mount -t proc proc /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys
# mount --rbind /dev /mnt/gentoo/dev

13.切进新系统,使用新系统的环境

# chroot /mnt/gentoo /bin/bash
# source /etc/profile
# export PS1="(chroot) $PS1"
  1. 配置portage,下载的portage包可能比较旧,此时可以更新一下
 # emerge-webrsync# emerge --sync
  1. 选择适合的profile,各取所需,针对kde,gnome不同桌面的优化,当然也可以不用桌面环境
 # eselect profile list# eselect profile set 2        2是我电脑上的选项
  1. 配置USE变量
# less /usr/portage/profiles/use.desc
# nano -w /etc/portage/make.conf       
# USE="gtk gnome -qt4 -kde dvd alsa cdr"      严重建议在配置USE的时候,如果选择了gnome的话,一定要在udev和systemd之间禁用一个,否则到后面你会很苦
  1. 配置timezone配置时区,同样根据自己的所在地自由选择
# less /usr/share/zoneinfo
# echo "Asia/Chongqing" > /etc/timezone
# emerge --config sys-libs/timezone-data
  1. 配置locale 语言配置,个人随意,但是POSIX C基本是要选的吧
# nano -w /etc/locale.gen
# locale-gen# eselect locale list
# eselect locale set 9
# env-update && source /etc/profile
  1. 安装sources
 # emerge gentoo-sources
  1. 配置sources 开始配置内核了
 # cd /usr/src/linux

在这里你有两种选择,一种是手动配置内核,还有一种是使用genkernel一部搞定,对于没有配置过内核的还是建议使用genkernel吧,否则后面可能会遇到驱动问题

使用genkernel:

# zcat /proc/config.gz > /usr/share/genkernel/arch/x86_64/kernel-config
# emerge genkernel
# genkernel all
# ls /boot/kernel* /boot/initramfs* (如果不存在,使用genkernel --install initramfs重建

手动配置:

   cd /usr/src/linuxmake menuconfigmake && make modules_installcp arch/x86_64/boot/bzImage /boot/kernel-3.4.9-gentoo
  1. 加载核心模块,认识的话就自己选吧,为了省事这步可以省的
 #ls /lib/modules/`uname -r`/ -typee f iname '*.o' -or -iname '*.ko' | less#nano -w /etc/conf.d/modules #modules_2_6="3c59x"
  1. 编辑文件系统信息
 # nano -w /etc/fstab# /dev/sdb1 /boot  ext2 defaults,noatime 0 2# /dev/sdb2 none   swap sw 0 0# /dev/sdb3 / ext4 noatime 0 1# /dev/cdrom /mnt/cdrom auto noauto,user  0 0
  1. 编辑主机名
# nano -w /etc/conf.d/hostname
# hostname="zjd"
  1. 设置开机启用网络,每个人设备上的网卡设备名不同,根据实际来修改
# cd /etc/init.d
# ln -s net.lo net.eth0
# rc-update add net.eth0 default (del)
  1. 设置系统信息
# passwd   root   设置密码# nano -w /etc/rc.conf# nano -w /etc/conf.d/hwclock    如果硬件时钟没用UTC,需要添加"clock="local""
  1. 安装systen logger
# emerge syslog-ng
# rc-update add syslog-ng default
  1. 安安装cron daemon
# emerge cronie
# rc-update add cronie default
  1. 安装文件系统工具
  #emerge xfsprogs#emerge reiserfsprogs#emerge jfsutils
  1. 安装DHCP客户端
# emerge ducpcd
  1. 安装bootloader
 # emerge sys-boot/grub# grub-install /dev/sdb# grub2-mkconfig -o /boot/grub/grub.cfg

大体步骤就这样了,当然这还只是基本的linux环境,如果想要安装图形界面的话,如果还想要装图形界面的话,那么恭喜你,一大波麻烦正在靠近。最起码长时间的等待是少不了的了。

写在最后

想不到这已经是7、八年前玩的东西了,时间真的过的好快。

相关文章:

gentoo基本安装过程

该文章是本人在gentoo官方安装文档的基础上简单总结的,也是本人自己实践过的,目前本人用的就是gentoo,对于真的需要安装gentoo的朋友,建议还是参考官方文档,说的比较详细,这个可以简单看看,可以…...

【LeetCode】1234. 替换子串得到平衡字符串

1234. 替换子串得到平衡字符串 题目描述 有一个只含有 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符,且长度为 n 的字符串。 假如在该字符串中,这四个字符都恰好出现 n/4 次,那么它就是一个「平衡字符串」。 给你一个这样的字符串 s,…...

[动手写操作系统]-01-开机运行系统

文章目录 **概念和目标**概念目标理论源码概念和目标 概念 assembler: 汇编程序BIOS: BIOS(Basic Input Output System,基本输入输出系统)是个可编程的微型操作系统,用于管理计算机中的软硬件,它控制着系统的启动,系统是如何连接外部设备,怎样响应,调整相应操作,都是…...

最长回文子序列问题

最长回文子序列问题 问题描述:给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。 注意是子序列而不是子…...

月薪11k!从财务专员到软件测试工程师,成都校区小哥哥用三个月实现转行换岗

好久没和大家分享学员的转行经历了,或许在一些人看来他们的故事与自己无关,但同样也能引起一些人的共鸣,可以帮助到那些陷于就业焦虑的同学找到目标和方向。相仿的年龄、相同的职业、相似的压力…在转行软件测试追求更好生活的路上&#xff0…...

Android 逆向工具大整理,碉堡了

文章目录jadx打开 gui 界面把安装包打开双击变量名和方法名可以高亮所有出现的地方**强大的搜索功能****搜索资源****查看 APK 签名****查看 APK dex 数,方法数****查看资源,配置清单****展开包名**查找方式引用反混淆导出 Gradle 工程导出反编译资源lib…...

二维数组的定义

1. 概念二维数组就是一种数组的数组,其本质上还是一个一维数组,只是它的数据元素又是一个一维数组。如果你对这个概念想象不出来,给大家举个栗子,相信吸烟的同学一下子就会明白。一根烟 一个变量一包烟 20根烟 一维数组一条烟 …...

SpringMVC--获取请求参数、域对象共享数据

SpringMVC获取请求参数 通过ServletAPI获取 将HttpServletRequest作为控制器方法的形参,此时HttpServletRequest类型的参数表示封装了当前请 求的请求报文的对象 RequestMapping("/testParam") public String testParam(HttpServletRequest request){S…...

2月13日,30秒知全网,精选7个热点

///深圳支持数字经济核心区试点,市民每月免费享有1T网络流量支持基础电信企业、广电企业及互联网企业加快推进全市内容分发网络(CDN)扩容及智能改造行动,优化和完善CDN节点部署,积极利用边缘计算技术,推动互…...

【C++设计模式】学习笔记(2):模式分类与模版方法 Template Method

目录 简介模式分类GOF-23 模式分类从封装变化角度对模式分类重构获得模式 Refactoring to Patterns重构关键技法“组件协作”模式Template Method 模式动机(Motivation)结构化软件设计流程面向对象软件设计流程早绑定与晚绑定模式的定义结构(Structure)要点总结结语简介 He…...

【Swift 60秒】92 - Nil coalescing

0x00 Lesson The nil coalescing operator unwraps an optional and returns the value inside if there is one. If there isn’t a value - if the optional was nil - then a default value is used instead. Either way, the result won’t be optional: it will either b…...

python pip安装的包的路径

以ubuntu为例从一个店家那里拿到的一个ubuntu环境中,同时安装了python3.6和python2.7,又安装了ros,最后pip安装包的位置很混乱,安装的包不知道安装在了哪里。使用vscode的时候需要代码提示,就得找到包的路径&#xff0…...

个人收藏学习

【默认收藏夹】 CompletableFuture使用详解(全网看这一篇就行) 从头开始学MySQL-------存储过程与存储函数(4) 聊聊支付流程的设计与实现逻辑 聊聊消息中心的设计与实现逻辑 SpringBoot2 整合JTA组件,多数据源事务管理…...

【C++】类和对象---需掌握的功能

目录1.初始化列表1.1构造函数赋值1.2初始化列表格式:编译器执行的顺序:特性:1.3explicit关键字类型替换过程多参数构造函数类型替换(C11)2.static成员编程题3.匿名对象4.友元4.1友元函数4.2友元类5.内部类6.拷贝对象时…...

2.12、进程互斥的软件实现方法

学习提示: 理解各个算法的思想、原理结合上小节学习的 “实现互斥的四个逻辑部分”,重点理解各算法在进入区、退出区都做了什么分析各算法存在的缺陷(结合 “实现互斥要遵循的四个原则” 进行分析) 1、单标志法 算法思想:两个进…...

Java面试题-数据库

数据库相关 MySQL的索引使用 默认会有主键索引。 索引分类:单值索引、复合索引、唯一索引 详细文章 MySQL explain 分析 MySQL通过explain关键字分析SQL的执行计划。(Oracle通过EXPLAIN PLAN FOR sql) IDSELECT_TYPETABLEPARTITIONSTYPEPOSS…...

select 与 where、group by、order by、limit 子句执行优先级比较

当 select 和 其他三种语句的一者或者多者同时出现时,他们之间是存在执行先后顺序的。 他们的优先级顺序是:where > group by > select > order by > limit 目录 1、select 与 where 2、group by 与 where 、select 2、select 与 order…...

【Docker】用开源umami监控你的站点访问量

新年到,祝大家兔年吉祥!🎉 1.介绍 umami是一个开源的站点访问量监看程序,其支持docker部署到自己的服务器上。相比较百度等收费的网站信息监看,这种方式对于小站长来说更加实惠一些 2.docker安装的坑 2.1 docker-co…...

java环境配置

java环境配置步骤下载jdk安装jdk配置环境变量通过控制台命令验证配置是否成功大功告成安装教程: https://blog.csdn.net/m0_37220730/article/details/103585266 下载jdk 若不理解JDK/JRE/JVM的关系,可以点此查看初识Java(概念、版本迭代、…...

Linux系统服务:Apache安装及配置应用

目录 一、Apache安装 1、Apache简介 2、Yum安装 3、编译安装 4、服务管理 5、编译安装实现systemctl服务管理 二、Apache配置应用 1、基础应用 2、隐藏版本号 3、更改监听端口 一、Apache安装 1、Apache简介 Apache即阿帕奇是一款开源的、世界使用排名第一的Web服务…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

ServerTrust 并非唯一

NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

2025盘古石杯决赛【手机取证】

前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来&#xff0c;实在找不到&#xff0c;希望有大佬教一下我。 还有就会议时间&#xff0c;我感觉不是图片时间&#xff0c;因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...