Linux实践

系统:CentOS6.5

12、yum下载

#将一个包下载到一个指定的目录(如/tmp):
yum install --downloadonly --downloaddir=/tmp <package-name> 
#但是,在CentOS/RHEL 6或更早期的版本中,你需要安装一个单独yum插件(名称为 yum-plugin-downloadonly)才能使用--downloadonly命令选项
yum install yum-plugin-downloadonly
#说明:如果下载的包包含了任何没有满足的依赖关系,yum将会把所有的依赖关系包下载,但是都不会被安装。已经通过yum安装过的包,使用这个命令得不到下载

11、Linux上ftp操作

ftp
open ip port
name
password
passive    #输入这条命令后,其他命令才会生效
bin #输入这条命令后下载的包才可用
ls
get
bye

10、ctrl+c终止不了telnet

ctrl + ]
quit

9、linux硬连接与软连接

ln -s 文件路径 软连接路径
ln 文件路径 硬连接路径
#相同点:都是一个文件,修改的都会同步到源文件
#不同点:删除软连接源文件,软连接失效;删除硬连接或者删除源文件,文件已经存在,除非把源文件和所有的硬连接全部删除
#理解:软连接-快捷方式;    硬连接-又一个文件路径,把所有的路径都删除了,源文件就删除了

8、配置SSH免密登录

root用户的SSH免密登录

ssh-keygen -t rsa    //三次回车生成公私匙文件
cd  /root/.ssh  //进入.ssh文件夹
cat id_rsa.pub >> authorized_keys  //复制公匙到authorized_keys
scp /root/.ssh/authorized_keys root@hostname:/root/.ssh/    //scp到指定服务器
ssh hostname //成功无密码登录指定服务器即成功
//要免密登录某一台服务器,把自己公匙scp到那台服务器就可以了
非root用户的SSH免密登录
ssh-keygen -t rsa    //三次回车生成公私匙文件
cd  ~/.ssh  //进入.ssh文件夹
cat id_rsa.pub >> authorized_keys  //复制公匙到authorized_keys
scp ~/.ssh/authorized_keys username@hostname:~/.ssh/    //scp到指定服务器用户目录下的.ssh文件夹
chmod 700 ~/.ssh  //更改权限

chmod 600 authorized_keys

ssh hostname //成功无密码登录指定服务器即成功

7、修改Hostname

hostname newHostname  //临时生效
vi /etc/sysconfig/network   //重启后生效
//两者同时使用就满足马上生效并永久修改

6、编写定时脚本,定时删除文件

//A、编写shell脚本,新建一个可执行文件auto-del-30-days-ago-log.sh,并分配可运行权限
#touch /opt/soft/bin/auto-del-30-days-ago-log.sh
#chmod +x auto-del-30-days-ago-log.sh
#vi auto-del-30-days-ago-log.sh
#!/bin/sh
find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \;
//B、加入系统计划任务中
#crontab -e
10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1
//C、通过crontab –e来创建自己的定时任务,5个*的含义是,第一个*是分,第二个*是小时,第三个*是日,第4个*是月,第5个*是周,第6列是命令
service crond status 查看crontab服务状态:
service crond start 启动服务
service crond stop 关闭服务
service crond restart重启服务
service crond reload 重新载入配置
//-mtime n 按照文件的更改时间来找文件,n为整数。
//D、说明
/*n表示文件更改时间距离为n天, -n表示文件更改时间距离在n天以内,+n表示文件更改时间距离在n天以前。
-mtime 0 表示文件修改时间距离当前为0天的文件,即距离当前时间不到1天(24小时)以内的文件。
-mtime 1 表示文件修改时间距离当前为1天的文件,即距离当前时间1天(24小时-48小时)的文件。
-mtime+1 表示文件修改时间为大于1天的文件,即距离当前时间2天(48小时)之外的文件
-mtime -1 表示文件修改时间为小于1天的文件,即距离当前时间1天(24小时)之内的文件
为什么-mtime+1 表示文件修改时间为大于1天的文件,即距离当前时间48小时之外的文件,而不是24小时之外的呢?
因为n值只能是整数,即比1大的最近的整数是2,所有-mtime+1不是比当前时间大于1天(24小时),而是比当前时间大于2天(48小时)
find /opt/soft/bin/ -mtime +2 -name ".log" -exec rm -rf {} \;  //清理命令 后面的;不可丢
find:linux的查找命令,用户查找指定条件的文件;
/opt/soft/bin/:想要进行清理的任意目录;
-mtime:最后修改内容时间 
+30:查找30天前的文件,这里用数字代表天数;
"*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件
-exec:固定写法,执行;
rm -rf:强制删除文件,包括目录;
{} \; :固定写法,一对大括号+空格+\+;*/ 

5、基本权限操作

ls -l(或者直接ll) filename  #ls -ld directoryname   //查看详细信息包含权限
r w x 读 写 执行 对应 4 2 1
chmod +x a.sh  #chmod -x a.sh  //增加删除执行权限
chmod 666(4+2) filename  #chmod 777(4+2+1) filename  //一般文件644,目录755
//三个数按顺序分别对应所有者,用户组,其他人。例如755标识所有者读写执行(4+2+1),所有者所在用户组的用户读执行(4+1),其他人读执行(4+1)

4、后台运行与输出日志

nohup XXX &  //后台运行
command >server.log  == command 1 >server.log  //标准输出
command >server.log 2>&1   //标准错误重定向到标准输出。就是标准错误和标准输出都重定向到一个server.log,不覆盖
// 0-标准输入 1-标准输出 2-标准错误

3、参数查看

free -g //查看内存,G为单位
df -h //查看硬盘 top //查看内存,细一些,类似windows任务管理器 再按shift+m根据内存从大到小排序

2、根据文件名查找文件

find / -name httpd.conf  //在根目录下查找文件httpd.conf,表示在整个硬盘查找
find /etc -name httpd.conf  //在/etc目录下文件httpd.conf
find /etc -name '*srm*' //使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
find . -name 'srm*'   //表示当前目录下查找文件名开头是字符串‘srm’的文件

1、防火墙(root权限,两者结合就是立即生效,永久修改)

临时关闭防火墙,立即生效,重启后失效

service iptables start  //开启
service iptables stop  //关闭
service iptables status  //查看防火墙状态

永久关闭防火墙,重启后生效

chkconfig iptables on  //永久开启,重启后生效
chkconfig iptables off  //永久关闭,重启后生效

猜你喜欢

转载自www.cnblogs.com/ggblog/p/8992149.html