目录

1.软件包管理

2.文件的压缩和打包

文件的压缩:压缩的对象是文件,并且压缩之后源文件不存在

文件的归档:归档的对象是目录(把文件弄在一个目录下),并将目录变成了一个文件)

3.链接文件的创建

4.进线程管理浅述(详情请看同博客进线程)

各个列代表的意义:

ps 命令 可以显示进程的动态

常见的参数:

top:监视进程(动态的监视),按q按键退出

pstree:以树状图的形式显示进程


1.软件包管理

Ubuntu有两种类型的软件包:二进制软件包(deb),源码包(deb-src)

dpkg(基本很少用,一般用APT):最早的deb包管理工具,可以实现软件包的安装,编译,卸载,查询等,但是没有解决软件包的依赖关系。

dpkg -i 软件包,安装一个在本地文件系统存在的软件包

dpkg -r 软件包,移除已经安装的软件包

dpgk -P 软件包 ,移除已经安装软件包及配置文件

dpkg -L 软件包 列出安装的软件包清单

dpkg -s 软件包 显示软件包的安装状态

APT:是Ubuntu中功能最强大的命令软件包管理工具。,能够有效的解决软件的依赖问题

查看软件源:

cat /etc/apt/sources.list

apt-get:用于管理软件包,包括安装,卸载等操作

1.更新源

sudo apt-get update        //超级管理员下可以不要          sudo

2.下载安装

sudo apt-get install 软件名

sudo apt-get install -f 软件名 强制安装

sudo apt-get install sl;跑火车游戏

sudo apt-get install bastet 安装俄罗斯方块

sudo apt-get install oneko 追鼠

sudo apt-get install cmatrix 代码雨;

3.卸载:

sudo apt-get remove 软件名

4.把所有下载的软件包全部清除

sudo apt-get clean                删除包缓存中的所有包

5.只下载不安装

sudo apt-get download  软件压缩包名(权限不够再试一次)

6.获取软件包源码

sudo apt-get source 软件名

liu@ubuntu:~/下载$ sudo apt-get install sl
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:linux-headers-5.13.0-35-genericlinux-hwe-5.13-headers-5.13.0-35 linux-image-5.13.0-35-genericlinux-modules-5.13.0-35-genericlinux-modules-extra-5.13.0-35-generic
使用'sudo apt autoremove'来卸载它(它们)。
下列【新】软件包将被安装:sl
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 191 个软件包未被升级。
需要下载 12.7 kB 的归档。
解压缩后会消耗 60.4 kB 的额外空间。
获取:1 http://mirrors.aliyun.com/ubuntu focal/universe amd64 sl amd64 5.02-1 [12.7 kB]
已下载 12.7 kB,耗时 0秒 (77.4 kB/s)
正在选中未选择的软件包 sl。
(正在读取数据库 ... 系统当前共安装有 223522 个文件和目录。)
准备解压 .../archives/sl_5.02-1_amd64.deb  ...
正在解压 sl (5.02-1) ...
正在设置 sl (5.02-1) ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...

查看使用 sudo apt-get install安装后的软件位置

第一种方法:dpsk -L softwarename

例如: dpsk -L sl

第二种方法:安装 apt-file,用 apt-file来查看

命令:

sudo apt-get install apt-file

apt-file list softwarename

2.文件的压缩和打包

文件的压缩:压缩的对象是文件,并且压缩之后源文件不存在

gzip 文件名 ->.gz        压缩速度最快,但是压缩率最小(前提:文件足够大)

解压:

gunzip 压缩文件名

bzip2 文件名 ->.bz2         压缩速度次之,压缩率次之

解压:

bunzip2 压缩文件名

xz 文件名 ->.xz        压缩速度最慢,压缩率最大

解压:

unxz 压缩文件名

文件的归档:归档的对象是目录(把文件弄在一个目录下),并将目录变成了一个文件)

tar命令主要是将若干个文件或者目录合并成一个文件

选项:

-c:创建一个新的归档文件

-x:释放归档文件

-v:显示归档和释放的过程信息

-f:用户指定归档文件的文件名

-z:由tar生产归档,由gzip来压缩

-j:由tar生产归档,然后由bzip2来压缩

-J:由tar生产归档,然后由xz来完成压缩

举例:

1.创建一个归档文件

tar -cvf 归档名 归档的文件名

2.创建归档文件并且进行压缩

tar -czvf  归档名(最好加上 .gz)     归档的文件名(多个文件可并列,即 t1 t2 t3)

tar -cjvf  归档名(最好加上 .bz2)    归档的文件名(多个文件可并列,即 t1 t2 t3)

tar -cJvf 归档名(最好加上 .xz)   归档的文件名(多个文件可并列,即 t1 t2 t3)

解压:

tar -xzvf    归档名(如tt.gz)

tar -xjvf    归档名(如tt.bz2)

tar -xJvf   归档名(如tt.xz)

参数除了f选项之外其他的都可以交换顺序

root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2  t2.c
root@ubuntu:/Liunx/liunx# tar -cvf tt t1 t2 t1.c t2.c
t1/
t2/
t1.c
t2.c
root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2  t2.c  tt
root@ubuntu:/Liunx/liunx# mv tt t1
root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2  t2.c  tt.gz
root@ubuntu:/Liunx/liunx# cd t1
root@ubuntu:/Liunx/liunx/t1# ls
tt
root@ubuntu:/Liunx/liunx/t1# tar -xvf tt
t1/
t2/
t1.c
t2.c
root@ubuntu:/Liunx/liunx/t1# ls
t1  t1.c  t2  t2.c  tt

用gzip压缩归档:

root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2.c
root@ubuntu:/Liunx/liunx# tar -czvf tt.gz t1.c t2.c
t1.c
t2.c
root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2.c  tt.gz
root@ubuntu:/Liunx/liunx# mv tt.gz t1
root@ubuntu:/Liunx/liunx# ls
t1  t1.c  t2.c
root@ubuntu:/Liunx/liunx# cd t1
root@ubuntu:/Liunx/liunx/t1# ls
tt.gz
root@ubuntu:/Liunx/liunx/t1# tar -xzvf tt.gz
t1.c
t2.c
root@ubuntu:/Liunx/liunx/t1# ls
t1.c  t2.c  tt.gz

3.链接文件的创建

软链接:软连接有点类似于Windows中快捷方式

ln -s 源文件 链接文件

注意:

1.软链接文件创建的时候,源文件不变,链接数量也不变(下个代码段的倒数第三、五行 权限后面那个数字),可以对同一个源文件创建多个软链接文件

root@ubuntu:/Liunx/liunx# touch t1.c
root@ubuntu:/Liunx/liunx# ls
t1.c
root@ubuntu:/Liunx/liunx# ln -s t1.c t1.ln
root@ubuntu:/Liunx/liunx# ls
t1.c  t1.ln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:30 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
-rw-r--r-- 1 root root    0 4月  15 17:30 t1.c
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
root@ubuntu:/Liunx/liunx# ln -s t1.c t11.ln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:31 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
-rw-r--r-- 1 root root    0 4月  15 17:30 t1.c
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln

2.如果将源文件删除或者改变路径,软链接就断开,在相同路径下重新创建源文件,软链接又开始生效

root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln
root@ubuntu:/Liunx/liunx# rm t1.c
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.ln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:37 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
root@ubuntu:/Liunx/liunx# touch t1.c
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:37 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
-rw-r--r-- 1 root root    0 4月  15 17:37 t1.c
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c

3.软链接的文件类型是链接文件

硬链接:类似于对文件备份并起一个别名

ln 源文件 硬链接文件

root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln
root@ubuntu:/Liunx/liunx# touch t2.c
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln  t2.c
root@ubuntu:/Liunx/liunx# ln t2.c t2.lln
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.ln  t2.c  t2.lln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:39 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
-rw-r--r-- 1 root root    0 4月  15 17:37 t1.c
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
-rw-r--r-- 2 root root    0 4月  15 17:39 t2.c
-rw-r--r-- 2 root root    0 4月  15 17:39 t2.lln
root@ubuntu:/Liunx/liunx# diff t2.c t2.lln
root@ubuntu:/Liunx/liunx# diff t2.c t2.lln -yw

注意:

创建硬链接的时候,链接数量会增加(上个代码段的倒数第三、四排变为2)

硬链接文件是一个普通文件

删除源文件对硬链接文件没有影响。硬链接文件任然有效

对于一个源文件,软链接和硬链接可以同时存在,互不影响,但是不可以对软链接创建硬链接,反之却可以

root@ubuntu:/Liunx/liunx# ln t1.ln t1.lln
ln: failed to create hard link 't1.lln': File exists
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:48 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
-rw-r--r-- 2 root root    0 4月  15 17:37 t1.c
-rw-r--r-- 2 root root    0 4月  15 17:37 t1.lln
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
-rw-r--r-- 1 root root    0 4月  15 17:39 t2.lln
root@ubuntu:/Liunx/liunx# ln -s t2.lln t2.ln
root@ubuntu:/Liunx/liunx# ls
t11.ln  t1.c  t1.lln  t1.ln  t2.lln  t2.ln
root@ubuntu:/Liunx/liunx# ll
total 8
drwxr-xr-x 2 root root 4096 4月  15 17:50 ./
drwxr-xr-x 4 root root 4096 4月  15 17:29 ../
lrwxrwxrwx 1 root root    4 4月  15 17:31 t11.ln -> t1.c
-rw-r--r-- 2 root root    0 4月  15 17:37 t1.c
-rw-r--r-- 2 root root    0 4月  15 17:37 t1.lln
lrwxrwxrwx 1 root root    4 4月  15 17:30 t1.ln -> t1.c
-rw-r--r-- 1 root root    0 4月  15 17:39 t2.lln
lrwxrwxrwx 1 root root    6 4月  15 17:50 t2.ln -> t2.lln

4.进线程管理浅述(详情请看同博客进线程)

①只能同一主机发送的:无名管道(匿名)、有名管道(具名)、信号、信号量、消息队列(效率最高,对物理内存操作)

②不同主机的套接字socket(网络编程)

一个进程的虚拟内存默认分配 4G (3G用户空间、1G内核空间)

之所以分配为4G,是因为早前的32位机的一个指针长度是4个字节(32位),也就是32根地址线,而2^32次方个地址寻址恰好是4GB的大小。

虚拟内存:硬盘上的页交换文件+实际的物理内存

虚拟内存和物理内存的联系:

物理内存映射到虚拟内存,然后虚拟进程给进程分配空间,最大是4G,但是实际上可能只分配到了一个页面大小(1024,类似画大饼),等到这个页面满了才给你增加页面。不然的话 ,每个进程都分配4G,那么消耗将大大增加,有的只需要几M或者几十M,系统最终将挂掉。这个分配是由CPU操控的。等到数据被填写过后,再通过页表映射到物理内存。(这里还可以注意缓存的概念)

注意:一个进程用到的虚拟地址是由内存区域表管理的,而用到的内存区域,会通过页表映射到物理内存,所有每个进程都可以使用同样的虚拟内存地址而不冲突,这是因为它们的物理地址实际上是不同的。

注:任何快捷键都是一个进程

各个列代表的意义:

(1)USER:进程的属主;
(2)PID:进程的ID;
(3)PPID:父进程;
(4)%CPU:进程占用的CPU百分比;
(5)%MEM:占用内存的百分比;
(6)NI:进程的NICE值,数值大,表示较少占用CPU时间;
(7)VSZ:该进程使用的虚拟内存量(KB);
(8)RSS:该进程占用的固定内存量(KB)(驻留中页的数量);
(9)TT:终端名称(缩写),若为?,则代表此进程与终端无关,因为它们是由系统启动的;
(10)TTY:该进程在那个终端上运行(登陆者的终端位置),若与终端无关,则显示?。若为pts/0等,则表示由网络连接主机进程;
(11)WCHAN:当前进程是否正在进行,若为 - 表示正在进行;
(12)START:该进程被触发启动时间;
(13)TIME:该进程实际使用CPU运行的时间;
(14)COMMAND:命令的名称和参数;
(15)STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等

(16)C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高

原文链接:https://blog.csdn.net/ygl19920119/java/article/details/79286230

程序一次执行的过程就是进程。

ps 命令 可以显示进程的动态

常见的参数:

-A 列出所有的进程

-w:加宽显示所有进程

-au:显示较详细的进程信息

显示的信息有:
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND

-aux:显示所有包含其他使用者的进程信息

显示的信息有:

USER   PID    %CPU    %MEM    VSZ   RSS   TTY    STAT   START    TIME    COMMAND

-ef:标准格式显示进程信息

显示的信息有:

UID          PID    PPID  C STIME TTY          TIME CMD(COMMAND的缩写)

UID:用户的ID

GID:用户组的ID

注:COMMADN列如果过长,aux会截断显示,而ef不会

root@ubuntu:/Liunx# psPID TTY          TIME CMD39782 pts/0    00:00:00 su39783 pts/0    00:00:00 bash40257 pts/0    00:00:00 ps
root@ubuntu:/Liunx# ps -APID TTY          TIME CMD1 ?        00:00:14 systemd
...........40258 ?        00:00:00 kworker/0:240259 pts/0    00:00:00 ps
root@ubuntu:/Liunx# ps -w        PID TTY          TIME CMD39782 pts/0    00:00:00 su39783 pts/0    00:00:00 bash40260 pts/0    00:00:00 ps
root@ubuntu:/Liunx# ps -au
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
。。。。。。。。。。。
root       39782  0.0  0.1  14644  4372 pts/0    S    17:07   0:00 su
root       39783  0.0  0.1  13052  4168 pts/0    S    17:07   0:00 bash
root       40350  0.0  0.0  14572  3328 pts/0    R+   18:19   0:00 ps -auroot@ubuntu:/Liunx# ps -aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.3 168860 12508 ?        Ss   4月14   0:15 /sbin/init auto noprompt
。。。。。。。。。。。
root       40349  0.0  0.0  14760  3552 pts/0    R+   18:18   0:00 ps -auxroot@ubuntu:/Liunx# ps -ef
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 4月14 ?       00:00:15 /sbin/init auto noprompt
。。。。。。。。。。。
root       40295       2  0 18:02 ?        00:00:00 [kworker/u256:2-events_unbound]
root       40299   39783  0 18:04 pts/0    00:00:00 ps -ef

top:监视进程(动态的监视),按q按键退出

root@ubuntu:/Liunx# toptop - 当前时间-系统的运行时间,时间,当前登陆用户数量,系统在之前 1 分钟、5 分钟、15 分钟的平均负载(CPU单核<1,四核<4)
Tasks:系统中的进程总数,正在运行的进程数,睡眠的进程数,正在停止的进程数,僵尸进程数(>0,检查僵死进程)
%Cpu(s):
用户模式占用的 CPU 百分比,系统模式占用的 CPU 百分比,
改变过优先级的用户进程占用的 CPU 百分比,空闲 CPU 占用的 CPU 百分比,
等待输入/输出的进程占用的 CPU 百分比,
硬中断请求服务占用的 CPU 百分比,  软中断请求服务占用的 CPU 百分比,
虚拟时间百分比(当有虚拟机时,虚拟 CPU 等待实际 CPU 的时间百分比)
MiB Men:物理内存的总量(单位为KB), 己经使用的物理内存数量,空闲的物理内存数量,作为缓冲的内存数量
MiB Swap:交换分区(虚拟内存)的总大小,已经使用的交换分区的大小,空闲交换分区的大小,作为缓存的交换分区的大小
PID SUER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
.........

我们通过 top 命令的第一部分就可以判断服务器的健康状态。如果 1 分钟、5 分钟、15 分钟的平均负载高于 1,则证明系统压力较大。如果 CPU 的使用率过高或空闲率过低,则证明系统压力较大。如果物理内存的空闲内存过小,则也证明系统压力较大。

这时,我们就应该判断是什么进程占用了系统资源。如果是不必要的进程,就应该结束这些进程;如果是必需进程,那么我们该増加服务器资源(比如増加虚拟机内存),或者建立集群服务器。

我们还要解释一下缓冲(buffer)和缓存(cache)的区别:

  • 缓存(cache)是在读取硬盘中的数据时,把最常用的数据保存在内存的缓存区中,再次读取该数据时,就不去硬盘中读取了,而在缓存中读取。
  • 缓冲(buffer)是在向硬盘写入数据时,先把数据放入缓冲区,然后再一起向硬盘写入,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。

简单来说,缓存(cache)是用来加速数据从硬盘中"读取"的(降低内存压力),而缓冲(buffer)是用来加速数据"写入"硬盘的(减少内存碎片)。

原文链接:Linux top命令详解:持续监听进程运行状态 (biancheng.net)

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

pstree:以树状图的形式显示进程

root@ubuntu:/Liunx# pstree
systemd─┬─ModemManager───2*[{ModemManager}]├─NetworkManager───2*[{NetworkManager}]
..............├─whoopsie───2*[{whoopsie}]└─wpa_supplicantroot@ubuntu:/Liunx# psPID TTY          TIME CMD39782 pts/0    00:00:00 su39783 pts/0    00:00:00 bash40535 pts/0    00:00:00 ps
root@ubuntu:/Liunx# pstree 39783
bash───pstree

需要注意的是,在使用 pstree 命令时,如果不指定进程的 PID 号,也不指定用户名称,则会以 init 进程为根进程,显示系统中所有程序和进程的信息;反之,若指定 PID 号或用户名,则将以 PID 或指定命令为根进程,显示 PID 或用户对应的所有程序和进程。

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

信号由内核产生,3种方式:用户操作,进程执行出错,进程执行某个系统调用或函数(raise()、alarm()等),64个信号,SIGRTMIN前面的信号为传统的Unix支持的信号,是不可靠信号(非实时的,信号可能会丢失),不支持排队;SIGRTMIN后面的信号为后来扩充的,是可靠信号(实时信号,信号不会被丢失)。

信号响应方式:忽略信号、执行系统默认动作、捕捉信号

kill:终止进程( ctrl+c )

分为  root  和  非root

root:可以向所有用户发送信号,不能被忽略,必须被执行

非root:只能向同组或同用户发送信号,可以被忽略,如下:

kill命令向指定的进程发送一个杀死这个进程的信号,要求该进程被杀死,但是只是发送一个信号,能不能被杀死另算

Ubuntu的软件包管理 || 软硬链接 ||进线程浅述相关推荐

  1. Snap--Linux系统下 (Ubuntu)软件包管理工具

    snap简介: snap是个新的包管理工具,他使用了容器的概念,他源自ubuntu母公司,但不止支持ubuntu,支持更多的Linux发行版.snap是Canonical公司发布的全新的软件包管理方式 ...

  2. linux虚拟机之ubuntu的软件包管理(6/10)

    实训1 (1)执行sudo apt-get update更新系统中apt-get缓存中的软件包信息. (2)执行sudo apt-get install emacs安装Emacs. (3)执行sudo ...

  3. Ubuntu 软件包管理详解

    Ubuntu 方便宜用,最值得让人称道的便是其安装软件的方式, 一条命令: sudo apt-get install xxx 就几乎能帮你搞定所有的软件安装难题.但是有时你可能有这样的需求,查看某个软 ...

  4. Ubuntu 软件包管理APT

    一.APT简介 "起初 GNU/Linux 的世界中只有 .tar.gz.如果用户要使用一个软件,那就必须自己编译.当 Debian 诞生以后,一种能管理操作系统中已安装的软件包的系统显得很 ...

  5. 怎么理解ubuntu中的软件包管理器apt和dpkg

    大家都知道在ubuntu下,安装软件经常会用到一个命令就是"apt-get install",这里的apt命令,其实是linux系统下一个通用的软件包管理器,使用该命令可以很方便的 ...

  6. linux如何运行synaptic,Linux_Ubuntu 7.04 Synaptic软件包管理器功能,Ubuntu的新立得软件包管理器(Syn - phpStudy...

    Ubuntu 7.04 Synaptic软件包管理器功能 Ubuntu的新立得软件包管理器(Synaptic Package Manager)是APT(Advanced Package Tool)的图 ...

  7. ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别

    ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别 一:dpkg dpkg 是一种比较低层的软件包安装管理工具,在安装时,不会安装软件包的依赖关系:只能安装所要求的软件包: ...

  8. 操作系统知识点大总结【进线程管理与调度】

    文章目录 一.进程管理 二.进程的组成 1.进程的概念 2.进程的程序段.数据段.PCB 三.进程的特征与状态 1.进程的特征 2.进程的基本状态 3.进程的运行状态 四.进程的控制 五.进程的通信与 ...

  9. Ubuntu 软件包管理利器 - 新立得 (Synaptic)

    文章目录 概述 安装 使用 安装软件 更新软件 参考 概述 Synaptic(中文名:新立得)是 debian 及其衍生版本如 Ubuntu Linux 操作系统的包管理工具 apt 的图形化前端.在 ...

最新文章

  1. 一文讲清HBase的存储结构
  2. Oracle10gr2 开机自启动脚本
  3. python【蓝桥杯vip练习题库】BASIC-19完美的代价(贪心算法)
  4. CPU 以字节为单位编址,而 C 语言指针以指向的数据类型长度作自增和自减。
  5. 【Java】蒙提霍尔问题的概率原理及随机化模拟
  6. 精仿B站源码+自动采集360视频
  7. php thinkphp修改,thinkphp5.0 | 输入变量更改变量
  8. Android系统(134)--- Android关于OOM的解决方案 ##OOM
  9. CentOS 7.2下编译安装PHP 7
  10. VR:下一个技术风口
  11. navicat导入sql语句
  12. SD卡无法格式化怎么办?恢复SD卡这样做
  13. 计算机科学技术专业单片机,计算机科学与技术专业毕业论文---基于单片机的智能浇花系统的设计与实现.docx...
  14. Android签名与风险分析
  15. 专利写作规范及如何写一篇专利
  16. 冒险岛开服服务端教程自己搭建服务器需要那些东西
  17. Linux7网卡绑定后mac一样,如何解决双网卡bond0绑定模式物理成员口的mac地址和bonding接口mac地址不一致......
  18. redhat 6.5安装oracle时出现java异常_Redhat6.2安装Oracle11g客户端及遇到的问题分析
  19. flea-cache使用之Memcached接入
  20. SessionFactory在Hibernate中的作用

热门文章

  1. 【网络篇】第二篇——IP协议与MAC地址详解
  2. Python Pdb源码解析
  3. 视频直播方案(播放器和SDK)
  4. 周易起名大师快速破解教程
  5. 3518E与3518C产品区别
  6. 大数据早报:甲骨文公司投资4300万美元在总部建高中 18项全球互联网领先科技成果公布中国占6成 (12.6)
  7. Caused by: java.sql.SQLException: Invalid value for getLong() - '112233...‘ in c
  8. R-第七章|因子分析
  9. 背景建模(一) Evaluation of Background Subtraction Techniques
  10. 【BZOJ2095】 Bridge