linux运行命令行?linux软件安装命令

大家好,关于linux运行命令行很多朋友都还不太明白,今天小编就来为大家分享关于linux软件安装命令的知识,希望对各位有所帮助!

如何进入linux命令行模式

1、使用用户名和密码登录到Linux系统,点击“活动”—“终端”,打开终端工具。

2、在命令行,输入 init 3命令,并按回车键执行,切换到命令行界面。

3、切换到命令行界面后,在界面上只显示一个闪烁的光标,按下 Ctrl+Alt+F6(非虚拟机)或者 Alt+F6(虚拟机),显示用户登录界面。

4、输入用户名和密码,登录到系统,这样就可以使用命令行界面了。

5、如果要切换回图形界面,则在命令行界面输入 init 5或 startx命令。

6、系统就会切换回图形登录界面了,选择登录用户登录即可

7、debian国内软件源

deb stretch main contrib non-free

deb-src stretch main contrib non-free

deb stretch-updates main contrib non-free

deb-src stretch-updates main contrib non-free

deb stretch/updates main contrib non-free

deb-src stretch/updates main contrib non-free

参考资料来源:百度百科--Debian

linux 抓包命令

linux系统下抓包命令是什么呢?下面是具体介绍:

linux系统下抓包命令是:tcpdump。

1、tcpdump命令简介是一个运行在命令行下的抓包工具。它允许用户拦截和显示发送或收到过网络连接到该计算机的TCP/IP和其他数据包。tcpdump适用于大多数的类Unix系统操作系统(如linux,BSD等)。类Unix系统的 tcpdump需要使用libpcap这个捕捉数据的库就像 windows下的WinPcap。

2、Tcpdump的形式:

例:tcpdump–i eth0’port 1111‘-X-c 3

-X告诉tcpdump命令,需要把协议头和包内容都原原本本的显示出来(tcpdump会以16进制和ASCII的形式显示),这在进行协议分析时是绝对的利器。

tcpdump采用命令行方式,它的命令格式为:

tcpdump [-adeflnNOpqStvx ] [-c数量 ] [-F文件名 ]

[-i网络接口 ] [-r文件名] [-s snaplen ]

[-T类型 ] [-w文件名 ] [表达式 ]

3、tcpdump的选项介绍

-a:将网络地址和广播地址转变成名字;

-d:将匹配信息包的代码以人们能够理解的汇编格式给出;

-dd:将匹配信息包的代码以c语言程序段的格式给出;

-ddd:将匹配信息包的代码以十进制的形式给出;

-e:在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议;

-f:将外部的Internet地址以数字的形式打印出来;

-l:使标准输出变为缓冲行形式;

-n:指定将每个监听到数据包中的域名转换成IP地址后显示,不把网络地址转换成名字;

-nn:指定将每个监听到的数据包中的域名转换成IP、端口从应用名称转换成端口号后显示

-t:在输出的每一行不打印时间戳;

-v:输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;

-vv:输出详细的报文信息;

-c:在收到指定的包的数目后,tcpdump就会停止;

-F:从指定的文件中读取表达式,忽略其它的表达式;

-i:指定监听的网络接口;

-p:将网卡设置为非混杂模式,不能与host或broadcast一起使用

-r:从指定的文件中读取包(这些包一般通过-w选项产生);

-w:直接将包写入文件中,并不分析和打印出来;

-s snaplen:snaplen表示从一个包中截取的字节数。0表示包不截断,抓完整的数据包。默认的话 tcpdump只显示部分数据包,默认68字节。

-T:将监听到的包直接解释为指定的类型的报文,常见的类型有rpc(远程过程调用)和snmp(简单网络管理协议;)

-X:告诉tcpdump命令,需要把协议头和包内容都原原本本的显示出来(tcpdump会以16进制和ASCII的形式显示),这在进行协议分析时是绝对的利器。

linux命令行如何运行程序

要充分理解本文,必须具备Windows环境下桌面应用程序的工作经验,我认为读者对如何使用 Linux桌面有一个基本的了解。使用一个运行的 Linux计算来机探讨本文的概念和示例是很有帮助的。

有时候第一次在 Linux上运行一个应用程序需要一点额外工作。有些应用程序,比如服务器服务,可能无法安装为服务,因此您需要从命令行启动这些应用程序。对于启动这些应用程序的用户帐户而言,需要在应用程序文件中设置执行许可标志(x)。

Linux在内核空间或用户空间运行进程。用户空间是操作系统的区域,应用程序通常在此运行。简单地说,每个用户帐户有其自己的用户空间,应用程序在这个领域内运行。

默认情况下,只有 root用户有权访问内核空间。root用户是 Linux中的超级用户,相当于 Windows中的管理员帐户。在 root用户帐户下运行应用程序可能会引起安全风险,是不可取的。

很多服务器服务需要 root权限启动服务。然而,服务启动后,root帐户通常会将其移至服务帐户。严格地说,Linux中的服务帐户才是标准的用户帐户。主要区别是服务帐户仅用于运行一个服务,而不是为任何实际登录的用户准备的。

您可以使用 chmod命令在一个文件中设置执行权限。在 Linux中,umask设置通常用来防止下载的文件被执行,也有充分的理由相信,因为它有助于维护 Linux计算机的安全性。

大多数 Linux发行版具有一个值为 022的 umask设置,这意味着,默认情况下一个新文件权限设置为 644。权限的数字表示形式采用读(4)、写(2)、执行(1)的格式。因此,默认权限为 644的应用程序下载意味着文件所有者有读写权限,而组用户和其他用户只有读权限。

例如,为每个人赋予一个文件的执行权限,使用 chmod a+x命令。a表示所有人,加号(+)表示添加,而 x表示执行。同样地,如果应用程序是一个服务器服务,您应该确保只有授权帐户才有权执行此服务。

如果一个应用程序能够在标准用户帐户权限下运行,但只有特定组中的用户才需要使用它,您可以将该组所有者权限设置为可执行,然后将这些用户添加到该组中。

更具体地说,您可以在一个可执行文件中设置访问控制列表(ACL)权限,赋予特定用户或组权限来运行该应用程序。使用 setfacl实用工具设置 ACL权限。

对于这些需要以 root用户启动进程的应用程序,比如服务器服务,您有几个选择。总结了允许用户执行需要 root权限的服务器服务的各种选项。

作为 root用户不推荐用于服务器服务。当用户已经知道 root密码而且应用程序泄露不是首要关注问题时,可用于应用程序。

SetUID由于安全问题,不推荐使用。SetUID允许标准用户以另一个用户方式,比如 root用户,执行一个文件。

sudo很常用,并且被认为是一个很好的实践。sudo授予一个用户或组成员权限以执行可能额外需要 root权限的文件。该用户不需要知道 root密码。

带有文件权限的标准用户帐户在一个文件上为用户所有者、组所有者或其他人(所有人)设置执行权限。这是授予那些不需要 root权限来执行应用程序的用户的常用方法。

带有 ACL权限的标准用户帐户使用较少,但是如果您不想授予一个用户 sudo访问或者更改文件的权限,这也是一个可行的解决方案。在一个文件上使用 setfacl命令,您可以授予一个特定用户或用户组执行该文件的权力。

在管理 Linux服务器时,从命令行运行应用程序是一项基本的任务。很多应用程序使用 shell脚本(类似于 Windows批处理文件.bat)来启动应用程序并执行其他任务,比如设置变量以及为其他用户分配进程。例如,应用程序可能需要一个 Java™ Virtual Machine(JVM)来执行。那样的话,shell脚本可以设置适当的环境变量,然后执行 Java命令来运行 Java Archive(JAR)或类文件。这同样适用于使用 Perl、Python、甚至 C#的应用程序。(当然,C#编译的应用程序可以在 Linux上运行)

从命令行或者 shell提示符执行应用程序的一个常用方法是使用./命令。如果您在 Linux中使用句号(.)和正斜杠(/),就意味着告诉环境您想要以可执行文件运行该文件。例如,运行一个名为 myapp的可执行文件,您可以使用./myapp命令。同样地,您可以在文件名之前加上语言环境,比如:

sh php python perl java

但更多情况下,套装应用程序使用 shell脚本,以#!符号设置环境变量提供该语言的运行时可执行路径,比如#!/usr/bin/python。您也应该熟悉这种方法。

清单 1使用 catalina.sh默认脚本通过./方法启动 Apache Tomcat应用程序服务器。然后,使用 sh方法启动服务器。因为默认端口是 8080,标准用户不需要对其进行特别修改就可以启动该服务。

阅读剩余
THE END