1. Pengenalan
Sebagai operasi dan penyelenggaraan, kami sering menggunakan sistem operasi untuk pelbagai tujuan ini, tetapi sebenarnya kami akan menggunakan sistem operasi untuk pelbagai tujuan ini, tetapi kami akan menggunakan sistem operasi untuk pelbagai tujuan ini kerja berulang, kandungan operasi juga serupa Berdasarkan situasi ini, kita boleh membuat operasi yang sama menjadi skrip untuk pelaksanaan bersatu, dan secara manual memasukkan perkara yang berbeza sebagai pembolehubah. Tidakkah masa yang disimpan boleh digunakan untuk melakukan perkara yang lebih bermakna?
Baru-baru ini, saya menjumpai kod sumber shell yang agak mudah digunakan berdasarkan pengesyoran peminat, saya menyesuaikannya berdasarkan ini dan berkongsi dengan semua orang.
2. Menu
Menu utama:
Menu kedua:
牛逼啊!接私活必备的 N 个开源项目!赶快收藏吧
3. Kod sumber
#!/bin/sh . /etc/rc.d/init.d/functions export LANG=zh_CN.UTF-8 #一级菜单 menu1() { clear cat <<eof ---------------------------------------- |**** 欢迎使用cetnos7.9优化脚本 ****| |**** 博客地址: aaa.al ****| ---------------------------------------- 1. 一键优化 2. 自定义优化 3. 退出 EOF read -p "please enter your choice[1-3]:" num1 } #二级菜单 menu2() { clear cat <<eof ---------------------------------------- |****Please Enter Your Choice:[0-13]****| ---------------------------------------- 1. 修改字符集 2. 关闭selinux 3. 关闭firewalld 4. 精简开机启动 5. 修改文件描述符 6. 安装常用工具及修改yum源 7. 优化系统内核 8. 加快ssh登录速度 9. 禁用ctrl+alt+del重启 10.设置时间同步 11.history优化 12.返回上级菜单 13.退出 EOF read -p "please enter your choice[1-13]:" num2 } #1.修改字符集 localeset() { echo "========================修改字符集=========================" cat > /etc/locale.conf <<eof LANG="zh_CN.UTF-8" #LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" EOF source /etc/locale.conf echo "#cat /etc/locale.conf" cat /etc/locale.conf action "完成修改字符集" /bin/true echo "===========================================================" sleep 2 } #2.关闭selinux selinuxset() { selinux_status=`grep "SELINUX=disabled" /etc/sysconfig/selinux | wc -l` echo "========================禁用SELINUX========================" if [ $selinux_status -eq 0 ];then sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/sysconfig/selinux setenforce 0 echo '#grep SELINUX=disabled /etc/sysconfig/selinux' grep SELINUX=disabled /etc/sysconfig/selinux echo '#getenforce' getenforce else echo 'SELINUX已处于关闭状态' echo '#grep SELINUX=disabled /etc/sysconfig/selinux' grep SELINUX=disabled /etc/sysconfig/selinux echo '#getenforce' getenforce fi action "完成禁用SELINUX" /bin/true echo "===========================================================" sleep 2 } #3.关闭firewalld firewalldset() { echo "=======================禁用firewalld========================" systemctl stop firewalld.service &> /dev/null echo '#firewall-cmd --state' firewall-cmd --state systemctl disable firewalld.service &> /dev/null echo '#systemctl list-unit-files | grep firewalld' systemctl list-unit-files | grep firewalld action "完成禁用firewalld,生产环境下建议启用!" /bin/true echo "===========================================================" sleep 5 } #4.精简开机启动 chkset() { echo "=======================精简开机启动========================" systemctl disable auditd.service systemctl disable postfix.service systemctl disable dbus-org.freedesktop.NetworkManager.service echo '#systemctl list-unit-files | grep -E "auditd|postfix|dbus-org\.freedesktop\.NetworkManager"' systemctl list-unit-files | grep -E "auditd|postfix|dbus-org\.freedesktop\.NetworkManager" action "完成精简开机启动" /bin/true echo "===========================================================" sleep 2 } #5.修改文件描述符 limitset() { echo "======================修改文件描述符=======================" echo '* - nofile 65535'>/etc/security/limits.conf ulimit -SHn 65535 echo "#cat /etc/security/limits.conf" cat /etc/security/limits.conf echo "#ulimit -Sn ; ulimit -Hn" ulimit -Sn ; ulimit -Hn action "完成修改文件描述符" /bin/true echo "===========================================================" sleep 2 } #6.安装常用工具及修改yum源 yumset() { echo "=================安装常用工具及修改yum源===================" yum install wget -y &> /dev/null if [ $? -eq 0 ];then cd /etc/yum.repos.d/ \cp CentOS-Base.repo CentOS-Base.repo.$(date +%F) ping -c 1 mirrors.aliyun.com &> /dev/null if [ $? -eq 0 ];then wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo &> /dev/null yum clean all &> /dev/null yum makecache &> /dev/null else echo "无法连接网络" exit $? fi else echo "wget安装失败" exit $? fi yum -y install ntpdate lsof net-tools telnet vim lrzsz tree nmap nc sysstat &> /dev/null action "完成安装常用工具及修改yum源" /bin/true echo "===========================================================" sleep 2 } #7. 优化系统内核 #另外,搜索公众号技术社区后台回复“壁纸”,获取一份惊喜礼包。kernelset() { echo "======================优化系统内核=========================" chk_nf=`cat /etc/sysctl.conf | grep conntrack |wc -l` if [ $chk_nf -eq 0 ];then cat >>/etc/sysctl.conf<<eof net.ipv4.tcp_fin_timeout = 2 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_keepalive_time = 600 net.ipv4.ip_local_port_range = 4000 65000 net.ipv4.tcp_max_syn_backlog = 16384 net.ipv4.tcp_max_tw_buckets = 36000 net.ipv4.route.gc_timeout = 100 net.ipv4.tcp_syn_retries = 1 net.ipv4.tcp_synack_retries = 0 net.core.somaxconn = 16384 net.core.netdev_max_backlog = 16384 net.ipv4.tcp_max_orphans = 16384 net.netfilter.nf_conntrack_max = 25000000 net.netfilter.nf_conntrack_tcp_timeout_established = 180 net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120 net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60 net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120 EOF sysctl -p else echo "优化项已存在。" fi action "内核调优完成" /bin/true echo "===========================================================" sleep 2 } #8.加快ssh登录速度 sshset() { echo "======================加快ssh登录速度======================" sed -i 's#^GSSAPIAuthentication yes$#GSSAPIAuthentication no#g' /etc/ssh/sshd_config sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config systemctl restart sshd.service echo "#grep GSSAPIAuthentication /etc/ssh/sshd_config" grep GSSAPIAuthentication /etc/ssh/sshd_config echo "#grep UseDNS /etc/ssh/sshd_config" grep UseDNS /etc/ssh/sshd_config action "完成加快ssh登录速度" /bin/true echo "===========================================================" sleep 2 } #9. 禁用ctrl+alt+del重启 restartset() { echo "===================禁用ctrl+alt+del重启====================" rm -rf /usr/lib/systemd/system/ctrl-alt-del.target action "完成禁用ctrl+alt+del重启" /bin/true echo "===========================================================" sleep 2 } #10. 设置时间同步 ntpdateset() { echo "=======================设置时间同步========================" yum -y install ntpdate &> /dev/null if [ $? -eq 0 ];then /usr/sbin/ntpdate time.windows.com echo "*/5 * * * * /usr/sbin/ntpdate ntp.aliyun.com &>/dev/null" >> /var/spool/cron/root else echo "ntpdate安装失败" exit $? fi action "完成设置时间同步" /bin/true echo "===========================================================" sleep 2 } #11. history优化 historyset() { echo "========================history优化========================" chk_his=`cat /etc/profile | grep HISTTIMEFORMAT |wc -l` if [ $chk_his -eq 0 ];then cat >> /etc/profile <<'EOF' #设置history格式 export HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] [`whoami`] [`who am i|awk '{print $NF}'|sed -r 's#[()]##g'`]: " #记录shell执行的每一条命令 export PROMPT_COMMAND='\ if [ -z "$OLD_PWD" ];then export OLD_PWD=$PWD; fi; if [ ! -z "$LAST_CMD" ] && [ "$(history 1)" != "$LAST_CMD" ]; then logger -t `whoami`_shell_dir "[$OLD_PWD]$(history 1)"; fi; export LAST_CMD="$(history 1)"; export OLD_PWD=$PWD;' EOF source /etc/profile else echo "优化项已存在。" fi action "完成history优化" /bin/true echo "===========================================================" sleep 2 } #控制函数 main() { menu1 case $num1 in 1) localeset selinuxset firewalldset chkset limitset yumset kernelset sshset restartset ntpdateset historyset ;; 2) menu2 case $num2 in 1) localeset ;; 2) selinuxset ;; 3) firewalldset ;; 4) chkset ;; 5) limitset ;; 6) yumset ;; 7) kernelset ;; 8) sshset ;; 9) restartset ;; 10) ntpdateset ;; 11) historyset ;; 12) main ;; 13) exit ;; *) echo 'Please select a number from [1-13].' ;; esac ;; 3) exit ;; *) echo 'Err:Please select a number from [1-3].' sleep 3 main ;; esac } main $*
Simpan sebagai init.sh, kemudian berikan kebenaran pelaksanaan dan laksanakannya.
chmod +x init.sh && ./init.sh
Jika menyusahkan untuk salin dan tampal berulang-alik seperti ini, anda juga boleh melaksanakannya melalui arahan satu klik saya, yang juga boleh mencapai kesan di atas:
bash -c "$(curl -L s.aaa.al/init.sh)"
Akhir sekali, jika anda mempunyai fungsi yang anda ingin laksanakan , anda juga boleh menggunakannya berdasarkan skrip asal Laksanakan pengubahsuaian.
Atas ialah kandungan terperinci Skrip pengoptimuman sistem CentOS 7. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

CentOS menonjol di kalangan pengagihan Linux Enterprise kerana kestabilan, keselamatan, sokongan komuniti dan kelebihan aplikasi perusahaan. 1. Kestabilan: Kitaran kemas kini adalah panjang dan pakej perisian telah diuji dengan ketat. 2. Keselamatan: mewarisi ciri -ciri keselamatan RHEL, mengemas kini dan mengumumkan tepat pada masanya. 3. Sokongan Komuniti: Dokumentasi komuniti yang besar dan terperinci untuk bertindak balas terhadap masalah dengan cepat. 4. Aplikasi perusahaan: Teknologi kontena sokongan seperti Docker, sesuai untuk penggunaan aplikasi moden.

Alternatif untuk CentOS termasuk Almalinux, Rockylinux, dan Oraclelinux. 1.Almalinux menyediakan keserasian RHEL dan pembangunan yang didorong oleh komuniti. 2. Rockylinux menekankan sokongan peringkat perusahaan dan penyelenggaraan jangka panjang. 3. Oraclelinux menyediakan pengoptimuman dan sokongan khusus Oracle. Alternatif ini semua mempunyai kestabilan dan keserasian yang sama untuk CentOS, dan sesuai untuk pengguna dengan keperluan yang berbeza.

CentOS sesuai untuk persekitaran perusahaan dan pelayan kerana kestabilan dan kitaran hayatnya yang panjang. 1.Centos menyediakan sehingga 10 tahun sokongan, sesuai untuk senario yang memerlukan operasi yang stabil. 2.Ubuntu sesuai untuk persekitaran yang memerlukan kemas kini cepat dan mesra pengguna. 3.Debian sesuai untuk pemaju yang memerlukan perisian tulen dan percuma. 4.Fedora sesuai untuk pengguna yang suka mencuba teknologi terkini.

Alternatif untuk CentOS termasuk Almalinux, Rockylinux, dan Oraclelinux. 1.almalinux dan rockylinux membina semula RHEL 1: 1, menyediakan kestabilan dan keserasian yang tinggi, sesuai untuk persekitaran perusahaan. 2. Oraclelinux menyediakan prestasi tinggi melalui UEK, sesuai untuk pengguna yang biasa dengan tumpukan Teknologi Oracle. 3. Apabila memilih, kestabilan, sokongan komuniti dan pengurusan pakej perlu dipertimbangkan.

Alternatif CentOS termasuk rockylinux, almalinux, dan oraclelinux. 1. Rockylinux dan Almalinux menyediakan pengagihan stabil yang serasi dengan RHEL, sesuai untuk pengguna yang memerlukan sokongan jangka panjang. 2. Centosstream sesuai untuk pengguna yang memberi tumpuan kepada ciri -ciri baru dan kitaran pembangunan. 3. Oraclelinux sesuai untuk pengguna yang memerlukan sokongan peringkat perusahaan.

CentOS memerlukan alternatif kerana Centosstream tidak lagi memberikan sokongan jangka panjang. Pilihan alternatif termasuk: 1. Rockylinux, yang menyediakan 10 tahun sokongan kitaran hayat, sesuai untuk pengguna yang memerlukan kestabilan. 2.Almalinux juga menyediakan 10 tahun sokongan dan mempunyai sokongan masyarakat yang kuat. 3. Oraclelinux, menyediakan versi serasi RHEL, dan pengurusan kitaran hayat yang fleksibel.

Akhir CentOS mempunyai kesan yang signifikan terhadap pengguna, dengan pengguna mempunyai pilihan RHEL, Almalinux, Debian atau Ubuntu sebagai alternatif. 1. Kos penghijrahan adalah tinggi, memerlukan masa dan wang. 2. Bahagian Komuniti mempengaruhi projek sumber terbuka. 3.Rhel menyediakan sokongan komersial, tetapi ia mahal. 4.Almalinux adalah serupa dengan CentOS dan mempunyai kos penghijrahan yang rendah. 5. Debian dan Ubuntu memerlukan lebih banyak masa untuk menyesuaikan diri.

CentOS sesuai sebagai sistem operasi pelayan kelas perusahaan kerana ia stabil, selamat dan percuma. 1) Ia berdasarkan RHEL dan menyediakan keserasian yang tinggi dengan RHEL. 2) Gunakan yum untuk pengurusan pakej untuk memastikan perisian mudah dipasang dan dikemas kini. 3) Komuniti kerap melepaskan patch keselamatan, dengan kitaran sokongan sehingga 10 tahun.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini
