9 linux 高级服务
samba 是windows系统的文件共享功能。linux系统同样可以创建这个服务,让网络中的计算机进行文件共享。
配置文件位置
/etc/samba
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/20120416124846578.png)
smb.conf 主要配置文件,定义服务器名称,共享方式,共享文件夹等
lsmhosts 定义主机
smbpasswd 保存登录samba服务的用户的密码(samba用户是系统用户,但密码与系统登录密码不同)
smb.conf配置文件主要配置内容
配置文件位置
/etc/samba
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/20120416124846578.png)
smb.conf 主要配置文件,定义服务器名称,共享方式,共享文件夹等
lsmhosts 定义主机
smbpasswd 保存登录samba服务的用户的密码(samba用户是系统用户,但密码与系统登录密码不同)
smb.conf配置文件主要配置内容
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248463958.png)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248468103.png)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/20120416124846644.png)
workgroup=设置工作组,如果需要和windows在同一个组中,默认应为WORKGROUP
netbios name=windows网络的主机名
security=安全设置,
user代表需要使用linux系统用户登录
share代表为公共目录,不需要密码即可进入
server需要验证的用户名和密码存放在其他服务器中。
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248462072.png)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248466217.png)
共享目录设置
[myshare]
comment= my share directory
browseable=yes
writable=yes
path=/tftpboot
guest ok=yes
public=yes
readonly=no
[myshare]共享目录名
comment=注释文字
browseable=是否可以查看到共享目录名
writable=是否可写
path=被共享的目录路径
guest ok=客户是否可以访问
public=是否是公共目录
readonly=是否只读
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248475170.png)
设置完成以后需要重新启动服务器
service smb restart
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248474647.jpg)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248478824.jpg)
如果需要写权限,需要给目录增加o+w权限。默认samba文件操作时使用nobody用户
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248488301.jpg)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248487221.png)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248481365.png)
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248482794.png)
如果无法访问虚拟机中的linux服务器,需要检查的问题
1.linux系统ip地址是否设置正确。ifconfig显示ip,使用setup设置网络
2.linux系统防火墙是否开启,setup命令防火墙设置,将防火墙禁用
3.虚拟机的网络设置为bridegd adapter
4.通过ping命令进行测试
使用系统用户进行登录验证
修改smb.conf配置文件
security=user
注释passdb backend
增加 smb passwd file = /etc/samba/smbpasswd
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248487810.png)
修改smb.conf配置文件
security=user
注释passdb backend
增加 smb passwd file = /etc/samba/smbpasswd
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248487810.png)
为系统用户指定samba密码
smbpasswd -a nicolas
产生smbpasswd密码文件
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/20120416124849352.png)
修改配置文件就需要重新启动服务,使新配置生效
service smb restart
如果默认显示的用户家目录无法进入,查看此用户的家目录权限,修改为700
==============================================================================
linux系统计划任务,用于指定系统在何时运行命令操作系统进行备份等操作。
计划任务分为两种,一种是单次执行的at计划任务。一种是循环执行的cron计划任务
at服务由atd脚本控制,默认系统是自动启动的,以相应指定时间的计划任务。
如果需要重新启动服务,可以使用
service atd restart
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248495368.png)
增加一个计划任务
at 运行时间
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248494288.png)
例如: at 10:10
当指定时间后,进入at的命令输入状态,可以输入多行指令。最后使用ctrl+d结束输入
输入结束后,会显示任务编号以及执行的时间。
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248499861.png)
查询即将执行的单次计划任务
atq
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248494006.png)
删除计划任务
atrm 任务编号
任务编号可以通过atq进行查询。执行过的计划任务,自动消失。
at计划任务,默认只有root用户可以使用,如果需要让普通用户可以执行at计划任务,需要在/etc/at.allow文件中指定用户名,表示允许此用户执行at指令。
/etc/at.allow用于指定允许的用户名,没有指定的为禁止
/etc/at.deny用于指定禁止的用户名,没有指定的为允许
如果allow和deny同时存在,则以allow为准。
===========================================================================
循环执行计划任务cron
通过配置文件指定何时运行计划任务,此计划任务将一直执行。直到再次修改计划任务并删除此项。
修改计划任务
使用crontab -e打开当前用户的循环计划任务配置。
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248492926.png)
查询计划任务使用 crontab -l
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248493482.png)
配置文件内容,格式可以通过man 5 crontab
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248502959.png)
系统的循环计划任务写在/etc/crontab文件中,自动执行对系统的索引和备份操作。
增加root用户循环执行的计划任务
crontab -e
每分钟将当前日期和时间追加到文本文件中
0-59 * * * * date >> ~/mydate.txt
![](https://images.cnblogs.com/cnblogs_com/bingqili/201204/201204161248507976.png)
其中每一位的作用
分钟(0-59)、 小时(0-23)、 天(1-31)、月(1-12)、 星期(0-7) 、执行的命令
如果需要忽略的位可以用*表示
指定范围可以用0-4,8-16指定,或使用间隔0-12/2表示每个2个小时执行一次
重新启动计划任务服务
service crond restart