ফ্ল্যাভিও ডি স্টেফানো
দ্বারাএই টিউটোরিয়ালটি প্রত্যেকের জন্য যারা একটি সম্পূর্ণ কালি ইনস্টলেশন সহ একটি USB স্টিক চান৷ আপনার Mac(গুলি) এর সাথে ব্যবহার করতে। এটি অধ্যবসায়ের সাথে একটি লাইভ কালী ইনস্টলেশন সম্পাদন করার উদ্দেশ্যে নয়।
আপনি যখন একটি USB স্টিকে একটি কালি ইনস্টলেশন করেন তখন সমস্যাটি হল যে কালী VFAT ফাইল সিস্টেমের সাথে ডিস্কটিকে পার্টিশন করে। ম্যাক ওএস শুধুমাত্র HFS+ পার্টিশন এবং এর জন্য প্রয়োজনীয় কিছু ফাইল চিনতে পারে।
সুতরাং, আপনার প্রয়োজন:
- আপনার ম্যাক
- কালী ISO ইনস্টলার সহ একটি USB স্টিক
- একটি লক্ষ্য ইউএসবি স্টিক, এসডি কার্ড বা একটি এসএসডি বাহ্যিক ড্রাইভ যেখানে আপনি কালি ইনস্টল করতে যাচ্ছেন (16GB এবং USB 3.0 প্রস্তাবিত)
এই টিউটোরিয়ালটি কালীর সঠিক সংশোধন সহ এই টিউটোরিয়ালটি দ্বারা অত্যন্ত অনুপ্রাণিত হয়েছে। https://medium.com/@mmiglier/ubuntu-installation-on-usb-stick-with-pure-efi-boot-mac-compatible-469ad33645c9
ইউএসবি লাইভ ইনস্টলেশন
প্রথমত, এই টিউটোরিয়ালটি অনুসরণ করে একটি USB স্টিকে কালি ইনস্টল করুন। এই ধাপে কীভাবে এগিয়ে যেতে হবে তা নিয়ে আমি আপনাকে বিরক্ত করব না, তবে এখানে শুরু করুন:
$ sudo dd if={KALI_ISO.iso} of=/dev/{USB} bs=1m
আপনি প্রস্তুত হলে, আপনার ম্যাক রিবুট করুন। আপনার USB স্টিক দুটি সন্নিবেশ করুন, তারপর ALT টিপুন এবং EFI বুট নির্বাচন করুন৷ লাইভ ইনস্টলার শুরু করতে।

কালি ইনস্টলার আপনাকে আপনার টাইমজোন এবং কীবোর্ড লেআউট সম্পর্কে বিভিন্ন প্রশ্ন জিজ্ঞাসা করবে।
এটি আপনাকে ডিস্ক পার্টিশন করতে না বলা পর্যন্ত এগিয়ে যান, এখানে নির্বাচন করুন:ম্যানুয়াল৷৷ তারপর আপনার USB লক্ষ্য নির্বাচন করুন৷ ড্রাইভ করুন (যেখানে আপনি কালি ইনস্টল করতে চান)। আপনি বিভিন্ন কারণ দ্বারা চিনতে পারেন, উদাহরণস্বরূপ এর আকার দ্বারা। চালিয়ে যান: ক্লিক করুন এটি আপনার ড্রাইভকে পার্টিশন করবে।
এখন, আবার একই স্ক্রিনে ফিরে যান এবং মুক্ত স্থান নির্বাচন করুন৷ ইউএসবি টার্গেট ড্রাইভের অধীনে। চালিয়ে যান ক্লিক করুন৷ এবং মুক্ত স্থান স্বয়ংক্রিয়ভাবে বিভাজন করুন৷ নির্বাচন করুন৷ প্রস্তাবিত বিকল্প অনুসরণ করুন. তারপর পার্টিশন শেষ করুন এবং ডিস্কে পরিবর্তন লিখুন-এ ক্লিক করুন .
ইনস্টলেশন প্রক্রিয়া এখন ডিস্কে ডেটা কপি করবে। এটি শেষ না হওয়া পর্যন্ত অপেক্ষা করুন (এতে ~30 মিনিট সময় লাগবে)।
GRUB লাইভ থেকে বুট করুন
একবার শেষ হয়ে গেলে, আপনার Mac পুনরায় বুট হবে এবং আপনাকে ALT টিপতে হবে৷ আবার EFI বুট নির্বাচন করুন আবার।
আমাদের এখন যা করতে হবে তা হল লাইভ GRUB এর মাধ্যমে আমাদের ইনস্টল করা কালি সিস্টেম লোড করা। , কারণ আমাদের ইনস্টল করা সিস্টেমে MacOS দ্বারা স্বীকৃত বুট-লোডার নেই৷
GRUB লোড হয়ে গেলে, c টিপুন GRUB কমান্ড-লাইন-ইন্টারফেস পেতে।
এখন আপনাকে বুঝতে হবে কোন এইচডিতে আপনার কালি ইনস্টলেশন। এটি করার জন্য, যখন GRUB cli লোড হয়, ls টাইপ করুন; আপনার USB স্টিক বের করুন এবং ls টাইপ করুন আবার।
grub> ls
(memdisk) (hd0) (hd1) (hd1,gpt3) (hd1, gpt2) (hd1,gpt1) ...
আপনি লক্ষ্য করবেন যে একটি hd{X} অদৃশ্য হয়ে গেছে:এটি আপনার ড্রাইভ। এখন আপনাকে আপনার gpt. খুঁজে বের করতে হবে সম্ভবত এটি gpt2 , কিন্তু শুধু নিশ্চিত হতে, টাইপ করুন:
grub> ls (hdX,gpt2)/boot/grub
unicode.pf2 ...
যদি কমান্ড বলে unicode.. এটা সঠিক জিপিটি; অন্য gpts চেষ্টা করুন অন্যথায়। এখন পার্টিশনের আপনার UUID খুঁজুন, এবং এটি টীকা করুন।
grub> ls -l (hdX},gpt{X})
Partition hd2,gpt2: Filesystem type ext* 〈...snip...〉 UUID e86c20b9-83e1-447d-a3be-d1ddaad6c4c6 - Partition start at [...]
এখন আমরা বুট করার জন্য GRUB-তে প্যারামিটার সেট করতে পারি না (ট্যাব ব্যবহার করুন স্বয়ংসম্পূর্ণ ব্যবহার করার কী):
grub> set root=(hd{X},gpt{X})
grub> linux /boot/vmlinuz〈...tab here!...〉.efi.signed root=UUID=〈the UUID〉
grub> initrd /boot/initrd〈...tab here!...〉
grub> boot
এটি আপনার সম্পূর্ণ কালি ইনস্টলেশন বুট করা উচিত লাইভ GRUB ব্যবহার করে। লগইন প্রক্রিয়া চলাকালীন এটি যে পাসওয়ার্ডটি স্বীকৃতি দেয় তার মাধ্যমে আপনি লাইভ পরিবেশ থেকে পার্থক্য করতে পারেন।
EFI পার্টিশন ঠিক করা
একবার আপনি আপনার কালি ইনস্টলেশনে লগ ইন করলে, টার্মিনাল খুলুন এবং টাইপ করুন:
$ fdisk -l
এবং আপনার ড্রাইভ খুঁজুন।
এখন, gdisk খুলুন (কালিতে ডিফল্টভাবে ইনস্টল করা) ড্রাইভটি পার্টিশন করতে (এখানে খুব সতর্ক থাকুন):
$ gdisk /dev/sd{X}
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: hybrid
BSD: not present
APM: not present
GPT: present
Found valid GPT with hybrid MBR; using GPT.
Command (? for help):
পার্টিশন টেবিল প্রিন্ট করুন এবং নিশ্চিত করুন যে প্রথম পার্টিশনে EF00:
টাইপ আছেCommand (? for help): p
Disk /dev/sdd: ...
[...]
Number Start (sector) End (sector) Size Code Name
1 2048 1050623 512.0 MiB EF00 EFI System Partition
[...]
এখন আমাদের করতে হবে:
- ওই EF00 পার্টিশন মুছে দিন
- একবার তার জায়গায় একটি নতুন HFS+ তৈরি করুন
Command (? for help): d
Partition number (1-3): 1
Command (? for help): n
Partition number (1-128, default 1): 1
Just leave defaults values in the sector phase
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): AF00
Changed type of partition to 'Apple HFS/HFS+'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdd.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.
এখন আমাদের একটি আনফরম্যাট করা HFS+ পার্টিশন আছে। বিন্যাস করতে, আমাদের কিছু সরঞ্জামের প্রয়োজন; কিন্তু এই টুলগুলি পেতে আমাদের ডেবিয়ান সোর্স-লিস্টকে উপযুক্ত-এ যোগ করতে হবে।
$ echo "deb http://ftp.debian.org/debian unstable main contrib non-free" > /etc/apt/sources.list.d/debian.list
$ apt update
$ apt install hfsprogs
আমরা সেই পার্টিশনটি ফরম্যাট করতে পারি:
$ mkfs.hfsplus /dev/sd{X}1 -v Kali
Initialized /dev/sd{X}1 as a 512 MB HFS Plus volume
এখন আমাদের /etc/fstab সম্পাদনা করতে হবে ফাইল:
$ gedit /etc/fstab
এটি গেডিট চালু করবে। এই ফাইলে, এই লাইনগুলি স্থানীয়করণ করুন:
# /boot/efi ইনস্টলেশনের সময় /dev/sd{X}1 এ ছিল
UUID={XXXXXX} /boot/efi vfat ডিফল্ট 0 1
এবং সেগুলি মুছুন৷
৷এখন, বুট পার্টিশন আনমাউন্ট করুন, এটি ব্যবহার করে স্থানীয়করণ করুন:
$ mount | grep /boot/efi
/dev/sd{Y}1 on /boot/efi ...
$ umount /dev/sd{Y}1
তারপর আপনার fstab ফাইলে প্রয়োজনীয় এন্ট্রি যোগ করতে এটি চালান:
$ echo "UUID=$(blkid -o value -s UUID /dev/sd{X}1) /boot/efi auto defaults 0 0" >> /etc/fstab
এখন আমাদের GRUB পুনরায় ইনস্টল করতে হবে যাতে এটি তার EFI ডেটার জন্য নতুন ফর্ম্যাট করা HFS+ পার্টিশন ব্যবহার করতে পারে:
$ mkdir -p /boot/efi/EFI/Kali
$ echo "This file is required for booting" > /boot/efi/EFI/Kali/mach_kernel
$ echo "This file is required for booting" > /boot/efi/mach_kernel
$ grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi --bootloader-id=Kali
তারপরে আমাদের বুটলোডার কোডটিকে "আশীর্বাদ" করতে হবে, যাতে ম্যাক বুটলোডার এটি বুট করে। এটি করার জন্য আমাদের hfsbless প্রয়োজন বাইনারি যা apt এর মাধ্যমে উপলব্ধ নয়। কোন সমস্যা নেই, শুধু সংগ্রহস্থল ক্লোন করুন এবং তৈরি করুন:
$ cd /root
$ git clone https://github.com/detly/mactel-boot
$ cd mactel-boot
$ make
তারপর আশীর্বাদ করুন:
./hfs-bless /boot/efi/EFI/Kali/System/Library/CoreServices/boot.efi
চূড়ান্ত ধাপ হল গ্রাব কনফিগারেশন তৈরি করা:
$ sed -i 's/GRUB_HIDDEN/#GRUB_HIDDEN/g' /etc/default/grub
$ sed -i 's/GRUB_TIMEOUT=10/GRUB_TIMEOUT=0.1/' /etc/default/grub
$ grub-mkconfig -o /boot/grub/grub.cfg
পারফেক্টো! এখন রিবুট করুন এবং আপনি ALT টিপে Mac বুটলোডারে আপনার USB স্টিক দেখতে পাবেন .
ভার্চুয়ালবক্সের মাধ্যমে USB ভার্চুয়ালাইজ করা হচ্ছে
আপনার যদি কখনও ভার্চুয়ালবক্সের মাধ্যমে (ম্যাক ওএসএক্সে) এই USB স্টিকটি বুট করার প্রয়োজন হয়, তবে এটি করার জন্য একটি সহজ কৌশল রয়েছে৷
প্রথমত, আপনাকে একটি VMDK ডিস্ক তৈরি করতে হবে যা আপনার USB স্টিকের সেক্টরগুলিতে নির্দেশ করে। সুতরাং, আসুন সেই ডিস্কটি সনাক্ত করি:
$ diskutil list
/dev/disk0 (internal):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme 500.3 GB disk0
1: EFI EFI 314.6 MB disk0s1
2: Apple_APFS Container disk1 499.3 GB disk0s2
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +499.3 GB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD 222.0 GB disk1s1
2: APFS Volume Preboot 22.4 MB disk1s2
3: APFS Volume Recovery 519.9 MB disk1s3
4: APFS Volume VM 3.2 GB disk1s4
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *32.0 GB disk3
আমাদের ক্ষেত্রে, এটি /dev/disk3। এগিয়ে যাওয়ার আগে আনমাউন্ট করা যাক:
$ diskutil unmountDisk /dev/disk{X}
ভার্চুয়ালবক্স ইনস্টল করার সাথে, চালান:
$ sudo VBoxManage internalcommands createrawvmdk -filename ~/Kali.vmdk -rawdisk /dev/disk{X}
$ chmod 777 ~/Kali.vmdk
$ chmod 777 /dev/disk{X}
পারফেক্টো। এখন, ভার্চুয়ালবক্স UI চালান এবং নিম্নলিখিত সেটিংস সহ একটি নতুন মেশিন তৈরি করুন:

যখন ভার্চুয়ালবক্স আপনাকে একটি ডিস্কের জন্য জিজ্ঞাসা করে, আসুন আগে তৈরি করা VMDK-এর দিকে নির্দেশ করি:

মেশিন চালু করার আগে, সেটিংসে যান এবং আপনার প্রসেস কাউন্ট, ভিডিও এবং মেমরি সামঞ্জস্য করুন।
গুরুত্বপূর্ণ বিষয়গুলি হল EFI সক্ষম করুন সেট করা৷ সিস্টেম> মাদারবোয়া এর অধীনে rd.

এটি আপনাকে EFI এর মাধ্যমে বুট করার অনুমতি দেবে। এখন ভার্চুয়াল মেশিন চালু করুন এবং অবিলম্বে F12 টিপুন .
বুট রক্ষণাবেক্ষণ ম্যানেজার: নির্বাচন করুন

ফাইল থেকে বুট করুন: নির্বাচন করুন

তারপরে {SATA_DRIVE}> EFI> কালি> সিস্টেম> লাইব্রেরি> CoreServ নির্বাচন করুন ices> boot.efi

এবং, voilà:

সাথে থাকুন :)
বিনামূল্যে কোড শিখুন. freeCodeCamp-এর ওপেন সোর্স পাঠ্যক্রম 40,000-এরও বেশি লোককে ডেভেলপার হিসেবে চাকরি পেতে সাহায্য করেছে। শুরু করুন