启用的服务

systemctl list-unit-files --type=service | grep enabled

所有服务

systemctl list-unit-files --type=service

查看哪个服务进程启动耗时最长

systemd-analyze blame

查看开放端口

systemctl list-sockets

netstat

ss

centos 默认只有netstat命令

manjaro 默认只有ss命令

fedora 默认都有...

列出所有已安装

dnf list installed

=====================

https://www.howtoing.com/things-to-do-after-fedora-26-installation

https://www.howtoing.com/dnf-commands-for-fedora-rpm-package-management/
在Linux中RPM软件包管理的27个'DNF'(Yum Fork)命令

https://www.linuxprobe.com/things-install-fedora-24.html
https://fedoraproject.org/wiki/主要配置文件

====================

Screenfetch是一个适用于Linux的bash脚本,用于显示系统信息及ASCII化的Linux发行版图标。

bash-4.4$ screenfetch
/:-------------:\ tom@tomf
:-------------------:: OS: Fedora 29 TwentyNine
:-----------/shhOHbmp---:\ Kernel: x86_64 Linux 4.20.14-200.fc29.x86_64
/-----------omMMMNNNMMD ---: Uptime: 1h 9m
:-----------sMMMMNMNMP. ---: Packages: 1711
:-----------:MMMdP------- ---\ Shell: bash
,------------:MMMd-------- ---: Resolution: 2720x900
:------------:MMMd------- .---: DE: GNOME
:---- oNMMMMMMMMMNho .----: WM: GNOME Shell
:-- .+shhhMMMmhhy++ .------/ WM Theme: Adwaita
:- -------:MMMd--------------: GTK Theme: Adwaita [GTK2/3]
:- --------/MMMd-------------; Icon Theme: Adwaita
:- ------/hMMMy------------: Font: Cantarell 11
:-- :dMNdhhdNMMNo------------; CPU: Intel Core2 Duo T8300 @ 2x 2.401GHz [40.0°C]
:---:sdNMMMMNds:------------: GPU: Mesa DRI Intel(R) 965GM
:------:://:-------------:: RAM: 2581MiB / 7966MiB
:---------------------://

bash-4.4$ ^C

================================

参考这里,删除不必要的软件,停用不必要的服务。

详见原文:https://segmentfault.com/a/1190000006232278

abrt
gnome-software
evolution
gnome-abrt
gnome-weather
gnome-contacts
gnome-maps
gnome-clocks
gnome-documents
gnome-screenshot
gnome-disk-utility
baobab
gvfs-goa
cheese
vinagre
open-vm-tools-desktop
xorg-x11-drv-vmware
lvm2
PackageKit-glib
chrony
firewalld
samba-client
samba-common
setroubleshoot
shotwell
rhythmbox
totem
如果你在删除某个软件包的时候,发现它所依赖的软件包中有 gnome-shell 或 mutter 时,
如果你想重启机器后还能进入桌面,那你就应该放弃对这个软件包的删除操作。

移步 /etc/xdg/autostart 目录里逛了一圈,感觉我也可以像两千多年前的苏格拉底那样来感慨一下,
这个世界上,竟然有这么多东西是我不需要的啊!
$ sudo rm at-spi-dbus-bus.desktop \
orca-autostart.desktop \
caribou-autostart.desktop \
spice-vdagent.desktop \
evolution-alarm-notify.desktop \
tracker-extract.desktop \
gnome-initial-setup-copy-worker.desktop \
tracker-miner-apps.desktop \
gnome-initial-setup-first-login.desktop \
tracker-miner-fs.desktop \
gnome-keyring-pkcs11.desktop \
tracker-miner-rss.desktop \
gnome-keyring-ssh.desktop \
tracker-miner-user-guides.desktop \
gnome-welcome-tour.desktop \
tracker-store.desktop \
liveinst-setup.desktop \
vmware-user.desktop \
sealertauto.desktop

我又查看了一下 systemd 运行的的服务,也可以关掉一批:
$ sudo systemctl disable bluetooth.service \
firewalld.service \
accounts-daemon.service \
ModemManager.service \
abrtd.service \
abrt-ccpp.service \
lvm2-monitor.service \
packagekit.service \
gssproxy.service \
avahi-daemon.service \
colord.service \
chronyd.service \
fedora-import-state.service \
livesys-late.service \
livesys.service \
libvirtd.service \
auditd.service

继续关掉一些我不需要的服务(去 /etc/systemd/system 目录实地考察后确定):
$ sudo systemctl disable abrt-{oops,vmcore,xorg}.service \
hyper{vfcopyd,vkvpd,vvssd}.service \
vmtoolsd.service \
nfs-client.target remote-fs.target \
spice-vdagentd.service \
cups.service \
lvm2-{lvmetad,lvmpolld}.socket \
dmraid-activation.service

===============================

更新后删除旧的内核

https://www.linuxidc.com/topicnews.aspx?tid=5

$ uname -a
Linux tomf 4.20.14-200.fc29.x86_64 #1 SMP Tue Mar 5 19:55:32 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

$ rpm -qa |grep kernel  ##查询所有内核,有两个版本的
libreport-plugin-kerneloops-2.10.0-1.fc29.x86_64
kernel-modules-4.20.14-200.fc29.x86_64
kernel-4.20.14-200.fc29.x86_64
kernel-core-4.20.14-200.fc29.x86_64
abrt-addon-kerneloops-2.12.0-2.fc29.x86_64
kernel-headers-4.20.14-200.fc29.x86_64

dnf list installed kernel*

sudo dnf remove kernel-4.18.16-300.fc29.x86_64    ##删除低版本的
sudo dnf remove kernel-core-4.18.16-300.fc29.x86_64

更新启动项目

===========================

使用DNF删除孤立包
如果没有被其他应用程序使用,那些被安装以满足依赖性的软件包可能是无用的。要删除这些孤立软件包,请执行以下命令。
# dnf autoremove

使用DNF删除缓存包
很多时候,我们遇到过时的标头和未完成的事务,导致执行dnf时出错。我们可以通过执行来清理所有缓存的包和包含远程包信息的头。
# dnf clean all

======================

Fedora瘦身的更多相关文章

  1. Drawable实战解析:Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)

    Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...

  2. Android APK瘦身之Android Studio Lint (代码审查)

    ******** ******** 第一部分: 瘦身内容介绍 ******** ******** 项目新版本的迭代接近尾声, 因为历史累积问题, 导致有很多无效的资源让已经臃肿的APK变得更肿, 因此 ...

  3. 【直播】APP全量混淆和瘦身技术揭秘

    [直播]APP全量混淆和瘦身技术揭秘 近些年来移动APP数量呈现爆炸式的增长,黑产也从原来的PC端转移到了移动端,通过逆向手段造成数据泄漏.源码被盗.APP被山寨.破解后注入病毒或广告现象让用户苦不堪 ...

  4. APK瘦身记,如何实现高达53%的压缩效果

    作者:非戈@阿里移动安全 1.我是怎么思考这件事情的 APK是Android系统安装包的文件格式,关于这个话题其实是一个老生常谈的题目,不论是公司内部,还是外部网络,前人前辈已经总结出很多方法和规律. ...

  5. iOS可执行文件瘦身方法

    缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源.这些资源优化做完后,我们还可以尝试对可执行文件进行瘦身,项目越大,可执行文件占用的体积越大 ...

  6. 清理iOS工程里无用的图片,可瘦身ipa

    工程在经过多人后,往往会出现较多的垃圾,导致打包出来的ipa文件偏大,有时候我们会通过清理代码来给程序瘦身,而瘦身ipa效果明显的,主要通过清理程序里的无用图片. 推荐一个清理图片的应用 https: ...

  7. iOS - Bitcode App 瘦身中间码

    1.Bitcode 随着 Xcode7 的发布,Apple 提供了一项新的技术来支持 App 瘦身功能,那就是 Bitcode. 1.BitCode 是什么 Bitcode is an interme ...

  8. iOS架构师之路:控制器(View Controller)瘦身设计

    前言 古老的MVC架构是容易被iOS开发者理解和接受的设计模式,但是由于iOS开发的项目功能越来越负责庞大,项目代码也随之不断壮大,MVC的模糊定义导致我们的业务开发工程师很容易把大量的代码写到视图控 ...

  9. 利用 Android Gradle 瘦身 apk

    http://devyang.me/blog/2014/11/11/li-yong-android-gradleshou-shen-apk/ apk瘦身一般有两条线, 去除无用的代码,例如引用一个比较 ...

随机推荐

  1. RWCString 定义 memeroy leak

    代码截取片段: testDefs.hh class testDefs { public: static const RWCString testStr; }; testDefs.cc const RW ...

  2. linux下sed命令详解

    sed:Stream Editor文本流编辑,sed是一个“非交互式的”面向字符流的编辑器.能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上 ...

  3. Win10系列:JavaScript 的 WinJS库

    WinJS 库是由 CSS 和 JavaScript 文件组成的.使用Visual Studio 2012新建一个JavaScript 的Windows应用商店的空白应用程序项目,在项目的引用管理器中 ...

  4. 【oracle】一些的常用命令

    命令行连接oracle sqlplus  回车 分别输入用户名和密码 命令行重启oracle数据库 sqlplus /nolog conn 账号/密码 as sysdba shutdow immedi ...

  5. Yii2.0 数据库查询 [ 2.0 版本 ]

    下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...

  6. 深入理解java虚拟机----java技术体系(一)

    1.java技术体系 举例: class文件格式:如下图所示,java源代码可以根据不同的编译器可以编译成不同的代码.即可以自定义语言规范比如beanshell,并编写代码; 然后自己编写java编译 ...

  7. IIC协议解释(转)

    IIC协议解释 推荐资源: http://m.elecfans.com/article/574049.html       and       https://blog.csdn.net/firefl ...

  8. Map的isEmpty()与==null的区别

    isEmpty()方法判断Map是否有内容(即new分配空间后是否put键值对),若没有内容则true,否则false == null是判断map是否为null(即是否new分配空间,和其中的键值对没 ...

  9. Linux文件系统命令 split

    命令:split 功能:将文件按照一定的规则进行切割 用法:-l 表示按照行数进行切割. -b 表示按照字节进行切割,切割后的文件名为自己定义的文件名+aa,ab,ac类似的后缀. eg: 按照行数进 ...

  10. Oracle包和包体

    一.什么要使用包? 在一个大型项目中,可能有很多模块,而每个模块又有自己的过程.函数等.而这些过程.函数默认是放在一起的(如在PL/SQL中,过程默认都是放在一起 的,即Procedures中),这些 ...