Linux常用命令-实用操作
静态ip
服务的启动关闭与重启(centos7)
systemctl start/stop/status servername
定时服务命令
crontab -e(进入编辑定时任务脚本)
格式为 minute hour day month weekday(周几) command
例如 * * * * * /root/test.sh(每隔一分钟就会执行一次test.sh脚本,因为系统默认每隔一分钟刷新crontab,如果改成 6 18 * * * /root/test.sh则是每天18:6执行test.sh),注意如果在里面使用shell命令如rm,tar等等命令,需要使用whereis commandname 查看命令的绝对路劲,然后在使用时需要写入命令的绝对路径
如果没有执行成功,可以使用 vi /var/spool/mail/root查看日志,里面可能会有提示,我定时执行脚本时就因为忘了给脚本加执行权限,日志里就提示未授权之类的信息
at的使用: at 23:30回车后输入systemctl restart httpd然后 ctrl+d结束定时任务的编写 ,使用at -l查看任务,使用atrm id(at -l时显示的该任务的id)删除该任务
shell 编程:
[ -d/-f/-r/-w/-x/-e /etc/fstab ]直接在终端输入该条语句,表示判断是否是文件夹或者文件可读可写可执行存在[]表示判断,注意值与括号之间是有空格的,否则会报错
防火墙配置(centos7)
查看防火墙状态 : systemctl status firewalld 或者 firewall-cmd --state(状态)/--reload(重启)
firewall-cmd --panic-on启用应急模式,阻断所有网络连接 --panic-off禁用应急模式,恢复网络连接--query-panic查询应急模式状态(没有输出的话,可以在命令行后面加&& echo "on"||echo "off")
systemctl disable firewalld.service 禁止防火墙开机自启
防火墙配置文件位于/etc/sysconfig/iptables
开启3306端口:-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
知识扩展:
echo "toor"|passwd --stdin root修改root的密码为toor
忘记root密码:在选择系统界面选中要修改的系统(我的就是默认的第一个),按e建进入修改,在修改界面一直下到文件末尾,在末尾前一行左右,找到UTF-8那一行,在这一行敲一个空格,然后打init=/bin/sh 修改完成后使用快键键ctrl+x。然后会进入一个sh-**#(**根据版本不同而不同)的界面,输入mount -o remount,rw / 然后passwd root,接着是输入密码(我试了很多次都没提示密码设置成功,百度了一下,发现只支持一个字符的密码,也就是说密码只能是一个字符,多了不行),提示有设置成功后 touch / .autorelabel (注意/左右都有一个空格),然后重启虚拟机系统就可以了
设置grub密码保护:查看grub登录用户名cat /etc/grub.d/01_users,可以看到用户名为root。通过grub2-setpasswords设置grub密码,确认密码 cat /boot/grub2/user.cfg。重启后进入grub需要用户名和密码
yum查看相关软件包:yum list all | grep ftp (列举名字包含ftp的软件包)
linux 启动流程:从BIOS开始,进入boot loader,加载内核,初始化内核,启动初始化进程
date的使用:date "+%y-%m-%d %H:%M:%S"显示该格式的时间,date -s "20170409 13:13:00"
wget的使用:wget -option url (-b:后台下载-O下载到指定目录)
ps的使用:ps -option(-a显示所有-u用户及其他详细信息-x显示没有控制终端的进程),top动态显示系统负载信息
查询进程pid:pidof sshd查询sshd的pid 杀死进程:kill pid杀死pid进程
查询系统信息:uname -n查看系统内核信息,更详细的内核信息用cat /etc/centos-release查看
查看系统运行时间uptime 查看内存使用量:free -h查看系统登录记录:last -n 5最近五次系统登录情况
随机数:echo $RANDOM 或者echo $(date +%s%N) 亦或head -n 200 /dev/urandom |cksum|cut -f1 -d " "
visudo的使用: 输入visudo回车后进入编辑窗口,找到root ALL=(ALL) ALL那行,在该行下面bp ALL=(ALL) ALL,最后一个ALL表示命令(需要是绝对路径),如:bp ALL=(ALL) /bin/cat授权bp用户能够在任何地方使用cat查看文件,例如 /etc/shadow(还需要在命令最前面加上sudo ,如sudo cat /etc/shadow)
导出环境变量(用处:例如自己写有一个打印1到100的脚本test.sh,想像使用ls之类的系统命令运行该脚本,绝对路径为/root/kali/test.sh):
export PATH=$PATH:/root/kali/ (只需要到脚本的上一层目录即可)
现在直接输入test.sh回车,如果不能运行,输入命令source /etc/profile回车,再次尝试应该就行了
发送邮件:
方法一:
echo "this is a test from kali"|mail -s "kalimail" user1 发送主题为kalimail,内容是this is a test from kali的邮件给叫做user1的用户
方法二:
echo -s "test" user1 <a.txt 把文件a.txt的内容发给user1用户
screen会话的使用:
目标:主机B同步操作主机A屏幕
A主机:screen -S bp 创建会话
B主机: ssh ipofA 远程连接
screen -ls 列出会话列表
怎么安装中文输入法(kali)
apt-get install fcitx fcitx-googlepinyin -y
如果左下角没有那个输入法工具栏,那么就在程序列表里面找到fcitx双击
如果能在输入法里找到谷歌拼音输入法,可是切换到拼音输入法也没办法拼音打字,那么,恭喜你,重启电脑吧
centos7 修改命令行为开机默认环境
systemctl get-default 获取当前默认环境
systemctl set-default multi-user.target 设置命令行为开机默认环境
systemctl set-fefault graphical.target 设置开机环境为图形界面
uname -a 操作系统信息
uname -r 内核查询
cat /etc/issue
cat /etc/***-release
修改终端命令行的显示PS1
首先进入家目录cd ,然后ls -a查看有没有.bashrc,如果没有就自己创建,如果有了,就末尾添加PS1="\[\e[32;40m\][\t]\$"其中红色部分就是设置颜色的意思,地一个数字是字体颜色,第二个是背景颜色,\t是显示时间,\$是根据用户觉得显示$还是#,保存退出,执行语句source .bashrc立即生效,结果如下
[02:53:02]$ls -a
. bp Downloads Pictures
.. .cache .esd_auth Public
anaconda-ks.cfg .config .ICEauthority .tcshrc
.bash_history .cshrc initial-setup-ks.cfg Templates
.bash_logout .dbus .local Videos
.bash_profile Desktop Music
.bashrc Documents original-ks.cfg
[03:01:38]$
转发80端口到8080
iptables -t nat -A PREROUTING -p tcp--dport
80
-jREDIRECT --to-port
8080