আমি কীভাবে পাসওয়ার্ড প্রম্পট ছাড়াই মাইএসকিউএল ইনস্টল করব?


26

আমি পাসওয়ার্ড প্রম্পট ছাড়াই উবুন্টু নাট্টিতে মাইএসকিউএল ইনস্টল করার চেষ্টা করছি। যাইহোক, আমি প্রধান ইনস্টলেশন পরে কিছু পর্যায়ে একটি পাসওয়ার্ড জন্য অনুরোধ করা অবিরত।

এছাড়াও, যখন আমি যা বিশ্বাস করি তা আমার পাসওয়ার্ড (মাইমিস্কাল্পাস) হওয়া উচিত, এটি আমাকে অ্যাক্সেস অস্বীকার করার বিজ্ঞপ্তি দেয়। এরপরে স্ক্রিপ্টটি শেষ হয়ে গেলে আমি পাসওয়ার্ড ছাড়াই মাইএসকিএল-তে লগইন করতে পারি অর্থাৎ মাইএসকিএল-রুট, যা হওয়া উচিত নয়।

#!/bin/bash
#This script installs mysql (latest build)
#Install MYSQL Server
mysql_pass=mymysqlpass
export DEBIAN_FRONTEND=noninteractive 
debconf-set-selections <<< 'mysql-server-5.1 mysql-server/root_password password '$mysql_pass''
debconf-set-selections <<< 'mysql-server-5.1 mysql-server/root_password_again password '$mysql_pass''
apt-get -y install mysql-server
#Configure Password and Settings for Remote Access
cp /etc/mysql/my.cnf /etc/mysql/my.bak.cnf
ip=`ifconfig eth0 | grep "inet addr"| cut -d ":" -f2 | cut -d " " -f1` ; sed -i "s/\(bind-address[\t ]*\)=.*/\1= $ip/" /etc/mysql/my.cnf
mysql -uroot -e "UPDATE mysql.user SET Password=PASSWORD('"$mysql_pass"') WHERE User='root'; FLUSH PRIVILEGES;"
sleep 10
mysql -uroot -p$mysql_pass -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '"$mysql_pass"'; FLUSH PRIVILEGES;"
#Restart
service mysql restart
echo "MySQL Installation and Configuration is Complete."

আমি খুব বিপজ্জনক হবে! এই তোমার কি দরকার?
পাস্কেল ভাড়া

6
যখন আপনি ভার্চুয়াল মেশিনগুলি সরবরাহ করছেন তখন একটি জিনিস। আপনি যদি সত্যিই উদ্বিগ্ন থাকেন তবে আমি নিশ্চিত যে আপনি এলোমেলো ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত পাসওয়ার্ড তৈরি করার মতো কিছু করতে পেরেছিলেন এবং স্ক্রিপ্টটি এমন কোনও সময় যখন পাসওয়ার্ড খুব কম থাকে এবং পাসওয়ার্ডটি আপনাকে জানাতে একটি ক্রোন জব তৈরি করতে পারে এবং সেখানে সিস্টেমটি এয়ারগ্যাপেড থাকে sure সময়। কেবল নিশ্চিত হয়ে নিন যে আপনি কম্পিউটারটি 5 সেকেন্ডের পরে এটি দেওয়ার আগে আপনি এটি দিয়ে যাচ্ছেন।
ট্রাইসিস

ওপি বলছে "আমি একটি পাসওয়ার্ডের জন্য অনুরোধ জানাই" তবে তার উদাহরণ কোডে আমাদের কাছে দুটি লাইন রয়েছে debconf-set-selectionsযা এড়ানো এড়াতে পারে, হ্রাস করা কারণ আমি বিশ্বাস করি যে প্রশ্ন এবং নমুনা কোডটি সময়মতো দুটি ভিন্ন পয়েন্টে সম্পাদিত হয়েছিল এবং এখন প্রশ্ন আর কোন মানে করে না।
মাস্তাজি

উত্তর:


46

strangehatআপনি mysql-serverপ্যাকেজ ইনস্টল করার সময় নিম্নলিখিত কমান্ডগুলি মাইএসকিউএল রুট পাসওয়ার্ড সেট করে ।

echo "mysql-server mysql-server/root_password password strangehat" | sudo debconf-set-selections
echo "mysql-server mysql-server/root_password_again password strangehat" | sudo debconf-set-selections

নোট করুন যে এটিতে আপনার পাসওয়ার্ডের স্পষ্ট পাঠ্য অনুলিপি তৈরি হয় /var/cache/debconf/passwords.dat(যা সাধারণত কেবল রুট দ্বারা পঠনযোগ্য এবং প্যাকেজটির সফল ইনস্টলেশন শেষে প্যাকেজ পরিচালনা সিস্টেম দ্বারা পাসওয়ার্ড মুছে ফেলা হবে mysql-server)।

ডকফাইফিলে যদি এটি ব্যবহার করা হয় তা নিশ্চিত করুন।

এখন আপনি ইনস্টল করতে পারেন mysql-serverএবং পাসওয়ার্ড প্রম্পট উপস্থিত হয় না:

sudo apt-get install mysql-server

11
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password my_password'
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password my_password'
sudo apt-get -y install mysql-server

এটি কোনও হস্তক্ষেপ ছাড়াই মাইএসকিএল ইনস্টল করবে


7

এটি আপনাকে প্রম্পট না করার জন্য এটি কাজ করতে পারে:

export DEBIAN_FRONTEND=noninteractive

স্ক্রিপ্ট হিসাবে, আমি উদ্ধৃতিতে পাসওয়ার্ড রাখার চেষ্টা করব:

mysql_pass="mymysqlpass"

1

আপনি যদি উদ্ধৃতিগুলির মধ্যে পাসওয়ার্ডটি রাখতে চান তবে এই অংশটির একটি পুনর্বিবেচনার প্রয়োজন: 'mysql-server-5.1 mysql-server / root_password পাসওয়ার্ড' $ mysql_pass ''

প্রতি:

"mysql-server-5.1 mysql-server/root_password password '$mysql_pass'"

এটি আমার জন্য কাজ করেছে (খালি রুটের পাসওয়ার্ড):

sudo debconf-set-selections <<< "mysql-server-5.5 mysql-server/root_password password ''"
sudo debconf-set-selections <<< "mysql-server-5.5 mysql-server/root_password_again password ''"
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password ''"
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password ''"
export DEBIAN_FRONTEND=noninteractive
sudo -E apt-get install -y -q mysql-server libmysqlclient-dev
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.