linux实用操作
静态ip
vi /etc/sysconfig/network-scripts/你的网卡名字(使用ifconfig查看,第一个就是)dhcp修改为static,onboot改为yes IPADDR=192.168.1.16 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=192.168.1.1,然后重启网路服务即可上网
服务的启动关闭与重启(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 列出会话列表
screen -x id / name 运行会话
怎么安装中文输入法(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
linux实用操作的更多相关文章
- 提高开发效率的 Eclipse 实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- python通过SSH登陆linux并操作
使用python通过SSH登陆linux并操作 用的昨天刚接触到的库,在windows下通过paramiko来登录linux系统并执行了几个命令,基本算是初试成功,后面会接着学习的. 代码: > ...
- Linux基础操作及概念
Linux基础操作及概念 终端的概念 通常我们在使用 Linux 时,并不是直接与系统打交道,而是通过一个叫做 Shell 的中间程序来完成的,在图形界面下为了实现让我们在一个窗口中完成用户输入和显示 ...
- linux 实用指令文件目录类
目录 linux实用指令文件目录类 路径 pwd指令 cd指令 操作文件夹/文件 ls指令 mkdir rmdir touch cp(重要) rm mv 操作内容 cat more less > ...
- linux文本操作界面 vi面板如何复制一行
linux文本操作界面 vi面板如何复制一行 1)把光标移动到要复制的行上2)按yy3)把光标移动到要复制的位置4)按p 在vi里如何复制一行中间的几个字符?如果你要从光标处开始复制 4 个字符,则先 ...
- linux常用操作指令
Linux常用操作指令: 常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(a ...
- Linux 下操作GPIO(两种方法,驱动和mmap)(转载)
目前我所知道的在Linux下操作GPIO有两种方法: 1.编写驱动,这当然要熟悉Linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据io ...
- Linux进程操作信息
Linux进程操作简单小结 linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不 ...
- Linux 下操作gpio(两种方法,驱动和mmap)
目前我所知道的在linux下操作GPIO有两种方法: 1. 编写驱动,这当然要熟悉linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据 ...
随机推荐
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- jdk8-lanbda方法引用和构造引用
1.方法引用概念及实例 1.对象实例方法 语法格式: 对象::实例方法名称 注意点: 实例方法必须和被实现的接口中定义的方法的参数列表和返回值一致.一般适合于一个方法就实现了的. 2.类::静态方法 ...
- java泛型讲解
原文: https://blog.csdn.net/briblue/article/details/76736356 泛型,一个孤独的守门者. 大家可能会有疑问,我为什么叫做泛型是一个守门者.这其实是 ...
- 异步设备IO OVERLAPPED结构(设备内核对象 事件内核对象 可提醒IO)
同步IO是指:线程在发起IO请求后会被挂起,IO完成后继续执行. 异步IO是指:线程发起IO请求后并不会挂起而是继续执行.IO完毕后会得到设备驱动程序的通知. 一.异步准备与OVERLAPPED结构 ...
- 安装gcc
yum -y install gcc yum -y install gcc-c++ yum install make -- 或者 yum groupinstall "Developmen ...
- powerdesigner 实体关系模型CDM与物理数据模型PDM互转
1.创建CDM 2.CDM转换PDM 3.PDM转CDM 环境 powerdesigner15.1 1.创建CDM File --> new Model-->Conceptual data ...
- POJ - 1845 G - Sumdiv (唯一分解定理)
Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine S m ...
- python第二天 python介绍与变量
编程语言的分类: 分别为 机器语言,汇编语言,高级语言 所以按照翻译方式又被分为两种 编译型:在代码执行时,需要先进行编译成二进制文件之后,才能够被执行 代表如:c语言,执行速度快,但是调试麻烦 解释 ...
- 3--Python入门--Python数据集合类型--元组
在基础数据类型的基础上,Python有6中数据集合的类型: 列表list,最常用的数据类型,以[]为标识 元组tuple,和list很相似,但是不能二次赋值,用()标识 集合set,和list类似,但 ...
- POJO,JaveBean,VO,DTO
POJO - POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称. 使用POJO名称是为了避免和EJ ...