Articles of linux

crontab找不到脚本

我有一个cron作业,每晚在我的用户下运行一次。 我使用crontab -e安装了它,并添加了一行: 0 1 * * * /home/username/diskreport.sh crontab的设置是为了给我发电子邮件的结果。 看起来随机我从Cron守护进程收到一封电子邮件,说明没有find脚本(与diskreport.sh的输出相反)。 /bin/sh: 1: /home/username/diskreport.sh: not found 我在脚本开始时遇到了一个错误,但是这并不妨碍脚本的运行。 它在sh和bash下运行良好: #~/bin/bash

NFS:在mount上强制文件模式/掩码?

我在我的networking上有一台QNAP NAS,可以导出一些NFS共享,我将其安装在一台Linux机器上。 其中一个共享只有数据(没有可执行文件)。 但是,当我挂载NFS共享时,所有文件显示为-rwxrwxrwx (777)。 我已经用noexec挂载了这个共享,但是我想知道是否有一种方法来挂载这个共享,这样这些文件就好像他们的模式是-rw-r–r– (644)一样?

TCP回显服务器安全性

我正在build立一个类似于TCP回显服务器的Linux服务器,并且想知道我应该关心的安全问题。 这将是一个枯燥的CentOS / KDE服务器,除了我的服务器二进制文件外,没有其他文件在我select的端口上侦听。 假设我的服务器中没有任何缓冲区溢出或类似的安全漏洞,如果我将服务器configuration为删除除了服务器正在侦听的端口之外的所有端口上的所有非TCP通信,我是否有很多担心? 服务器从只执行权限的用户运行,并使用强根密码。 我错过了什么? 谢谢。

init启动监督失败

我在我的debian 7安装中使用pip安装了主pipe。 然后我抓住这个文件,并把它移到这里: /etc/init.d/supervisord https://github.com/Supervisor/initscripts/blob/master/debian-norrgard 然后我跑了: chmod +x /etc/init.d/supervisord update-rc.d supervisord defaults 但是,当我运行命令supervisord时,程序启动正常,但是当我运行: service supervisord start 我没有任何错误或消息,但主pipe并不真正开始。 我怎样才能找出发生了什么,为什么不是开始?

为什么我的可用磁盘空间如此之低?

我试图检查虚拟CentOS服务器上的可用磁盘空间(6 GB RAM,400 GB磁盘空间,3个CPU) 这是df -hT的输出: Filesystem Type Size Used Avail Use% Mounted on /dev/vzfs reiserfs 242G 578M 36G 2% / none devtmpfs 4,0G 4,0K 4,0G 1% /dev 正如你所看到的,可用磁盘空间只有36 GB,但实际数据只有0.5 GB。 (也是242 GB的总空间不符合承诺的400 GB,但这不是我担心的) 百分比再次看起来似乎合理,同时检查du返回大致相同的使用量。 我能够使用dd创build一个50 GB的文件,所以我想这只是“可用”值,这是错误的。 这里发生了什么? 编辑:过夜,问题似乎已经修复本身。 服务器没有重新启动。 我99%确定这与主机托pipe的虚拟化有关,但是如果有人能够说明这一点,我将不胜感激。

如何在Debian或Ubuntu中使用kickstart创buildencryption分区

我正在使用kickstart和networking引导来设置Ubuntu的自动安装。 与红帽这工作得很好,但Ubuntu的kickstart出现相当有限,我找不到文件描述可用的选项。 对我来说最重要的一个似乎缺less的是: –encrypted 即: part / home –size = 35000 –grow –fstype = xfs –encrypted 为了创buildencryption的分区。 然而,安装程序抱怨选项 – encryption是无法识别的,并继续与未encryption的分区。 有没有办法通过kickstart为Ubuntu(和Debian)自动创buildencryption分区? 另外还有没有可用的文档来描述可用于Ubuntu和Debian的kickstart选项? 我知道这方面的redhat文档,但由于缺less或不同的function,在这种情况下使用有限。

为什么date和触摸/统计返回不同的时间值?

在我的系统SLES 11.2中,我得到奇怪的输出文件访问时间。 date命令输出正确的时间: 然后通过运行touch创build一个新文件“a”,并使用stat来检查文件“a”的访问时间。 1) date Wed Mar 19 11:17:43 EST 2014 2) touch a 3) stat a File: `a' Size: 0 Blocks: 0 IO Block: 32768 regular empty file Device: 19h/25d Inode: 2168864 Links: 1 Access: (0644/-rw-r–r–) Uid: ( ) Gid: ( ) Access: 2014-03-19 07:00:40.277402670 +1100 Modify: 2014-03-19 07:00:40.277402670 +1100 Change: 2014-03-19 07:00:40.277402670 […]

智能短线离线testing永远不会结束RAID1的所有驱动器

我在这里有一个奇怪的情况。 在一台低stream量的服务器上使用了三年之后,一台RAID1中的两个三星硬盘之一昨天失败了: Personalities : [raid1] md0 : active raid1 sdb1[2](F) sda1[0] 732572608 blocks [2/1] [U_] 由于smartd没有任何报告,我检查了聪明的属性和唯一可疑的读数是不同的sdb(失败)与sda相比是: sda: 191 G-Sense_Error_Rate 0x0022 252 252 000 Old_age Always – 0 sdb: 191 G-Sense_Error_Rate 0x0022 098 098 000 Old_age Always – 27650 服务器机架中的G-sense错误? 也许传感器失败了? 但是在这两个驱动器上还有另一个时髦的阅读:最近的短线离线testing是“中断(主机复位)”,如果我用smartctl –test=short /dev/sda启动一个新的testing,select性自检日志显示: SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Self_test_in_progress [90% left] (0-65535) 然而,这个短暂的testing永远不会结束,甚至几个小时后,情况依然如此 […]

使用PHP脚本在Linux上对用户进行身份validation

我有一个运行在PHP中使用MySQL作为数据库运行的Web应用程序。 我试图让特定的用户通过SSH访问Linux系统来执行简单的命令行任务。 由于我已经有一个数据库准备好填充用户名/密码,我想用这个数据为用户login。我使用PHP函数password_verify和在某些情况下一次性密码,所以我无法使用MySQL直接进行authentication。 我想编写一个PHP脚本来login用户,如下所示: php login.php username password 只是返回1或0,或者主目录,权限等 我已经阅读了很多关于PAM和PHP的知识,但是这是关于在PHP中使用PAM的,我想用相反的方式。 为此目的使用LDAP服务器似乎对我来说有点矫枉过正。 我无法find我需要的东西。 有人能给我一个正确的方向推动吗?

我在哪里添加DKIM的细节到Ubuntu的amavisd.conf?

我试图添加一个DKIM密钥到我的Ubuntu邮件服务器上的其他域,我试图将下面的代码块添加到amavisd.conf文件 $enable_dkim_verification = 1; $enable_dkim_signing = 1; dkim_key('example.com', 'foo', '/var/db/dkim/example-foo.key.pem'); @dkim_signature_options_bysender_maps = ( { '.' => { ttl => 21*24*3600, c => 'relaxed/simple' } } ); @mynetworks = qw(0.0.0.0/8 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16); # list your internal networks 但是,在我的设置上,amavisd.conf文件被分割成以下文件: 01,Debian的 05-域ID 05-NODE_ID 15 av_scanners 15 content_filter_mode 20 debian_defaults 21 ubuntu_defaults 25 amavis_helpers 30 template_localization 40 […]