48 个 Linux 面试问题和答案

2023-05-16

你在准备 Linux 面试吗?我们准备了一些常见的 Linux 面试问题及其答案。

如果您是初学者(具有一定的 Linux 知识或获得认证)或具有专业的 Linux 管理经验,那么下面的问答有助于您准备面试。

1.什么是Linux及基本组件?

Linux 是一个基于 Linux 内核的免费开源操作系统。它是广泛使用的操作系统之一,尤其是在服务器世界和开发人员中。它的用途从托管网站和应用程序延伸到成为智能手机、平板电脑和电视等智能设备的核心操作系统。

Linux 由 4 个基本组件构成:

Kernel这是Linux系统的核心。它负责与硬件组件交互并确保操作系统与硬件设备进行通信。

Shell Shell 是 Linux 用户和内核之间的接口。在 shell 中,命令由用户发出,然后由操作系统执行。

系统库:这些是特殊程序或函数,它们负责实现操作系统的大部分功能,而不依赖于内核模块的代码访问权限。

系统实用程序:这些是执行某些任务的特定程序。例如 LibreOffice、Brasero、Gparted。

2、什么是Linux内核?

Linux内核是Linux系统的核心。它将底层硬件与操作系统连接起来。

3、Linux和Unix有什么区别?

Linux 是衍生 Linux 的 UNIX 系统的克隆。Linux 是开源的并且可以免费使用,而 UNIX 是专有操作系统。

4. Linux 中的 inode 是什么?如何找到与文件关联的inode?

inode(索引节点)是 Unix 风格文件系统中的一种数据结构,用于描述文件系统对象,例如文件或目录。创建文件时,会为其分配一个名称和一个 inode 编号,这是一个在文件系统中唯一的整数。

解释

文件系统通常有两部分:元数据或关于数据的“数据”和数据本身。元数据包含有关数据的信息。更准确地说,它包括诸如访问控制列表 (ACL)、文件修改日期、文件所有者、文件权限、文件大小、设备 ID、文件的 uid 等信息。此类信息是文件系统,否则我们在存储介质上只有一堆没有多大意义的位。Inode 存储此元数据信息,通常它们还存储有关数据在存储介质上的位置的信息。

在文件系统中,inode 大约占总磁盘空间的 1%,无论是整个存储单元(硬盘、拇指驱动器等)还是存储单元上的分区。inode 空间用于跟踪存储在硬盘上的文件。inode 条目仅指向这些结构,而不是存储数据。每个条目的大小为 128 字节。在安装操作系统或新文件系统以及进行初始结构化时,会为 Inode 分配空间。所以通过这种方式我们可以看到,在文件系统中,设置了最大 Inode 数,因此设置了最大文件数。现在,上述概念带来了另一个有趣的事实。文件系统可以通过两种方式耗尽空间:

  • 没有空间用于添加新数据
  • 所有的 Inode 都被消耗掉了。

要获取 inode 编号的列表,请使用ls -i命令。

ls -li

total 3336

57741 -rw-r--r-- 1 root root 3412144 Nov 20 17:26 coreutils-8.22-18.el7.x86_64.rpm

57725 -rw-r--r-- 1 root root       0 Apr  7 04:00 file

57736 -rw-r--r-- 1 root root       0 Apr  7 04:00 new-file

 

# ls -li new-file

57736 -rw-r--r-- 1 root root 0 Apr  7 04:00 new-file

 

# find /root -inum 57736

/root/new-file

5.什么是Linux shell?如何检查当前的shell?

Linux shell 是一个命令解释器或接受命令并将其传递给操作系统执行的程序。要检查您正在使用的 shell,请运行命令  echo $0

6. 用什么命令查找内存和交换使用情况?

使用free命令

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAVEFPWEMozL_iloDMv-KAicy_xLnMr8y_zL_iloDMvyDMvw==,size_15,color_FFFFFF,t_70,g_se,x_16

7. 软链接和硬链接的区别?

a)不能为目录创建硬链接。只能为文件创建硬链接。

b) 符号链接或符号链接可以链接到目录。

c)删除硬链接指向的原始文件并不会删除硬链接本身;硬链接仍然提供基础文件的内容。

d)如果您删除硬链接或符号链接本身,原始文件将保持不变。

e)删除原始文件不会删除附加的符号链接或符号链接,但没有原始文件,符号链接是无用的

8.解释Linux中的文件权限?

在 Linux 中,有 3 种主要类型的文件权限:读、写和执行。这些权限可以递归地分配给文件或目录。作为一个多用户系统,您可以将这些权限分配给 root 用户、组,甚至是使用该系统的其他用户。

Read:读取权限授予使用打开和读取文件的能力。

Write:写入权限允许用户打开和修改或编辑文件的内容并保存更改。

Execute:这允许用户执行或运行可执行的文件或程序或 shell 脚本。

 

9. 如何在 Linux 中创建和删除目录?

要创建目录,请使用 mkdir 命令,如图所示;

mkdir directory_name

例如,要创建一个名为“data”的目录,请运行以下命令:

mkdir data

要在 Linux 中删除目录,请使用rmorrmdir命令。

该rmdir命令用于删除空目录。

该rm命令主要与-R用于递归删除目录的标志一起使用。

10、如何在Linux中创建文件?

要创建文件,请使用 touch 命令。例如要创建一个文件 file1.doc 运行命令:

10

touch file1.doc

您还可以使用cat命令后跟重定向运算符或大于号>
后跟文件名。接下来,键入文件的内容,最后按CTRL + D退出文件。

cat > file1.doc

输入文件内容并点击CTRL + D

11. 如何在Linux中重命名文件和目录?

要重命名文件,请使用 mv 命令。请注意,要使其正常工作,要重命名的文件的路径必须相同。例如,要将/data/files目录中的文件 file1.doc 重命名为 file2.doc,请执行以下命令:

mv /data/files/file1.doc /data/files/file2.doc

12、如何在Linux中复制文件和目录?

要在 Linux 中复制文件,请使用 cp 命令。语法很简单

cp  /source/of/the/file  /destination/of/the/file

13. 如何在Linux中列出和挂载设备?

要列出挂载点,请运行以下命令:

df  -aTh

要查找有关系统上安装点的更多信息,请执行以下命令:

findmnt

此外,您可以使用下面的 cat 命令

cat /proc/self/mounts

此外,您可以使用 mount 命令,如图所示

mount -l

14、如何在Linux中创建空文件?

要在 Linux 中创建一个空文件,请使用 touch 命令,如下所示:

touch new_file

15. 如何在 Linux 中调度任务?什么是 crontab 并解释 crontab 中的字段?

cron 是一个守护进程,它在 Linux 中的特定日期和时间执行命令。您可以使用它来安排活动,既可以作为一次性事件,也可以作为重复任务。Crontab是用于安装、卸载或列出用于驱动服务器中的 cron 守护程序的表的程序。每个用户都可以有自己的 crontab,虽然这些是 /var/spool/cron/crontabs 中的文件,但它们并不打算直接编辑。以下是 crontab 的几个命令行选项。

crontab -e 编辑您的 crontab 文件。
crontab -l 显示你的 crontab 文件。
crontab -r 删除你的 crontab 文件。

传统的 cron 格式由空格分隔的六个字段组成:

<Minute> <Hour> <Day_of_the_Month> <Month_of_the_Year> <Day_of_the_Week> <command/program to execute>

格式解释如下:

* * * * * *

| | | | | |

| | | | | +-- Year (range: 1900-3000)

| | | | +---- Day of the Week (range: 1-7, 1 standing for Monday)

| | | +------ Month of the Year (range: 1-12)

| | +-------- Day of the Month (range: 1-31)

| +---------- Hour (range: 0-23)

+------------ Minute (range: 0-59)

16. 你知道哪些基本的 Vim 命令?

a) 保存

要保存文件,请按ESC按钮并按 :wq! OR :ZZ

b) 退出

要退出文件而不进行更改,请运行命令:q

c) 跳转到文件中的特定行

按ESC再按j向下移动一行。

k按键盘上移一行

将光标移动到行首 按^

将光标移动到行尾 按$

将光标移动到文件的开头1G

将光标移动到文件末尾G

将光标移动到文件中行号“n”的开头nG

d) 复制文本

将光标移动到字符串或文本的开头。接下来按键盘上的 v 并向前按光标以突出显示文本。到达要复制的文本的末尾后,请按yyank 的缩写来复制文本。

要将文本从当前位置复制到行尾 -y$

复制整行 -yy

要复制下面的 4 行 -4yy

d) 粘贴文本

要粘贴文本,只需按p键盘上的

d) 删除文本

要删除一行,请移至一行的开头。按下ESC按钮并按下dd

要删除单个单词,请将光标放在单词前面并点击dw

删除从当前单词到行尾的文本d$

要删除下面运行的 3 行3dd

17. 如何将二进制文件添加到 $PATH 变量中?

$ export PATH=$PATH:/path/to/the/binary/file

18.解释Grep命令和正则表达式?

Grep 命令是用于过滤结果或输出的表达式。例如,要列出一个目录并仅搜索带有单词“cron”的文件,请运行以下命令:

ls | grep cron

19、umask和ulimit有什么区别?

Umask代表“用户文件创建掩码”,它确定掩码的设置,该掩码控制在创建文件和目录时为文件和目录设置哪些文件权限。虽然 ulimit 是一个 linux 内置命令,它提供对 shell 可用资源和/或由它启动的进程的控制。

您可以通过编辑 /etc/security/limits.conf 将用户限制在特定范围内,同时可以在 /etc/sysctl.conf 中更新系统范围的设置

20. 解释 ls 命令在 Linux 中的输出?

ls 命令列出 Linux 中目录的内容。它显示目录内的文件和子目录。当与其他参数一起使用时,它可以列出文件权限,甚至显示隐藏文件。

21.解释Linux中top命令的输出?

top 命令是一个监控实用程序,可让用户深入了解系统指标,例如正常运行时间、平均负载、%CPU 和 % 内存利用率。

22. Linux 中的进程状态有哪些?

进程状态,顾名思义,是指Linux进程所处的当前状态。进程状态有4种,分别是Running、Waiting、stopped和Zombie。

23. 如何在 Linux 中备份或归档文件(tar 命令)?

要备份目录,只需运行下面的 tar 命令

$ tar -cvf tarball_name.tar /path/to/directory

例如,要在 /data/reports/ 路径中创建文件 sales.txt 的 tar.gz 格式的存档,请执行:

$ tar -cvf sales.tar.gz  /data/reports/sales.txt

您还可以归档整个目录,如下所示:

$ tar -cvf repors.tar.gz  /data/reports/

24. 如何停止Linux中正在运行的进程?

要停止正在运行的进程,请使用 kill 命令,后跟进程的 PID。

例如,要停止 PID 为 3836 的进程,请运行命令

kill 3836

25.如何在linux中搜索文件?

要在 Linux 中搜索文件,请使用locate  orfind命令

26. 如何检查某项服务是否在运行?

要检查服务是否正在运行,请使用以下语法:

systemctl status service_name

例如,要检查 Postfix 是否正在运行,请运行以下命令:

systemctl status postfix

27. 如何在重启时启动服务?

要在重新启动运行时启动服务,请使用以下语法:

systemctl enable service_name

例如,要在重新启动时启动 httpd Web 服务器,请运行

systemctl enable httpd

28. 如何启动和停止服务?

要在 systemd 系统中启动服务,请运行以下命令:

systemctl start service_name

例如,要启动 ssh 服务,请运行以下命令:

systemctl start sshd

要停止服务,请运行:

systemctl stop service_name

要停止 ssh 运行:

systemctl stop sshd

29. 如何远程登录另一台linux电脑?

您可以使用 SSH 协议或使用 VNC 服务登录到远程 Linux 计算机。

30.如何查看磁盘使用情况?

使用该df命令检查硬盘驱动器上使用的空间和剩余空间/可用空间。
此外,使用该du命令检查特定文件和目录的使用情况。

31. 为什么要使用导出命令?

导出命令标记和导出环境变量。

32. 如何使用 bash 脚本从多个 Linux 服务器获取版本?

#!/bin/bash

#we user variable serverlist to keep there path to file with server names

serverlist='server_list.txt'

#we write in variable all server list

servers=`cat $serverlist`

#we use variable result to keep there path to file with result

result='result.txt'

 

#this print header to file with resilt using \t\t to add 2 tab symbols

echo -e "Servername \t\t kernel version"> $result

#this get each line of serverlist one by one and write to server variable

for server in $servers

do

#this login to server by ssh and get uname -r

kernel=`ssh root@${server} "uname -r"`

#this write server name and kernel version separated by 2 tab to result file

echo -e "$server \t\t $kernel" >> $result

#end of for loop.

done

33. Linux 安装的最低要求是什么?

随着更新的 Linux 发行版每隔一周或一个月推出,没有明确的最低要求。由于改进了 GUI 功能和架构,较旧版本将需要更高的最低要求。尽管如此,任何 Linux 发行版都应与具有以下最低要求的 PC 一起使用:

25 GB of hard disk space

2 GB RAM

2 Ghz dual core processor

A screen resolution of 1024x768

A CD/DVD ROM or USB port for inserting installation media

34.如何设置Linux文件/目录权限?

要设置文件权限,请使用chmod命令后跟八进制值或符号值,然后是文件名或目录名。

例如分配一个文件权限值为 664 运行

chmod 664 filename

要分配目录权限,请使用-R递归分配权限的选项。

chmod -R 664 directory_name

35. 如何设置文件/目录的所有权?

要设置文件所有者,请使用该chown命令。例如chown user:user filename

对于目录,使用-R递归分配权限的选项。例如

chown -R user:user directory_name

36. 如何在Linux中创建用户和组?

要创建用户,请运行命令adduser user_name例如

adduser john

37、如何在Linux中查找内核/操作系统版本?

运行命令uname -a

38、如何查找接口IP地址?

ifconfig interface_name您可以通过运行命令或使用ip 命令(推荐)轻松找到 IP 接口。

例如

ifconfig eth0

ip addr show

39.什么是initrd镜像?

初始 RAM 磁盘 (initrd) 是在真正的根文件系统可用之前安装的初始根文件系统。initrd 绑定到内核并作为内核引导过程的一部分加载。然后内核将这个 initrd 挂载为两阶段引导过程的一部分,以加载模块以使真实文件系统可用并获得真实的根文件系统。因此 initrd 映像在linux 启动过程中起着至关重要的作用。

40.解释suid、sgid和sticky bit这几个术语?

除了 Linux 中的基本文件权限外,可执行文件和目录还有一些特殊权限。

SUID如果设置了setuid位,当用户执行文件时,进程将拥有与正在执行的文件的所有者相同的权限。

SGID同上,但在执行时继承文件的组权限,而不是用户权限。类似地,当您在目录中创建文件时,它将继承目录的组所有权。

粘滞位:粘滞位用于 linux 中的可执行文件,以便在初始执行后它们会在内存中保留更长时间,希望在不久的将来会需要它们。但主要是在文件夹上,这意味着在启用 Stickybit 的文件夹中创建的文件或文件夹只能由所有者删除。粘性位的一个很好的实现是 /tmp ,每个用户都有写权限,但只有拥有文件的用户才能删除它们。

41. linux 中的运行级别是什么,如何更改它们?

运行级别是 init 和整个系统的状态,它定义了正在运行的系统服务,它们由数字标识。Linux 系统中有 7 个不同的运行级别(运行级别 0-6)用于不同的目的。下面给出描述。

0: Halt System (To shutdown the system)

1: Single user mode

2: Basic multi user mode without NFS

3: Full multi user mode (text based)

4: unused

5: Multi user mode with Graphical User Interface

6: Reboot System

要更改运行级别,请编辑文件“/etc/inittab”并更改 initdefault 条目 (id:5:initdefault:)。如果我们想即时更改运行级别,可以使用“init”命令来完成。

例如,当我们在命令行中输入“init 3”时,这会将系统从当前运行级别移动到运行级别 3。可以通过输入命令“who -r”列出当前级别

42.什么是SeLinux?

SELinux 是 Security-enhanced Linux 的缩写。它是 Linux 内核的访问控制实现和安全功能。它旨在保护服务器免受错误配置和/或受损守护程序的影响。它通过定义安全策略设置限制并指示服务器守护程序或程序可以访问哪些文件以及可以采取哪些操作。

43. 选择 5 个 Linux 命令,你的选择是什么?

1) rsync 命令

rsync 命令可用于同步两个目录或目录树,无论它们是在同一台计算机上还是在不同的计算机上,但它可以做的远不止这些。rsync 创建或更新目标目录,使其与源目录相同。

rsync -aH sourcedir targetdir

-a 选项用于保留权限、所有权和符号(软)链接的存档模式。-H 用于保留硬链接。请注意,源目录或目标目录都可以位于远程主机上。

2) sed 命令

当您需要选择文件的特定行时,使用Sed 命令。Sed 是流编辑器的缩写,是执行此操作的一种方法。您想合并多个具有标题的文件或进行批量查找和替换文件。
在匹配“正则表达式”的每一行上方插入一个空行

$ sed '/regex/{x;p;x;}'

将“scarlet”或“ruby”或“puce”更改为“red”

$ sed 's/scarlet/red/g;s/ruby/red/g;s/puce/red/g'

3) awk 命令

awk 是一种编程语言,可以轻松操作结构化数据并生成格式化报告。它主要用于图案扫描和加工。它搜索一个或多个文件以查看它们是否包含与指定模式匹配的行,然后执行相关操作。这就像 sed 命令。如果您对awk 命令感兴趣,那么您的生活将变得轻松。

打印特定字段

$ awk -F':' '{ print $1 }' /etc/group

$ date | awk '{print $2 " " $6}'

4) lsof 命令

lsof 是一个命令行实用程序,用于列出有关由各种进程打开的文件的信息。在 unix 中,一切都是文件:管道、套接字、目录、设备等。因此,通过使用 lsof,您可以获得有关任何已打开文件的信息。

列出打开特定文件的进程

# lsof /var/log/syslog

列出属于用户拥有的进程的所有打开文件

# lsof -u username

杀死属于特定用户的所有进程

# kill -9 `lsof -t -u username

列出所有网络连接

# lsof -i

列出特定进程正在使用的所有网络文件

# lsof -i -a -c ssh

列出正在侦听特定端口的进程

# lsof -i :25

5) grep 命令

Grep 是用于搜索文本或给定文件中包含与给定字符串或单词匹配的行的命令。默认情况下,grep 显示匹配的行。

打印Firefox使用的网络连接

# netstat -pltnu | grep firefox

在 /etc/passwd 文件中打印包含“root”的行

# cat /etc/passwd | grep root

44. 基于名称的虚拟主机和基于IP的虚拟主机有什么区别?

虚拟主机用于在单个 apache 实例上托管多个域。您可以为服务器拥有的每个 IP 设置一个虚拟主机,或者相同的 IP 但不同的端口,或者相同的 IP、相同的端口但不同的主机名。后者称为“基于名称的虚拟主机”。

在基于 IP 的虚拟主机上,我们可以在同一台服务器机器上运行多个网站,但每个网站都有自己的 IP 地址,而在基于名称的虚拟主机中,我们在同一个 IP 地址上托管多个网站。但要成功,您必须在 DNS 数据库中为您的 IP 地址放置多个 DNS 记录。

45. 网络绑定有什么优势?

Network Bonding是一个 Linux 内核功能,允许将多个网络接口聚合到单个虚拟链接中。这是在生产系统中实现冗余链路、容错或负载平衡网络的好方法。如果其中一个物理 NIC 关闭或拔出,它会自动将流量转移到另一个 NIC 卡。类似地,绑定将增加接口吞吐量以处理在主动-主动模式下配置的流量。

46. /etc/passwd 和 /etc/shadow 文件有什么用?

/etc/shadow 文件以加密格式存储实际密码,并带有一些与用户密码相关的附加属性。主要保存账龄参数。所有字段均以冒号 (:) 符号分隔。对于/etc/passwd 文件中列出的每个用户,它每行包含一个条目。

47. 为什么设置密码少ssh登录?

为了进一步提高系统安全性,大多数组织转而使用基于密钥的身份验证,而不是基于密码的身份验证。我们可以通过禁用标准密码身份验证来强制执行基于密钥的身份验证,这涉及公钥私钥对。公钥添加在服务器配置文件中,而私钥在客户端保密。

48. 什么是 Linux 中的 swappiness?

swappiness 参数控制内核将进程移出物理内存并移至交换磁盘的趋势。由于磁盘比 RAM 慢得多,如果进程过于激进地移出内存,这可能会导致系统和应用程序的响应时间变慢。

swappiness 的值可以在 0 到 100 之间

swappiness=0 告诉内核尽可能长时间地避免将进程交换出物理内存

swappiness=100 告诉内核积极地将进程交换出物理内存并将它们移动到交换缓存

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

48 个 Linux 面试问题和答案 的相关文章

  • 用另一个文件的标签为图表(ggplot2)中的标题添加下标

    在我的程序中 我有两个主要文件 第一个包含数据 第二个包含标签 或图形标题 文件总数1 数据 3 10000 3 32039232 1 0 0017290351 2 0 0002781092 3 10001 3 32101193 1 0 0
  • 内核驱动程序从用户空间读取正常,但写回始终为 0

    因此 我正在努力完成内核驱动程序编程 目前我正在尝试在应用程序和内核驱动程序之间构建简单的数据传输 我使用简单的字符设备作为这两者之间的链接 并且我已成功将数据传输到驱动程序 但我无法将有意义的数据返回到用户空间 内核驱动程序如下所示 in
  • linux新手关于嵌入式linux设备驱动的问题

    最近在研究linux驱动 正如我读过的那些文章所说 设备驱动程序模块很可能会根据内核的需要自动加载 因此我想知道内核如何确定为特定设备 声卡 I2C spi 设备 等 我也无法彻底想象内核如何在启动时检测每个硬件设备 与嵌入式linux相关
  • Xvfb 冻结初始化 GLX 扩展

    我正在尝试运行无头 Xvfb 服务器来捕获 Amazon EC2 micro 上的屏幕截图 但它在 GLX 上陷入了困境 我使用此脚本安装了 GLX Xvfb 和所有库 https gist github com joekiller 414
  • 如何从脚本编辑 /etc/sudoers?

    我需要编辑 etc sudoers从脚本中添加 删除白名单中的内容 假设我有一个可以处理普通文件的命令 我如何将其应用到 etc sudoers 我可以复制并修改它 然后有visudo用修改后的副本替换原始版本 通过提供我自己的脚本 EDI
  • 如何通过 makefile 在 Linux 上安装程序? [复制]

    这个问题在这里已经有答案了 可能的重复 Linux Unix make install 应该包含什么 https stackoverflow com questions 528399 what should linux unix make
  • 如何通过ssh获取远程命令的退出代码

    我正在通过 ssh 从远程计算机运行脚本 ssh some cmd my script 现在 我想在本地计算机上存储 shell 脚本的退出状态 我该怎么做 假设没有任何问题ssh其本身 其退出状态是在远程主机上执行的最后一个命令的退出状态
  • 对于任何真实数据集,数据压缩比的最小可能值是多少

    我在写信ZLIB类似于嵌入式硬件压缩器的 API 它使用 deflate 算法来压缩给定的输入流 在进一步讨论之前 我想解释一下数据压缩率 数据压缩率定义为未压缩大小与压缩大小之间的比率 压缩比通常大于一 这意味着压缩数据通常比未压缩数据小
  • 在本地主机上使用相同的 IP 和端口创建套接字

    我在 Linux 上看到奇怪的行为 我看到远程端和本地端都显示相同的 IP 和端口组合 以下是 netstat 输出 netstat anp 网络统计grep 6102 tcp 0 0 139 185 44 123 61020 0 0 0
  • Vagrant 遇到问题 - “404 - 未找到”

    我正在尝试使用 Vagrant 制作一个 LAMP 盒子 有人告诉我它使用起来非常简单 我对网络和虚拟机完全陌生 对 Linux Ubuntu 的经验也很少 我目前已尝试按照官方文档页面上的教程进行操作 http docs vagrantu
  • 嵌入清单文件以要求具有 mingw32 的管理员执行级别

    我正在 ubuntu 下使用 i586 mingw32msvc 交叉编译应用程序 我很难理解如何嵌入清单文件以要求 mingw32 具有管理员执行级别 对于我的例子 我使用了这个hello c int main return 0 这个资源文
  • 为 Linux 编译 Objective-C 应用程序(API 覆盖范围)

    我可能在这里问一些奇怪的问题 但我不确定从哪里开始 问题是我正在考虑使用 Obj C 和 Foundation 类在 Mac 上编写一个命令行工具 但存在一个非常大的风险 那就是我希望能够为不同的 Linux 发行版编译它 以便将来作为服务
  • 如何在线程创建和退出时调用函数?

    include
  • 在 docker 中重定向命令输出

    我想为我的服务器做一些简单的日志记录 它是一个在 Docker 容器中运行的小型 Flask 应用程序 这是 Dockerfile Dockerfile FROM dreen flask MAINTAINER dreen WORKDIR s
  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • Tomcat Intellij Idea:远程部署

    RackSpace 云服务器 Ubuntu 12 04 Intellij Idea 11 1 2 Windows 8 Tomcat 7 0 26 JDK 6 在 Intellij Idea 上 当我尝试在远程 Tomcat 7 服务器上运行
  • ioctl 命令的用户权限检查

    我正在实现 char 驱动程序 Linux 并且我的驱动程序中有某些 IOCTL 命令仅需要由 ADMIN 执行 我的问题是如何在 ioctl 命令实现下检查用户权限并限制非特权用户访问 IOCTL 您可以使用bool capable in
  • 执行命令而不将其保留在历史记录中[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在进行软件开发时 经常需要在命令行命令中包含机密信息 典型示例是将项目部署到服务器的凭据设置为环境变量 当我不想将某些命令存储在命令历史记
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • FileOutputStream.close() 中的设备 ioctl 不合适

    我有一些代码可以使用以下命令将一些首选项保存到文件中FileOutputStream 这是我已经写了一千遍的标准代码 FileOutputStream out new FileOutputStream file try BufferedOu

随机推荐

  • 《Modern C++ Design》Loki库源码读解随想

    Modern C 43 43 Design Loki 库源码读解随想 大牛 Andrei Alexandrescu 的 Modern C 43 43 Design 讨论的是 C 43 43 语言的最前沿研究 xff1a generative
  • CUJ:标准库:定义iterator和const iterator

    The Standard Librarian Defining Iterators and Const Iterators Matt Austern http www cuj com experts 1901 austern htm top
  • CUJ:高效使用标准库:显式函数模板参数申明与STL

    Effective Standard C 43 43 Library Explicit Function Template Argument Specification and STL A New Language Feature and
  • 正则是如何判断有重复/由不重复的数字组成的串的。

    源自这里 xff1a http bbs csdn net topics 390804087 d 1 这个判断了有重复的数字 原理 xff1a 是非贪婪 xff0c 从最少的数量试起 是0 无穷大次 最小就是0 对于源串 1234567890
  • 《C++程序设计原理与实践》书评

    在2周内 xff0c 以1目10行的速度读过了这本书 小小书评如下 xff1a 这是一本主要面向初学者的极好的教材 在我看过的编程书籍中 xff0c 这是第二本适合于完全无编程经验的初学者的入门书籍 xff08 前面一本叫 C语言解析教程
  • 最近用了一把boost::range,哎,真方便。(水帖)

    难怪有老外大牛写文章 iterator must go 34 stl是该彻底重写了 嗯 xff0c 我的C 43 43 代码越来越向python代码靠拢了
  • 数据库左连接注意点

    left join on 即左连接 xff0c 把left join左边的表的记录全部找出来 进行左连接时 xff0c 就有涉及到主表 辅表 xff0c 这时 主表条件写在 WHERE之后 xff0c 辅表条件写在 ON后面 xff01 x
  • boost::preprocess的神秘魔法的实现细节:BOOST_PP_SEQ_SIZE(SEQ)

    BOOST PP SEQ SIZE还可以展示一下 xff0c BEGIN BOOST PP SEQ FOLD LEFT SUB S 22 SEQ 61 61 10 END直接生产了2 6M的log过程 define SEQ 4 1 5 2
  • windows子系统固定IP和开启ssh

    Windows子系统固定IP地址 一 固定IP地址 windows子系统默认开机会变更随机ip 修改为固定的ip地址 1 获取子系统名 打开cmd或PowerShell输入 wsl l v 显示如图 获得Ubuntu在子系统中名字 Ubun
  • Centos 安装pyspider 必须成功

    Centos安装pyspider踩过的坑 xff01 xff01 xff01 一个接着一个 写在前面的话 xff1a 一直在本地机器小玩玩pyspider xff0c 今天心血来潮linux安排上 网上教程一大堆 xff0c 一个接着一个坑
  • Permutation Test

    常规步骤 xff1a 一般 多组间样本均数的比较是先做正态性检验和方差齐性 xff0c 然后在各组 都满足 正态性和方差齐性的前提下做方差分析 如果数据呈现正态分布 xff0c 但方差不齐 xff0c 则可以选择近似方法 Welch法 和
  • [vuejs] 在vuejs中使用websocket进行实时通讯

    在vuejs框架中使用websocket 可以比较方便的运用到vuejs框架的响应式系统 以及一些简单的生命周期函数 var app 61 new Vue el 39 app 39 data server 34 ws 127 0 0 1 8
  • [nginx] X-Cache: HIT的意思

    请求返回的数据是从缓存里拿到的X Cache HIT 缓存命中了 遇到一个返回接口数据总是不对 xff0c 在看到X Cache HIT才发现 给接口设置了缓存 xff01 xff01 xff01
  • [CSS] CSS display:flex实现内容水平垂直居中展示

    display flex实现内容水平垂直居中展示 需要增加下面两点就能实现 首先父级元素必须有高度 xff0c 没有高度就无法垂直居中 xff0c 如果想全屏垂直居中 xff0c 可以设置高度为100vh 比如body设置为这样 body
  • Java在字符串中查找匹配的子字符串

    示例 xff1a 在源字符串 You may be out of my sight but never out of my mind 中查找 my 的个数 输出 xff1a 匹配个数为2 三种方法 xff1a 1 通过String的inde
  • Ext4 vs XFS——你应该使用哪个文件系统

    运行 Linux 系统的用户几乎不会关注底层文件系统 事实上 xff0c 在安装 Linux 的过程中 xff0c 通常倾向于使用列出的默认文件系统而不探索其他可用选项 对于 Windows xff0c 事情要容易得多 xff0c 因为 N
  • Btrfs 与 Ext4 - 功能、优势和劣势

    文件系统控制从存储设备存储和检索数据的位置 方式和时间 日常系统进程需要一个高效的文件系统 Linux 内核支持多种文件系统 最常用的是 Ext4 Btrfs XFS 和 ZFS xff0c 这是 2018 年发布的最新文件系统 这些文件系
  • Extjs6 Tree 树数据筛选

    前端使用ExtJS6 xff0c 要求在菜单树上对菜单树的数据进行筛选 xff0c 提高用户的体验 现在功能已经完成 xff0c 这里记录下来便于后面遇到类似问题作为参考 xff0c 会贴上源码和官方Demo提供参考的源码 对Tree的筛选
  • apt update和apt upgrade命令 - 有什么区别?

    在之前的文章中 xff0c 我们查看了APT 命令以及您可以使用包管理器来管理包的各种方法 这是一个总体概述 xff0c 但在本指南中 xff0c 我们暂停并重点关注 2 个命令用法 这些是apt update和apt upgrade命令
  • 48 个 Linux 面试问题和答案

    你在准备 Linux 面试吗 xff1f 我们准备了一些常见的 Linux 面试问题及其答案 如果您是初学者 xff08 具有一定的 Linux 知识或获得认证 xff09 或具有专业的 Linux 管理经验 xff0c 那么下面的问答有助