إعداد جهاز ظاهري يستند إلى CentOS لـ Azure
تنبيه
تشير هذه المقالة إلى CentOS، وهو توزيع Linux يقترب من حالة نهاية العمر الافتراضي (EOL). يرجى مراعاة استخدامك والتخطيط وفقا لذلك. لمزيد من المعلومات، راجع إرشادات نهاية العمر الافتراضي CentOS.
ينطبق على: ✔️ أجهزة Linux الظاهرية ✔️ مجموعات مقياس مرنة
تعرف على كيفية إنشاء وتحميل قرص ثابت ظاهري (VHD) لـ Azure يحتوي على نظام تشغيل Linux يستند إلى CentOS.
المتطلبات الأساسية
تفترض هذه المقالة أنك قمت بالفعل بتثبيت نظام تشغيل CentOS (أو مشتق مشابه) Linux على قرص ثابت ظاهري. توجد أدوات متعددة لإنشاء ملفات .vhd، على سبيل المثال حل الظاهرية، مثل Hyper-V. للحصول على الإرشادات، راجع تثبيت دور Hyper-V وتكوين جهاز ظاهري.
ملاحظات تثبيت CentOS
- لمزيد من النصائح حول إعداد Linux ل Azure، راجع ملاحظات تثبيت Linux العامة.
- تنسيق VHDX غير مدعوم في Azure، فقط VHD ثابت. يمكنك تحويل القرص إلى تنسيق VHD باستخدام Hyper-V Manager أو cmdlet المسمى convert-vhd. إذا كنت تستخدم VirtualBox، فهذا يعني تحديد حجم ثابت بدلا من الحجم الافتراضي المخصص ديناميكيا عند إنشاء القرص.
- يجب تمكين الوحدة النمطية vfat kernel في النواة
- عند تثبيت نظام Linux، نوصي باستخدام الأقسام القياسية بدلا من LVM (غالبا ما يكون الافتراضي للعديد من التثبيتات). يؤدي هذا إلى تجنب تعارض اسم LVM مع الأجهزة الظاهرية المستنسخة، خاصة إذا كان قرص نظام التشغيل بحاجة إلى إرفاقه بجهاز ظاهري آخر متطابق لاستكشاف الأخطاء وإصلاحها. يمكن استخدام LVM أو RAID على أقراص البيانات.
- يعد دعم Kernel لتركيب أنظمة ملفات UDF ضرورياً. عند التمهيد الأول على Azure، يتم تمرير تكوين التوفير إلى جهاز Linux الظاهري باستخدام وسائط بتنسيق UDF متصلة بالضيف. يجب أن يقوم عامل Azure Linux أو cloud-init بتحميل نظام ملفات UDF لقراءة تكوينه وتوفير الجهاز الظاهري.
- لا تدعم إصدارات Linux kernel التي تقل عن 2.6.37 NUMA على Hyper-V بأحجام أجهزة ظاهرية أكبر. تؤثر هذه المشكلة بشكل أساسي على التوزيعات القديمة باستخدام نواة Centos 2.6.32 المصدر وتم إصلاحها في Centos 6.6 (kernel-2.6.32-504). يجب على الأنظمة التي تعمل على نواة مخصصة أقدم من 2.6.37 أو نواة تستند إلى RHEL أقدم من 2.6.32-504 تعيين معلمة
numa=off
التمهيد على سطر أوامر kernel في grub.conf. لمزيد من المعلومات، راجع Red Hat KB 436883. - لا تقم بتكوين قسم مبادلة على قرص نظام التشغيل.
- يجب أن يكون لجميع أقراص VHD على Azure حجم ظاهري محاذاته إلى 1 ميغابايت. عند التحويل من قرص خام إلى VHD، يجب التأكد من أن حجم القرص الخام هو مضاعف 1 ميغابايت قبل التحويل. راجع ملاحظات تثبيت Linux للحصول على مزيدٍ من المعلومات.
إشعار
Cloud-init >= 21.2 يزيل متطلبات udf. ومع ذلك، دون تمكين وحدة udf النمطية، لن يتم تحميل cdrom أثناء التوفير، مما يمنع تطبيق البيانات المخصصة. الحل البديل لذلك هو تطبيق البيانات المخصصة باستخدام بيانات المستخدم. ومع ذلك، على عكس البيانات المخصصة، لا يتم تشفير بيانات المستخدم. https://cloudinit.readthedocs.io/en/latest/topics/format.html
CentOS 6.x
هام
يرجى ملاحظة أن CentOS 6 قد وصل إلى نهاية العمر الافتراضي (EOL) ولم يعد مدعوما من قبل مجتمع CentOS. وهذا يعني أنه لن يتم إصدار أي تحديثات أو تصحيحات أمان إضافية لهذا الإصدار، مما يجعلها عرضة للمخاطر الأمنية المحتملة. نوصي بشدة بالترقية إلى إصدار أحدث من CentOS لضمان سلامة النظام واستقراره. يرجى استشارة قسم تكنولوجيا المعلومات أو مسؤول النظام للحصول على مزيد من المساعدة.
في Hyper-V Manager، حدد «الجهاز الظاهري».
انقر فوق اتصال لفتح نافذة وحدة تحكم للجهاز الظاهري.
في CentOS 6، يمكن أن يتداخل NetworkManager مع عامل Azure Linux. قم بإلغاء تثبيت هذه الحزمة عن طريق تشغيل الأمر التالي:
sudo rpm -e --nodeps NetworkManager
أنشئ الملف
/etc/sysconfig/network
أو حرره، ثم أضف النص التالي:NETWORKING=yes HOSTNAME=localhost.localdomain
أنشئ الملف
/etc/sysconfig/network-scripts/ifcfg-eth0
أو حرره، ثم أضف النص التالي:DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp TYPE=Ethernet USERCTL=no PEERDNS=yes IPV6INIT=no
تعديل قواعد udev لتجنب إنشاء قواعد ثابتة لواجهة (واجهات) Ethernet. قد تتسبب هذه القواعد في حدوث مشكلات عند استنساخ جهاز ظاهري في Microsoft Azure أو Hyper-V:
sudo ln -s /dev/null /etc/udev/rules.d/75-persistent-net-generator.rules sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
تأكد من بدء خدمة الشبكة في وقت التمهيد عن طريق تشغيل الأمر التالي:
sudo chkconfig network on
إذا كنت ترغب في استخدام مرايا OpenLogic المستضافة داخل مراكز بيانات Azure، فاستبدل الملف
/etc/yum.repos.d/CentOS-Base.repo
بالمستودعات التالية. سيؤدي هذا أيضا إلى إضافة مستودع [openlogic] الذي يتضمن حزما إضافية مثل عامل Azure Linux:[openlogic] name=CentOS-$releasever - openlogic packages for $basearch baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/ enabled=1 gpgcheck=0 [base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #released updates [updates] name=CentOS-$releasever - Updates #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
إشعار
سيفترض باقي هذا الدليل أنك تستخدم المستودع على الأقل
[openlogic]
، والذي سيتم استخدامه لتثبيت عامل Azure Linux أدناه.أضف السطر التالي إلى /etc/yum.conf:
http_caching=packages
قم بتشغيل الأمر التالي لمسح بيانات تعريف yum الحالية، وتحديث النظام بأحدث الحزم:
sudo yum clean all
ما لم تكن تقوم بإنشاء صورة لإصدار أقدم من CentOS، نوصي بتحديث جميع الحزم إلى الأحدث:
sudo yum -y update
قد تكون هناك حاجة إلى إعادة تشغيل بعد تشغيل هذا الأمر.
(اختياري) قم بتثبيت برامج التشغيل الخاصة بـ Linux Integration Services (LIS).
هام
تعد هذه الخطوة مطلوبة لـ CentOS 6.3 والإصدارات الأقدم، واختيارية للإصدارات الأحدث.
sudo rpm -e hypervkvpd ## (may return error if not installed, that's OK) sudo yum install microsoft-hyper-v
بدلاً من ذلك، يمكنك اتباع إرشادات التثبيت اليدوي في صفحة تنزيل LIS لتثبيت RPM على الجهاز الظاهري.
قم بتثبيت عامل Azure Linux وتبعياته. بدء تشغيل خدمة waagent وتمكينها:
sudo yum install python-pyasn1 WALinuxAgent sudo service waagent start sudo chkconfig waagent on
تزيل حزمة WALinuxAgent حزم NetworkManager وNetworkManager-gnome إذا لم تتم إزالتها بالفعل كما هو موضح في الخطوة 3.
عدِّل سطر تمهيد kernel في تكوين grub لديك لتضمين معلمات kernel إضافية لـ Azure. للقيام بذلك، افتح
/boot/grub/menu.lst
في محرر النصوص، وتأكد من أن النواة الافتراضية تشتمل على المعلمات التالية:console=ttyS0 earlyprintk=ttyS0 rootdelay=300
سيضمن ذلك أيضًا إرسال جميع رسائل وحدة التحكم إلى المنفذ التسلسلي الأول، والذي يمكن أن يساعد دعم Azure في مشكلات تصحيح الأخطاء.
بالإضافة إلى ما سبق، نوصي بإزالة المعلمات التالية:
rhgb quiet crashkernel=auto
رسومية وغير
quiet boot
مفيدة في بيئة سحابية حيث نريد إرسال جميع السجلات إلى المنفذ التسلسلي.crashkernel
قد يتم ترك الخيار مكونا إذا رغبت في ذلك، ولكن لاحظ أن هذه المعلمة ستخفض مقدار الذاكرة المتوفرة في الجهاز الظاهري بمقدار 128 ميغابايت أو أكثر، والتي قد تكون مشكلة على أحجام الأجهزة الظاهرية الأصغر.هام
يجب أيضا على CentOS 6.5 والإصدارات الأقدم تعيين معلمة kernel
numa=off
. راجع KB 436883 الخاصة بـ Red Hat.تأكد من تثبيت خادم SSH وتكوينه للبدء في وقت التمهيد. عادةً ما يكون هذا الإعداد هو الإعداد الافتراضي.
لا تنشئ مساحة مبادلة على قرص نظام التشغيل.
يمكن لـ Azure Linux Agent تكوين مساحة المبادلة تلقائياً باستخدام قرص المورد المحلي المرفق بالجهاز الظاهري بعد التوفير على Azure. قرص المورد المحلي هو قرص مؤقت وقد يتم إفراغه عند إلغاء توفير الجهاز الظاهري. بعد تثبيت عامل Azure Linux (راجع الخطوة السابقة)، قم بتعديل المعلمات التالية في
/etc/waagent.conf
بشكل مناسب:ResourceDisk.Format=y ResourceDisk.Filesystem=ext4 ResourceDisk.MountPoint=/mnt/resource ResourceDisk.EnableSwap=y ResourceDisk.SwapSizeMB=2048 ## NOTE: set this to whatever you need it to be.
شغِّل الأوامر التالية لإلغاء تزويد الجهاز الظاهري وإعداده للتزويد على Azure:
sudo waagent -force -deprovision+user sudo export HISTSIZE=0
إشعار
إذا كنت تقوم بترحيل جهاز ظاهري معين ولا ترغب في إنشاء صورة عامة، فتخط خطوة إلغاء التزويد.
- انقر فوق إجراء -> إيقاف التشغيل في Hyper-V Manager. أصبح قرص Linux VHD جاهزاً الآن للتحميل إلى Azure.
CentOS 7.0+
التغييرات في CentOS 7 (والمشتقات المشابهة)
يعد إعداد جهاز CentOS 7 الظاهري ل Azure مشابها ل CentOS 6، ولكن هناك العديد من الاختلافات الهامة التي تجدر الإشارة إليها:
لم تعد حزمة NetworkManager تتعارض مع عامل Azure Linux. يتم تثبيت هذه الحزمة بشكل افتراضي، ونوصي بعدم إزالتها.
يستخدم GRUB2 الآن كمحمل التشغيل الافتراضي، لذلك تم تغيير إجراء تحرير معلمات kernel (انظر أدناه).
يعد XFS الآن نظام الملفات الافتراضي. لا يزال من الممكن استخدام نظام الملفات ext4 إن أردت.
نظرا لأن CentOS 8 Stream والأحدث لم يعد يتضمن
network.service
بشكل افتراضي، فأنت بحاجة إلى تثبيته يدويا:sudo yum install network-scripts sudo systemctl enable network.service
خطوات التكوين
في Hyper-V Manager، حدد «الجهاز الظاهري».
انقر فوق اتصال لفتح نافذة وحدة تحكم للجهاز الظاهري.
أنشئ الملف
/etc/sysconfig/network
أو حرره، ثم أضف النص التالي:NETWORKING=yes HOSTNAME=localhost.localdomain
أنشئ الملف
/etc/sysconfig/network-scripts/ifcfg-eth0
أو حرره، ثم أضف النص التالي:DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp TYPE=Ethernet USERCTL=no PEERDNS=yes IPV6INIT=no NM_CONTROLLED=no
تعديل قواعد udev لتجنب إنشاء قواعد ثابتة لواجهة (واجهات) Ethernet. قد تتسبب هذه القواعد في حدوث مشكلات عند استنساخ جهاز ظاهري في Microsoft Azure أو Hyper-V:
sudo ln -s /dev/null /etc/udev/rules.d/75-persistent-net-generator.rules
إذا كنت ترغب في استخدام مرايا OpenLogic المستضافة داخل مراكز بيانات Azure، فاستبدل الملف
/etc/yum.repos.d/CentOS-Base.repo
بالمستودعات التالية. سيؤدي ذلك أيضًا إلى إضافة مستودع [openlogic] الذي يتضمن حزمًا لعامل Azure Linux:[openlogic] name=CentOS-$releasever - openlogic packages for $basearch baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/ enabled=1 gpgcheck=0 [base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$releasever - Updates #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
إشعار
سيفترض باقي هذا الدليل أنك تستخدم المستودع على الأقل
[openlogic]
، والذي سيتم استخدامه لتثبيت عامل Azure Linux أدناه.شغّل الأمر التالي لمسح بيانات تعريف yum الحالية وتثبيت أية تحديثات:
sudo yum clean all
ما لم تكن تقوم بإنشاء صورة لإصدار أقدم من CentOS، نوصي بتحديث جميع الحزم إلى الأحدث:
sudo yum -y update
قد تكون هناك حاجة إلى إعادة تشغيل بعد تشغيل هذا الأمر.
عدِّل سطر تمهيد kernel في تكوين grub لديك لتضمين معلمات kernel إضافية لـ Azure. للقيام بذلك، افتح
/etc/default/grub
في محرر نصوص، وقم بتحرير المعلمةGRUB_CMDLINE_LINUX
، على سبيل المثال:GRUB_CMDLINE_LINUX="rootdelay=300 console=ttyS0 earlyprintk=ttyS0 net.ifnames=0"
سيضمن ذلك أيضًا إرسال جميع رسائل وحدة التحكم إلى المنفذ التسلسلي الأول، والذي يمكن أن يساعد دعم Azure في مشكلات تصحيح الأخطاء. ويقوم أيضًا بإيقاف تشغيل اصطلاحات تسمية CentOS 7 الجديدة لبطاقات NIC. بالإضافة إلى ما سبق، نوصي بإزالة المعلمات التالية:
rhgb quiet crashkernel=auto
التمهيد الرسومي والهادئ غير مفيد في بيئة سحابية حيث نريد إرسال جميع السجلات إلى المنفذ التسلسلي.
crashkernel
قد يتم ترك الخيار مكونا إذا رغبت في ذلك، ولكن لاحظ أن هذه المعلمة ستخفض مقدار الذاكرة المتوفرة في الجهاز الظاهري بمقدار 128 ميغابايت أو أكثر، والتي قد تكون مشكلة على أحجام الأجهزة الظاهرية الأصغر.بمجرد الانتهاء من التحرير
/etc/default/grub
لكل أعلاه، قم بتشغيل الأمر التالي لإعادة إنشاء تكوين grub:sudo grub2-mkconfig -o /boot/grub2/grub.cfg
إشعار
إذا تم تحميل جهاز ظاهري تم تمكينه لـ UEFI، فإن الأمر الخاص بتحديث grub هو grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
. أيضا، يجب تمكين الوحدة النمطية vfat kernel في النواة وإلا سيفشل التوفير.
تأكد من تمكين الوحدة النمطية "udf". ستؤدي إزالتها/تعطيلها إلى فشل التزويد/التمهيد. (_Cloud-init >= 21.2 يزيل متطلبات udf. اقرأ الجزء العلوي من المستند لمزيد من التفاصيل.)
في حالة إنشاء الصورة من VMware أو VirtualBox أو KVM: تأكد من تضمين برامج تشغيل Hyper-V في initramfs:
حرر
/etc/dracut.conf
، وأضف المحتوى:add_drivers+=" hv_vmbus hv_netvsc hv_storvsc "
أعد بناء initramfs:
sudo dracut -f -v
تثبيت عامل Azure Linux والتبعيات لملحقات جهاز Azure الظاهري:
sudo yum install python-pyasn1 WALinuxAgent sudo systemctl enable waagent
ثبّت cloud-init للتعامل مع التزويد
sudo yum install -y cloud-init cloud-utils-growpart gdisk hyperv-daemons
- تكوين waagent ل cloud-init
sudo sed -i 's/Provisioning.Agent=auto/Provisioning.Agent=auto/g' /etc/waagent.conf sudo sed -i 's/ResourceDisk.Format=y/ResourceDisk.Format=n/g' /etc/waagent.conf sudo sed -i 's/ResourceDisk.EnableSwap=y/ResourceDisk.EnableSwap=n/g' /etc/waagent.conf
sudo echo "Adding mounts and disk_setup to init stage" sudo sed -i '/ - mounts/d' /etc/cloud/cloud.cfg sudo sed -i '/ - disk_setup/d' /etc/cloud/cloud.cfg sudo sed -i '/cloud_init_modules/a\\ - mounts' /etc/cloud/cloud.cfg sudo sed -i '/cloud_init_modules/a\\ - disk_setup' /etc/cloud/cloud.cfg
sudo echo "Allow only Azure datasource, disable fetching network setting via IMDS" sudo cat > /etc/cloud/cloud.cfg.d/91-azure_datasource.cfg <<EOF datasource_list: [ Azure ] datasource: Azure: apply_network_config: False EOF if [[ -f /mnt/swapfile ]]; then echo Removing swapfile - RHEL uses a swapfile by default swapoff /mnt/swapfile rm /mnt/swapfile -f fi echo "Add console log file" cat >> /etc/cloud/cloud.cfg.d/05_logging.cfg <<EOF # This tells cloud-init to redirect its stdout and stderr to # 'tee -a /var/log/cloud-init-output.log' so the user can see output # there without needing to look on the console. output: {all: '| tee -a /var/log/cloud-init-output.log'} EOF
تكوين المبادلة
لا تقم بإنشاء مساحة تبديل على قرص نظام التشغيل.
في السابق، تم استخدام عامل Azure Linux لتكوين مساحة التبديل تلقائيا باستخدام قرص المورد المحلي المرفق بالجهاز الظاهري بعد توفير الجهاز الظاهري على Azure. ومع ذلك، يتم التعامل مع هذا الأمر الآن بواسطة cloud-init، ويجب عدم استخدام عامل Linux لتنسيق قرص المورد لإنشاء ملف المبادلة، وتعديل المعلمات التالية في
/etc/waagent.conf
بشكل مناسب:sudo sed -i 's/ResourceDisk.Format=y/ResourceDisk.Format=n/g' /etc/waagent.conf sudo sed -i 's/ResourceDisk.EnableSwap=y/ResourceDisk.EnableSwap=n/g' /etc/waagent.conf
إذا كنت تريد تثبيت التبديل وتنسيقه وإنشائه، فيمكنك إما:
تمرير هذا كتكوين cloud-init في كل مرة تقوم فيها بإنشاء جهاز ظاهري
استخدم توجيهاً سحابياً مخبأً في الصورة والذي يقوم بذلك في كل مرة يتم فيها إنشاء الجهاز الظاهري:
sudo echo 'DefaultEnvironment="CLOUD_CFG=/etc/cloud/cloud.cfg.d/00-azure-swap.cfg"' >> /etc/systemd/system.conf sudo cat > /etc/cloud/cloud.cfg.d/00-azure-swap.cfg << EOF #cloud-config # Generated by Azure cloud image build disk_setup: ephemeral0: table_type: mbr layout: [66, [33, 82]] overwrite: True fs_setup: - device: ephemeral0.1 filesystem: ext4 - device: ephemeral0.2 filesystem: swap mounts: - ["ephemeral0.1", "/mnt"] - ["ephemeral0.2", "none", "swap", "sw,nofail,x-systemd.requires=cloud-init.service,x-systemd.device-timeout=2", "0", "0"] EOF
شغِّل الأوامر التالية لإلغاء تزويد الجهاز الظاهري وإعداده للتزويد على Azure:
إشعار
إذا كنت تقوم بترحيل جهاز ظاهري معين ولا ترغب في إنشاء صورة معممة، فتخط خطوة إلغاء التوفير.
sudo rm -f /var/log/waagent.log sudo cloud-init clean sudo waagent -force -deprovision+user sudo rm -f ~/.bash_history sudo export HISTSIZE=0
انقر فوق إجراء -> إيقاف التشغيل في Hyper-V Manager. أصبح قرص Linux VHD جاهزاً الآن للتحميل إلى Azure.
الخطوات التالية
أنت الآن جاهز لاستخدام القرص الثابت الظاهري CentOS Linux لإنشاء أجهزة ظاهرية جديدة في Azure. إذا كانت هذه هي المرة الأولى التي تقوم فيها بتحميل ملف .vhd إلى Azure، فراجع إنشاء جهاز ظاهري يعمل بنظام التشغيل Linux من قرص مخصص.