Questions tagged «linux»

这些问题通常与Linux有关-并非特定于特定发行版。如果问题恰好在Linux环境中,请在问题正文中指定Linux发行版,但不要使用/ linux标记。

3
在Linux发行版上设置无密码sudo
我最近同时设置了Fedora 28和Ubuntu 18.04系统,并希望同时在这两个系统上配置我的主要用户帐户,以便我可以在sudo不提示输入密码的情况下运行命令。 如何在各自的系统上执行此操作?
18 linux  sudo  password 

3
fakeroot在Linux中如何不违反安全性?
在阅读了这个问题的一些不错的答案之后,我仍然不清楚为什么您要假装自己是root而没有获得实际root的任何好处。 到目前为止,我可以收集到的是,fakeroot用于为文件解压缩/压缩后需要root的所有权。我的问题是,为什么您不能只用chown呢? 此处的Google网上论坛讨论指出,您需要用fakeroot来编译Debian内核(如果您想从非特权用户那里进行编译)。我的评论是,需要root用户才能进行编译的原因可能是未为其他用户设置读取权限。如果是这样的话,fakeroot允许编译是否违反安全规定(这意味着gcc现在可以读取用于root的文件了)? 这个答案在这里介绍了实际的系统调用与真实用户的UID / GID做,所以又在哪里呢fakeroot的帮助? fakeroot如何阻止Linux上不必要的特权升级?如果fakeroot可以欺骗tar来创建root拥有的文件,那么为什么不对SUID做类似的事情? 根据我的收集,当您想要更改构建为root的任何软件包文件的所有者时,fakeroot才有用。但是您可以使用chown做到这一点,所以我对应该如何使用此组件的理解还不够呢?
18 linux  chown  fakeroot 

5
如何仅获取端口3000上运行的进程的PID,而没有任何其他信息?
我正在使用CentOS7。我想获取在端口3000上运行的进程的PID(如果存在)。我想要获取此PID的目的是将其保存到Shell脚本中的变量中。到目前为止,我有 [rails@server proddir]$ sudo ss -lptn 'sport = :3000' State Recv-Q Send-Q Local Address:Port Peer Address:Port Cannot open netlink socket: Protocol not supported LISTEN 0 0 *:3000 *:* users:(("ruby",pid=4861,fd=7),("ruby",pid=4857,fd=7),("ruby",pid=4855,fd=7),("ruby",pid=4851,fd=7),("ruby",pid=4843,fd=7)) 但是我无法弄清楚如何在没有所有这些额外信息的情况下单独隔离PID。

4
将/ bin内容移至/ usr / bin,可以撤消吗?
运行Ubuntu 17.04,我正在从非存储库发行版中安装软件,我应该将bin-folder内容移至/ usr / bin(这已经很不明智了) 那是那些日子之一,所以我做了什么: mv /bin/* /usr/bin 所以我搞砸了,我不小心将bin中的所有文件都移到了/ usr / bin,并且/ bin为空。由于我认为/ bin对系统至关重要,因此为了快速补救,我将/ usr / bin内容复制到/ bin。 现在,我的/ bin和/ usr / bin内容相同,并且都包含最初在/ bin和/ usr / bin中分开的文件。 我的Ubuntu现在处于损坏状态吗?(尚未尝试重新启动计算机,现在一切似乎仍然可以正常工作) 有没有办法知道最近将哪些文件移动/复制到了/ usr / bin,所以我可以手动处理这种情况?2.1 / bin和/ usr / bin中通常有重叠的文件 还有其他方法可以撤消我的工作吗? 我没有安装Timeshift,因此不能选择恢复备份,但是当前计算机上没有任何关键操作,因此我可以承认重新安装整个linux分区是不合法的。
18 linux  ubuntu  mv 

2
“ TeamViewer尚未准备好。请检查您的连接”在Fedora 25中的错误
我遇到了一个奇怪的问题,我无法使TeamViewer正常工作,这意味着我收到此错误(请参见下面的图像),因此无法连接到任何远程PC: TeamViewer尚未准备好。请检查您的连接 在办公室中,其他使用Ubuntu和Windows 7/10的开发人员都可以毫无问题地使用TeamViewer,因此我不确定是什么问题。我检查了防火墙状态,但未运行: $ service firewalld status Redirecting to /bin/systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) 我已经检查了SELinux的状态,它已被禁用: $ getenforce Disabled 由于我是从PC上打开Teamviewer出现问题的地方,因此我具有Internet连接。也许与我遇到的这个其他问题有关,但是我不确定。我已经在互联网上检查了一些像这样的文档,但这不是我的问题,所以...有什么帮助吗? 注意:如果您需要我提供任何帮助(调试信息),请告诉我,我将其添加为OP的一部分。另外,我不确定这篇文章是否应该在这个社区上,但是我相信问题出在我的Linux上,而不是Teamviewer本身。 更新: 遵循@phg的建议后,我仍在研究此问题,并且已经找到了。显然,Wayland存在问题,并且尚未解决,仅在Fedora 25上才发生。我们需要等待Teamviewer团队的修复。 更新1(01/27/2017): 有一种解决方法,您可以使用不支持的tarball文件,并且可以运行,我已经对其进行了测试,但是这种方法存在问题,因为Teamviewer不能作为服务运行,因此您不能在运行PC的地方添加它到您的“计算机和通讯录”(非常有用)。也许有一种方法可以使可执行文件作为服务运行,但是我没有尝试过这一部分,如果有人可以尝试并给出答案的话,对新手来说将是一件好事。

2
不信任Linux中的中间CA?
从这个博客。 中间CA是由根CA签名的证书,可以为任何网站签署任意证书。 它们与根CA一样强大,但是没有系统信任的完整列表,因为根CA可以随意创建新的CA,而您的系统将一见钟情。CT中记录了数千。 本月突然出现了一个有趣的消息,显然是在2015年9月生成的:“蓝色外套公共服务中间CA”,由Symantec签署。(到目前为止,此CA签署的证书尚未到达CT日志或Censys。) 我认为这是写一个如何明确不信任中间件CA的好时机,否则该中间件CA在OS X中将是可信的。这不会阻止根CA将新的中间件交给同一组织,但总比没有好。 当我在Ubuntu中尝试博客中的步骤时,我下载了此证书https://crt.sh/?id=19538258。当我打开.crt时,它会导入到Gnome密钥环中,但是导入后我找不到找到“取消信任”证书的方法。

3
[[$ {1:0:1}“ ='-']的含义
我有以下脚本来启动MySQL进程: if [ "${1:0:1}" = '-' ]; then set -- mysqld_safe "$@" fi if [ "$1" = 'mysqld_safe' ]; then DATADIR="/var/lib/mysql" ... 1:0:1在这种情况下是什么意思?
18 linux  bash  shell 

2
使用虚拟机开发/测试Linux模块是否安全?
我在操作系统课上。即将来临,我们必须做一些修改内核代码的工作。建议我们不要使用个人计算机进行测试(我想这意味着要安装它),因为我们可能会编写错误的代码,并在不应该编写的地方进行编写。为了安全起见,我们可以访问实验室中的机器。 如果要使用VM进行测试,是否可以保护主机系统免受潜在的不安全代码的侵害?我真的不想不必在学校呆在某个系统上,快照会很有用。 如果仍然是高风险,那么我需要考虑哪些建议以进行安全测试? 我们将使用类似linuxmint的东西开始。如果有人想查看当前项目中的内容,请访问:http : //www.cs.fsu.edu/~cop4610t/assignments/project2/writeup/specification.pdf

4
tar及其关键字母:是bug还是功能?
我想问一下这两个命令的区别(即只有它们的选项顺序不同): tar -zxvf foo.tar.gz tar -zfxv foo.tar.gz 第一个运行得很好,但是第二个说: tar: You must specify one of the `-Acdtrux' or `--test-label' options Try `tar --help' or `tar --usage' for more information. 而焦油--test-label和-zfxv说: tar (child): xv: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned …

2
/ etc / networks文件的实际用法
/etc/networks文件的实际用途是什么?据我了解,可以在此文件中为网络命名。例如: root@fw-test:~# cat /etc/networks default 0.0.0.0 loopback 127.0.0.0 link-local 169.254.0.0 google-dns 8.8.4.4 root@fw-test:~# 但是,如果我尝试在ip实用程序中使用此网络名称作为示例,它将无法正常工作: root@fw-test:~# ip route add google-dns via 104.236.63.1 dev eth0 Error: an inet prefix is expected rather than "google-dns". root@fw-test:~# ip route add 8.8.4.4 via 104.236.64.1 dev eth0 root@fw-test:~# /etc/networks文件的实际用途是什么?

4
如何在Linux上搜索整个手册页?
有时我需要在所有手册页中查找某些单词。我知道apropos,但是,如果我了解其手册权利,它将搜索仅限于描述。 每个手册页中都有简短说明。apropos在描述中搜索关键字的实例。 例如,如果我查找“ viminfo”之类的词,我将一无所获... $ apropos viminfo viminfo: nothing appropriate. ...尽管该词存在于Vim手册的第二部分(已安装在我的系统中)。 -i {viminfo} When using the viminfo file is enabled, this option sets the filename to use, instead of the default "~/.vim‐ info". This can also be used to skip the use of the .viminfo file, by giving the name …

6
使用GNU Parallel的Parallelise rsync
我一直在使用rsync脚本来将一台主机上的数据与另一台主机上的数据同步。数据中包含许多小型文件,这些文件几乎占了1.2TB。 为了同步这些文件,我一直使用rsync如下命令: rsync -avzm --stats --human-readable --include-from proj.lst /data/projects REMOTEHOST:/data/ proj.lst的内容如下: + proj1 + proj1/* + proj1/*/* + proj1/*/*/*.tar + proj1/*/*/*.pdf + proj2 + proj2/* + proj2/*/* + proj2/*/*/*.tar + proj2/*/*/*.pdf ... ... ... - * 作为测试,我选择了其中两个项目(8.5GB数据),并执行了上面的命令。作为一个顺序过程,它需要14分58秒才能完成。因此,对于1.2TB的数据,将需要几个小时。 如果我能多rsync在并行处理(使用&,xargs或parallel),这将节省我的时间。 我尝试使用下面的命令parallel(cd进入源目录后),花了12分37秒执行: parallel --will-cite -j 5 rsync -avzm --stats --human-readable {} REMOTEHOST:/data/ ::: …

4
“ inode大小”和“每个inode的字节数”之间有什么区别
下面的信息取自手册页,我想知道字节数/ inode和inode-size之间的区别吗? -i bytes-per-inode 指定字节/索引节点比率。mke2fs为磁盘上每个字节的每个索引字节空间创建一个索引节点。每inode的字节数比率越大,将创建的inode越少。该值通常不应小于文件系统的块大小,因为这样会导致过多的inode。请注意,创建文件系统后无法扩展inode的数量,因此请谨慎选择正确的值。此参数的值。 -I inode-size 指定每个inode的大小(以字节为单位)。mke2fs默认情况下会创建256字节的inode。在2.6.10之后的内核以及一些更早的供应商内核中,可以使用大于128字节的索引节点来存储扩展属性以提高性能。索引节点大小值必须是2的幂或大于128的幂。 -增大索引节点表将占用的空间,这会减少文件系统中的可用空间,并且还会对性能产生负面影响。存储在大型索引节点中的扩展属性在较旧的内核中不可见,并且此类文件系统无法在2.4内核中安装完全没有。创建文件系统后无法更改此值。
18 linux  ext2  mkfs 

2
为什么`kill -l`不列出信号号32和33?
kill -l在linux上执行可以得到: 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU …
18 linux  kill  signals 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.