怎样ubuntu环境下编译内核详解

怎样ubuntu环境下编译内核详解,第1张

步骤/方法

一、下载源代码和编译软件的准备

下载内核源代码:http://wwwkernelorg/

注意,点击2625内核的F版,即完整版。

如果你懒得去网站点联接,运行下列命令:

代码:$cd ~$ wget http://wwwkernelorg/pub/linux/kernel/v26/linux-262510tarbz2

安装有关编译程序。安装make ,gcc, make-kpkg,运行menuconfig等等和编译内核相关的工具。安装不了,请检查/etc/apt/sourceslist 文件。有关命令:代码:$sudo apt-get install build-essential kernel-package libncurses5-dev

二、解压源代码注意,网上很多教程上说应该解压到 /usr/src,纯属以讹传讹,linux掌门人linus说解压到任何目录上都可以。当然,linus的说法是正确的。我放在自己的主目录下的src目录。如果你下载源代码是放到自己的主目录下或者运行上面的wget下载的,那么运行下列命令:代码:$ cd ~$ mkdir src && tar jfx linux-262510tarbz2 -C src/现在,源代码就在 ~/src/linux-262510进入源代码的目录,准备下一步的工作。后面都在这个目录里面进行。代码:$ cd ~/src/linux-262510

三、开始编译前的准备工作。首先,清理以前编译时留下的临时文件。如果是刚刚解开的包,不需要执行这步。如果是第二次或者是第n次编译,那么一定要执行。相关命令如下:代码:$ sudo make mrproper网上很多教程上说把现在使用的内核的config拷贝过来参考,据实验,是不需要的,ubuntu还有debian会自动做这步。不过这条命令倒是可以学习一下。当然你可以将以前的配置拷贝过来。命令:代码:cp /boot/config-`uname -r` /config

四、开始配置内核选项。相关命令:代码:$sudo make menuconfig配置用到的键只有几个,esc退出菜单;空格改变选项状态;光标键上下左右移动,回车选定。选项意义:M是编译成可以随时加入的模块,是编译进入内核,空就是不要。配置选项非常多,具体配置可以参考金步国先生翻译的资料:Linux 2619x 内核编译配置选项。参考网址:http://lamplinuxgovcn/Linux/kernel_optionshtml为了一次成功,请大家遵循一个原则,如果你自己使用的内核已经选用了某个选项,如果你没用充分的理由,不要随便改动。这样虽然内核不那么精简,但是不容易出现问题。我们可以精简的部分是硬件模块部分,对于自己没有的硬件要毫不犹豫的清除。如果你很执着,或者你有洁癖,你也可以一项项对过去,按照金步国先生的资料描述去选择基本上没有问题。

五、必须强调的几个选项:1、

在“General setup”里面的“Prompt for development and/or incomplete

code/drivers”金步国认为是不需要。但是如果你的硬件比较新,那几乎是必须选的,这样,我们才可以找到4965无线网卡,alsa声音驱动等

等。Kernel log buffer size 我选15,双核。如果你用ia64,要选16。Control Group support 集群支持?可以不要Choose SLAB allocator (SLUB (Unqueued Allocator)) 内存管理模式slab和slub选择slub。

2、在“Block layer”里,假如没有2TB的硬盘,就去掉:Support for Large Block Devices 。Support for Large Single Files 也不需要,谁有2TB的文件?

3、Processor type and features中是关于cpu的,要认真选。Symmetric multi-processing support是打开多核的开关,我的cpu是双核的,选中。Processor family (Core 2/newer Xeon) 我的是Core 2/newer Xeon。找到自己的cpu后,把Generic x86 support选项取消。Subarchitecture Type 选(PC-compatible)Maximum number of CPUs 输入自己的核心数目,我输入2。SMT (Hyperthreading) scheduler support说的是超线程技术,P4有支持的,我的t8100不支持,目前大部分市场上的家用cpu都不支持。High Memory Support (4GB) 1G以下选1G;我是3G,选4G;4G以上的选16G在“ Timer frequency ”里,默认是250Hz,较新的cpu都可以选择了1000Hz,性能更好。

4、Power management options中把APM (Advanced Power Management) BIOS support关闭。现在的电脑都用acpi了。CPU Frequency scaling 是笔记本cpu节电技术Default CPUFreq governor (conservative) cpu节电模式有四个,笔记本默认选conservative比较好。ACPI Processor P-States driver 必须选,不然CPU Frequency就不能用。后面的可选自己硬件相关的,我选的是Intel Enhanced SpeedStep和 Intel Speedstep on ICH-M chipsets,其他的统统消灭。

5、Bus options的选择:Bus options (PCI, PCMCIA, EISA, MCA, ISA)PCI support PCI Express support 现在新买的机器基本上都是PCI Express了ISA support 较新的新机器没有ISA设备,可以去掉MCA support 去掉NatSemi SCx200 support 去掉PCI Hotplug Support Support for PCI Hotplug (EXPERIMENTAL) 如果没有PCI热插拔设备,去掉这里的选项可以考虑全部编译进内核,而不是以模块形式存在。

6、Device Drivers是重点,由于linux不但面向个人工作站,更多的是面向服务器的应用,所以可以把自己机器上没有的硬件全部去掉,而不用面面俱到。但是通用型的选项要慎重。比如在网卡的部分,除了我的千兆网卡 Broadcom Tigon3 support和4965无线网卡Intel Wireless WiFi 4965AGN,其余的硬件支持统统去掉。再比如声卡部分,我的是hd声卡,我只是在PCI devices中,选intel hd 声卡,再选Build IDT/Sigmatel HD-audio codec support,除此之外的硬件支持全部去掉。

声卡还有一个细节,在ubuntu710里面, 需要在/etc/modprobed/alsa-base后面添加options

snd-hda-intel probe_mask=1

model=3stack,这样我的笔记本喇叭才可以发声,不然只有外接耳机或者音箱。这次编译以后,这个动作就不必了,但是两个耳机插口只有一个可以用

了。再比如我的电脑中没有agp,就可以直接把agp相关的选项全部取消。要注意的:ATA/ATAPI/MFM/RLL support Include IDE/ATA-2 DISK support 如果你的/boot是放在IDE硬盘上,那么这里一定要选*,选M都不行。否则启动时会出现“waiting for root file system”的提示而停滞不前。 SCSI emulation support 要用刻录机,必须选。SCSI device support 现在都是SATA硬盘,一定要选* SCSI disk support 如果你的/boot放在SATA硬盘上,一定要选*。

SCSI CDROM support 虽然康宝刻录机是ide接口的,但是必须把它当成scsi接口的,这是老问题了。用刻录机,必须选。

Graphics supportSupport for frame buffer devices 选中,进入选择 VESA VGA graphics support 选上,不然字符界面启动会有问题,后面的显卡选择:由于我的显卡是nvidia 8400gs,要自己安装nvidia公司的驱动,所以一个都没有选。这样导致ubuntu开机动画会出问题,我索性在grub中的splash字符全部删除,把开机动画关闭。字符界面很正常。 Console display driver support 有人开机后字符控制台错误,就是这部分选项没有选,出问题了。 Framebuffer Console support 需要打开。

Bootup logo 开机图标,会在自检的画面上加上个性图标。需要在grub上添加“vga=”的选项,可以参考http://dotimescom/articles /t23-slackware-framebufferhtml7、File systemsFilesystem in Userspace support 简称fuse。是必选的,如果你要用windows分区。

CD-ROM/DVD Filesystems ISO 9660 CDROM file system support 一般选*DOS/FAT/NT Filesystems VFAT (Windows-95) fs support 有FAT32分区就选*吧 NTFS file system support 有NTFS分区就选*吧 NTFS write support 如果想对 NTFS分区进行写操作,选*必须将启动盘的文件系统编译进内核,默认是编译成模块,这样无法启动系统。ubuntu采用的文件系统是ext3,请把ext2,ext3相关的必要选项都编译进入内核。

8、Virtualization这个大类是我多花几百元买t8100的主要原因,因为t8100支持intel vt技术使linux上的虚拟机的性能大幅度提高。这里的选项我除了amd的,其他都编译成模块。

9、全部设置完成,最后一项是保存设置。按照我的习惯,先在上一层目录保存一个备份,文件名类似 /config20080630然后再保存到当起目录,文件名 config退出设置程序。

六、开始编译内核。ubuntu的工具是make-kpkg,和其他的发行版相比,步骤相对简单。相关命令:代码:$sudo make-kpkg clean 这条命令好像不要超级权限,很多资料上说要,不过这不是原则问题。

$ sudo make-kpkg -initrd --initrd --append-to-version=dell1400 kernel_image kernel-headers上述命令中的dell1400可以用自己喜欢的字符代替,最后的字符一定是数字输完上述命令回车之前,建议大家把浏览器还有别的运用程序都关掉,机器开始的工作比较艰苦。

我的机器大概十几分钟。

七、安装内核编译完成就是安装工作。编译好的内核在上一层目录。包括linux-headers--_i386deb和linux-image--i386deb两个文件,如果你不搞开发的话,只要安装内核就可以,头文件以后要用的时候再说。安装相关命令:

代码:$ cd $ sudo dpkg -i linux-image-(按tab键)文件名很长,如果不用tab自动补足是不可能的,tab键万岁。安装完成后和老内核比较一下大小代码:

$ ls -l /boot/

八、重新启动验证新内核。代码:$ sudo reboot

九、显卡驱动如果你的显卡和我一样是nvidia显卡,启动之后往往无法正常进入x-window。即使能看到gdm登录界面,效果也是很差的。那么就要安装nvidia驱动。用ctrl+alt+f1 进入字符命令行,输入用户名,密码登录。命令:代码:下载驱动$ wget http://usdownloadnvidiacom/XFree86/Linux-x86/1731412/NVIDIA-Linux-x86-1731412-pkg1run$sudo -s输入密码取得超级权限。#ps ax看看和gdm相关的进程,把这些进程全部关闭;用sudo /etc/initd/gdm stop有可能有一个进程没有关闭:#kill 进程号然后安装nvidia显卡驱动,当然驱动要先下好,到nvidia驱动所在的目录里,运行:# sh /NVIDIA-Linux-x86-1731412-pkg1run重新启动以后就ok。要用nvidia的驱动,每次升级内核都要这么做。

十、无线网卡相关的内核选项是Networking --->Wireless --->Generic IEEE 80211 Networking Stack (mac80211)还有4965的驱动。4965

无线网卡驱动虽然已经编入内核,但没有firmware无法使用。需要把原来内核的firmware拷贝到新内核对应的目录,名字和内核一致,我的内核是

linux-image-262510dell1400,那建的目录名就是262510dell1400。代码:具体命令:$ cd /lib/firmware/$ sudo mkdir 262510dell1400把你的老内核中的4965的firmware拷贝过来。$ sudo cp 2624-16-generic/ 262510dell1400/上面的命令和下面的命令是等价的:$ cd /lib/firmware/$ sudo cp -R 2624-16-generic/ 262510dell1400/

重新启动系统,无线网卡就正常了。

附编译使用的机器配置:dell vostro 1400,t8100,nvidia 8400cs显卡,内置SigmaTel STAC9228芯片的声卡,4965无线网卡,BCM5906M千兆网卡,3G内存,160G硬盘,combo刻录。

编译系统版本:ubuntu 804桌面版

你可以先按照我这个文章的方法,安装Ubuntu 系统中的Android环境。

http://wenkubaiducom/view/5408ed6b0b1c59eef8c7b428html

确保模拟器可以运行

再把你对应的rom文件,如:target\product\generic\systemimg 复制到模拟器对应的rom目录下,如:android-sdk\system-images\android-15\armeabi-v7a,覆盖同名的文件,覆盖之前记得先备份你之前的文件,方便你要用原始的模拟器。

内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。Linux作为一个自由软件,

在广大爱好者的支持下,内核版本不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定

制一个更高效,更稳定的内核,就需要重新编译内核。本文将以RedHat Linux 60(kernel

225)为操作系统平台,介绍在Linux上进行内核编译的方法。

  一、 下载新内核的源代码

  目前,在Internet上提供Linux源代码的站点有很多,读者可以选择一个速度较快的站点下载。笔者是从站点wwwkernelnotesorg上下载了Linux的最新开发版内核2314的源代码,全部代码被压缩到一个名叫Linux-2314targz的文件中。

  二、 释放内核源代码

  由于源代码放在一个压缩文件中,因此在配置内核之前,要先将源代码释放到指定的目录下。首先以root帐号登录,然后进入/usr/src子目录。如果用户在安装Linux时,安装了内核的源代码,则会发现一个linux-225的子目录。该目录下存放着内核225的源代码。此外,还会发现一个指向该目录的链接linux。删除该连接,然后将新内核的源文件拷贝到/usr/src目录中。

  (一)、用tar命令释放内核源代码

  # cd /usr/src

  # tar zxvf Linux-2314targz

  文件释放成功后,在/usr/src目录下会生成一个linux子目录。其中包含了内核2314的全部源代码。

  (二)、将/usr/include/asm、/usr/inlude/linux、/usr/include/scsi链接到/usr/src/linux/include目录下的对应目录中。

  # cd /usr/include

  # rm -Rf asm linux

  # ln -s /usr/src/linux/include/asm-i386 asm

  # ln -s /usr/src/linux/include/linux linux

  # ln -s /usr/src/linux/include/scsi scsi

  (三)、删除源代码目录中残留的o文件和其它从属文件。

  # cd /usr/src/linux

  # make mrproper

  三、 配置内核

  (一)、启动内核配置程序。

  # cd /usr/src/linux

  # make config

  除了上面的命令,用户还可以使用make menuconfig命令启动一个菜单模式的配置界面。如果用户安装了X window系统,还可以执行make xconfig命令启动X window下的内核配置程序。

  (二)、配置内核

  Linux的

内核配置程序提供了一系列配置选项。对于每一个配置选项,用户可以回答"y"、"m"或"n"。其中"y"表示将相应特性的支持或设备驱动程序编译进内

核;"m"表示将相应特性的支持或设备驱动程序编译成可加载模块,在需要时,可由系统或用户自行加入到内核中去;"n"表示内核不提供相应特性或驱动程序

的支持。由于内核的配置选项非常多,本文只介绍一些比较重要的选项。

  1、Code maturity level options(代码成熟度选项)

  Prompt for development and/or incomplete code/drivers

(CONFIG_EXPERIMENTAL) [N/y/]

如果用户想要使用还处于测试阶段的代码或驱动,可以选择“y”。如果想编译出一个稳定的内核,则要选择“n”。

  1、 Processor type and features(处理器类型和特色)

  (1)、Processor family (386, 486/Cx486, 586/K5/5x86/6x86, Pentium/K6/TSC, PPro/6x86MX) [PPro/6x86MX] 选择处理器类型,缺省为Ppro/6x86MX。

  (2)、Maximum Physical Memory (1GB, 2GB) [1GB] 内核支持的最大内存数,缺省为1G。

  (3)、Math emulation (CONFIG_MATH_EMULATION) [N/y/] 协处理器仿真,缺省为不仿真。

  (4)、MTRR (Memory Type Range Register) support (CONFIG_MTRR) [N/y/]

  选择该选项,系统将生成/proc/mtrr文件对MTRR进行管理,供X server使用。

  (5)、Symmetric multi-processing support (CONFIG_SMP) [Y/n/] 选择“y”,内核将支持对称多处理器。

  2、 Loadable module support(可加载模块支持)

  (1)、Enable loadable module support (CONFIG_MODULES) [Y/n/] 选择“y”,内核将支持加载模块。

  (2)、Kernel module loader (CONFIG_KMOD) [N/y/] 选择“y”,内核将自动加载那些可加载模块,否则需要用户手工加载。

  3、 General setup(一般设置)

  (1)、Networking support (CONFIG_NET) [Y/n/] 该选项设置是否在内核中提供网络支持。

  (2)、PCI support (CONFIG_PCI) [Y/n/] 该选项设置是否在内核中提供PCI支持。

  (3)、PCI access mode (BIOS, Direct, Any) [Any] 该选项设置Linux探测PCI设备的方式。选择“BIOS”,Linux将使用BIOS;选择“Direct”,Linux将不通过BIOS;选择“Any”,Linux将直接探测PCI设备,如果失败,再使用BIOS。

  (4)Parallel port support (CONFIG_PARPORT) [N/y/m/] 选择“y”,内核将支持平行口。

  4、 Plug and Play configuration(即插即用设备支持)

  (1)、Plug and Play support (CONFIG_PNP) [Y/m/n/] 选择“y”,内核将自动配置即插即用设备。

  (2)、ISA Plug and Play support (CONFIG_ISAPNP) [Y/m/n/] 选择“y”,内核将自动配置基于ISA总线的即插即用设备。

  5、 Block devices(块设备)

  (1)、Normal PC floppy disk support (CONFIG_BLK_DEV_FD) [Y/m/n/] 选择“y”,内核将提供对软盘的支持。

  (2)、Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support (CONFIG_BLK_DEV_IDE) [Y/m/n/] 选择“y”,内核将提供对增强IDE硬盘、CDROM和磁带机的支持。

  6、 Networking options(网络选项)

  (1)、Packet socket (CONFIG_PACKET) [Y/m/n/] 选择“y”,一些应用程序将使用Packet协议直接同网络设备通讯,而不通过内核中的其它中介协议。

  (2)、Network firewalls (CONFIG_FIREWALL) [N/y/] 选择“y”,内核将支持防火墙。

  (3)、TCP/IP networking (CONFIG_INET) [Y/n/] 选择“y”,内核将支持TCP/IP协议。

  (4)The IPX protocol (CONFIG_IPX) [N/y/m/] 选择“y”,内核将支持IPX协议。

  (5)、Appletalk DDP (CONFIG_ATALK) [N/y/m/] 选择“y”,内核将支持Appletalk DDP协议。

  8、SCSI support(SCSI支持)

  如果用户要使用SCSI设备,可配置相应选项。

  9、Network device support(网络设备支持)

  Network device support (CONFIG_NETDEVICES) [Y/n/] 选择“y”,内核将提供对网络驱动程序的支持。

  10、Ethernet (10 or 100Mbit)(10M或100M以太网)

  在该项设置中,系统提供了许多网卡驱动程序,用户只要选择自己的网卡驱动就可以了。此外,用户还可以根据需要,在内核中加入对FDDI、PPP、SLIP和无线LAN(Wireless LAN)的支持。

  11、Character devices(字符设备)

  (1)、Virtual terminal (CONFIG_VT) [Y/n/] 选择“y”,内核将支持虚拟终端。

  (2)、Support for console on virtual terminal (CONFIG_VT_CONSOLE) [Y/n/]

  选择“y”,内核可将一个虚拟终端用作系统控制台。

  (3)、Standard/generic (dumb) serial support (CONFIG_SERIAL) [Y/m/n/]

  选择“y”,内核将支持串行口。

  (4)、Support for console on serial port (CONFIG_SERIAL_CONSOLE) [N/y/]

  选择“y”,内核可将一个串行口用作系统控制台。

  12、Mice(鼠标)

  PS/2 mouse (aka "auxiliary device") support (CONFIG_PSMOUSE) [Y/n/] 如果用户使用的是PS/2鼠标,则该选项应该选择“y”。

  13、Filesystems(文件系统)

  (1)、Quota support (CONFIG_QUOTA) [N/y/] 选择“y”,内核将支持磁盘限额。

  (2)、Kernel automounter support (CONFIG_AUTOFS_FS) [Y/m/n/] 选择“y”,内核将提供对automounter的支持,使系统在启动时自动 mount远程文件系统。

  (3)、DOS FAT fs support (CONFIG_FAT_FS) [N/y/m/] 选择“y”,内核将支持DOS FAT文件系统。

  (4)、ISO 9660 CDROM filesystem support (CONFIG_ISO9660_FS) [Y/m/n/]

  选择“y”,内核将支持ISO 9660 CDROM文件系统。

  (5)、NTFS filesystem support (read only) (CONFIG_NTFS_FS) [N/y/m/]

  选择“y”,用户就可以以只读方式访问NTFS文件系统。

  (6)、/proc filesystem support (CONFIG_PROC_FS) [Y/n/] /proc是存放Linux系统运行状态的虚拟文件系统,该项必须选择“y”。

  (7)、Second extended fs support (CONFIG_EXT2_FS) [Y/m/n/] EXT2是Linux的标准文件系统,该项也必须选择“y”。

  14、Network File Systems(网络文件系统)

  (1)、NFS filesystem support (CONFIG_NFS_FS) [Y/m/n/] 选择“y”,内核将支持NFS文件系统。

  (2)、SMB filesystem support (to mount WfW shares etc) (CONFIG_SMB_FS)

  选择“y”,内核将支持SMB文件系统。

  (3)、NCP filesystem support (to mount NetWare volumes) (CONFIG_NCP_FS)

  选择“y”,内核将支持NCP文件系统。

  15、Partition Types(分区类型)

  该选项支持一些不太常用的分区类型,用户如果需要,在相应的选项上选择“y”即可。

  16、Console drivers(控制台驱动)

  VGA text console (CONFIG_VGA_CONSOLE) [Y/n/] 选择“y”,用户就可以在标准的VGA显示方式下使用Linux了。

  17、Sound(声音)

  Sound card support (CONFIG_SOUND) [N/y/m/] 选择“y”,内核就可提供对声卡的支持。

  18、Kernel hacking(内核监视)

  Magic SysRq key (CONFIG_MAGIC_SYSRQ) [N/y/] 选择“y”,用户就可以对系统进行部分控制。一般情况下选择“n”。

  四、 编译内核

  (一)、建立编译时所需的从属文件

  # cd /usr/src/linux

  # make dep

  (二)、清除内核编译的目标文件

  # make clean

  (三)、编译内核

  # make zImage

  内核编译成功后,会在/usr/src/linux/arch/i386/boot目录中生成一个新内核的映像文件zImage。如果编译的内核很大的话,系统会提示你使用make bzImage命令来编译。这时,编译程序就会生成一个名叫bzImage的内核映像文件。

  (四)、编译可加载模块

  如果用户在配置内核时设置了可加载模块,则需要对这些模块进行编译,以便将来使用insmod命令进行加载。

  # make modules

  # make modelus_install

  编译成功后,系统会在/lib/modules目录下生成一个2314子目录,里面存放着新内核的所有可加载模块。

  五、 启动新内核

  (一)、将新内核和Systemmap文件拷贝到/boot目录下

  # cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2314

  # cp /usr/src/linux/Systemmap /boot/Systemmap-2314

  # cd /boot

  # rm -f Systemmap

  # ln -s Systemmap-2314 Systemmap

  (二)、配置/etc/liloconf文件。在该文件中加入下面几行:

  default=linux-2314

  image=/boot/vmlinuz-2314

  label=linux-2314

  root=/dev/hda1

  read-only

  (三)、使新配置生效

  # /sbin/lilo

  (四)、重新启动系统

  # /sbin/reboot

  新内核如果不能正常启动,用户可以在LILO:提示符下启动旧内核。然后查出故障原因,重新编译新内核即可。

了解更多开源相关,去LUPA社区看看吧。

如果我没理解错的话,你的“linux

内核”是针对PC,intel处理器;“linux

ROM”是针对移动设备(比如adnroid

内核),ARM处理器。那区别就是编译器把内核翻译成intel能懂的机器语言,还是arm能懂得,他们架构完全不一样以及使用完全不同的指令集。

//////////////////////////////////////////////////////////////////////////////

android内核是指google

基于linux

kernel定制的操作系统内核,主要添加了一些android设备驱动,是具备跨平台能力的源码;android

ROM是指编译好的整个android操作系统,不光光是内核了,还有外围的一些库,等等;andriod源码是指整个android

操作系统的源码,包括内核,各种库,java层封装,sdk等等。

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/1244955.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-09-08
下一篇2023-09-08

随机推荐

  • 三天瘦腿的最快方法

    1、马步操,两脚张开,双脚间步幅稍大于肩宽,上身下沉做马步状,两脚踮起。2、空中脚踏车操,平躺,在空中踩脚踏车;瘦腿按摩术,用精油或霜,双手交替分别沿内侧和外侧由脚踝向大腿根部按摩,双腿向挤毛巾一样,按摩两腿肌肉,双手交替用力,拍打大腿赘肉

    2024-04-15
    42400
  • 《30天精读MBA世界知名商学院12门课程精华(第四版)》pdf下载在线阅读,求百度网盘云资源

    《30天精读MBA》(科林巴罗)电子书网盘下载免费在线阅读链接:https:panbaiducoms1skoLrukGN9vOHsjOjz_SUw 密码:dzlq    书名:30天精读MBA作者:科林巴罗豆瓣评分:67出版社:中信

    2024-04-15
    31400
  • 精华液和精华露有什么区别?哪种精华露好用?

    精华液:适用于油性肤质,宜放在小瓶中,随时取用。精华露:适用于中性、干性肤质,比精华液稍浓,水、油成分比例适中。精华露按成分大致可以分成这几类:动物精华露———油性成分(如骨胶原精华素、貂油精华素等),性质温厚,养分充足,适用于超级干性肌肤

    2024-04-15
    37000
  • 医美之后用什么护肤品?医美品牌护肤品有哪些好用?

    医美之后,一般建议使用含有抗炎、抗过敏成分的护肤品,以减轻皮肤炎症反应和过敏症状。以下是一些医美品牌护肤品,它们在抗炎、抗过敏方面表现良好: 绽媄娅水乳:由第四军医大学研发,适合痘肌、敏感肌、激素脸的水乳,不仅修复屏障还添加了抗炎抗过敏成分

    2024-04-15
    33700
  • 精华素和精华液有什么区别

    精华素的质地比精华液稀薄,更容易被肌肤所吸收。精华素与精华液都是美容护肤常用到的产品,但是精华液的质地比精华素厚重,涂抹上脸后需要较长的时间才能被肌肤所吸收,而分子较小的精华素却很容易被肌肤吸收进去。精华素与精华液的共同点很多,比如美白、保

    2024-04-15
    32100
  • 精华露和保湿露的区别

    精华液是护肤品中有效含量最高的,同时也是效果最好的,一般精华液都比较贵,欧美的动辄都是几千块,国产的也要好几百。但是这些都真的好用吗?其实很多精华液并没有那么好,相反有些不太知名的精华液倒是效果非常的好,后来才知道,好用是有道理的,比如研发

    2024-04-15
    25800
  • 最温和的洗面奶有哪些

    1、迪蕾氨基酸洁面泡泡 100ml线下销量第一洗颜专科洁面泡泡配方极度温和,采用目前最温和的日本进口氨基酸成分。不含皂基,不含表面活性剂,pH值接近人体的弱酸性,一挤出来就是绵密的泡泡,能清洁毛孔深处的污垢,脸上粗大的毛孔也变得细致,用完一

    2024-04-15
    27100

发表评论

登录后才能评论
保存